github.com/tiagovtristao/plz@v13.4.0+incompatible/src/core/build_input_test.go (about) 1 package core 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestParseNamedOutputLabel(t *testing.T) { 10 pkg := NewPackage("") 11 input := MustParseNamedOutputLabel("//src/core:target1|test", pkg) 12 label, ok := input.(NamedOutputLabel) 13 assert.True(t, ok) 14 assert.Equal(t, "src/core", label.PackageName) 15 assert.Equal(t, "target1", label.Name) 16 assert.Equal(t, "test", label.Output) 17 } 18 19 func TestParseNamedOutputLabelRelative(t *testing.T) { 20 pkg := NewPackage("src/core") 21 input := MustParseNamedOutputLabel(":target1|test", pkg) 22 label, ok := input.(NamedOutputLabel) 23 assert.True(t, ok) 24 assert.Equal(t, "src/core", label.PackageName) 25 assert.Equal(t, "target1", label.Name) 26 assert.Equal(t, "test", label.Output) 27 } 28 29 func TestParseNamedOutputLabelNoOutput(t *testing.T) { 30 pkg := NewPackage("") 31 input := MustParseNamedOutputLabel("//src/core:target1", pkg) 32 _, ok := input.(NamedOutputLabel) 33 assert.False(t, ok) 34 label, ok := input.(BuildLabel) 35 assert.True(t, ok) 36 assert.Equal(t, "src/core", label.PackageName) 37 assert.Equal(t, "target1", label.Name) 38 } 39 40 func TestParseNamedOutputLabelEmptyOutput(t *testing.T) { 41 pkg := NewPackage("") 42 assert.Panics(t, func() { 43 MustParseNamedOutputLabel("//src/core:target1|", pkg) 44 }) 45 } 46 47 func TestParseNamedOutputLabelSubrepo(t *testing.T) { 48 pkg := NewPackage("") 49 input := MustParseNamedOutputLabel("@test_x86//src/core:target1", pkg) 50 _, ok := input.(NamedOutputLabel) 51 assert.False(t, ok) 52 label, ok := input.(BuildLabel) 53 assert.True(t, ok) 54 assert.Equal(t, "src/core", label.PackageName) 55 assert.Equal(t, "target1", label.Name) 56 assert.Equal(t, "test_x86", label.Subrepo) 57 } 58 59 func TestParseNamedOutputLabelRelativeSubrepo(t *testing.T) { 60 pkg := NewPackage("src/core") 61 input := MustParseNamedOutputLabel("@test_x86:target1", pkg) 62 _, ok := input.(NamedOutputLabel) 63 assert.False(t, ok) 64 label, ok := input.(BuildLabel) 65 assert.True(t, ok) 66 assert.Equal(t, "src/core", label.PackageName) 67 assert.Equal(t, "target1", label.Name) 68 assert.Equal(t, "test_x86", label.Subrepo) 69 }