github.com/jhump/golang-x-tools@v0.0.0-20220218190644-4958d6d39439/go/buildutil/tags_test.go (about) 1 // Copyright 2015 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package buildutil_test 6 7 import ( 8 "flag" 9 "go/build" 10 "reflect" 11 "testing" 12 13 "github.com/jhump/golang-x-tools/go/buildutil" 14 ) 15 16 func TestTags(t *testing.T) { 17 f := flag.NewFlagSet("TestTags", flag.PanicOnError) 18 var ctxt build.Context 19 f.Var((*buildutil.TagsFlag)(&ctxt.BuildTags), "tags", buildutil.TagsFlagDoc) 20 f.Parse([]string{"-tags", ` 'one'"two" 'three "four"'`, "rest"}) 21 22 // BuildTags 23 want := []string{"one", "two", "three \"four\""} 24 if !reflect.DeepEqual(ctxt.BuildTags, want) { 25 t.Errorf("BuildTags = %q, want %q", ctxt.BuildTags, want) 26 } 27 28 // Args() 29 if want := []string{"rest"}; !reflect.DeepEqual(f.Args(), want) { 30 t.Errorf("f.Args() = %q, want %q", f.Args(), want) 31 } 32 }