1package cmd_test 2 3import ( 4 semver "github.com/cppforlife/go-semi-semantic/version" 5 . "github.com/onsi/ginkgo" 6 . "github.com/onsi/gomega" 7 8 . "github.com/cloudfoundry/bosh-cli/cmd" 9) 10 11var _ = Describe("VersionArg", func() { 12 Describe("UnmarshalFlag", func() { 13 var ( 14 arg VersionArg 15 ) 16 17 BeforeEach(func() { 18 arg = VersionArg{} 19 }) 20 21 It("returns parsed version", func() { 22 err := (&arg).UnmarshalFlag("1.1") 23 Expect(err).ToNot(HaveOccurred()) 24 Expect(arg).To(Equal(VersionArg(semver.MustNewVersionFromString("1.1")))) 25 }) 26 27 It("returns error if it cannot be parsed", func() { 28 err := (&arg).UnmarshalFlag("1.1~ver") 29 Expect(err).To(HaveOccurred()) 30 }) 31 }) 32}) 33