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