From c054fb3655776881166672a3feec9035ae4a8d5f Mon Sep 17 00:00:00 2001 From: Matt Bell <mappum@gmail.com> Date: Wed, 15 Oct 2014 17:09:20 -0700 Subject: [PATCH] commands: Added simple Command#Resolve test --- commands/command_test.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/commands/command_test.go b/commands/command_test.go index ebe4556c..138faf14 100644 --- a/commands/command_test.go +++ b/commands/command_test.go @@ -136,3 +136,24 @@ func TestRegistration(t *testing.T) { t.Error("Should have failed (option name collision with global options)") } } + +func TestResolving(t *testing.T) { + cmd := &Command{} + cmdA := &Command{} + cmdB := &Command{} + cmdB2 := &Command{} + cmdC := &Command{} + + cmd.Register("a", cmdA) + cmdA.Register("B", cmdB2) + cmdA.Register("b", cmdB) + cmdB.Register("c", cmdC) + + cmds, err := cmd.Resolve([]string{"a","b","c"}) + if err != nil { + t.Error(err) + } + if len(cmds) != 4 || cmds[0] != cmd || cmds[1] != cmdA || cmds[2] != cmdB || cmds[3] != cmdC { + t.Error("Returned command path is different than expected", cmds) + } +} \ No newline at end of file -- GitLab