github.com/anchore/syft@v1.38.2/syft/source/scope_test.go (about) 1 package source 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestParseScope(t *testing.T) { 10 tests := []struct { 11 name string 12 want Scope 13 }{ 14 // go cases 15 { 16 name: "squashed", 17 want: SquashedScope, 18 }, 19 { 20 name: "all-layers", 21 want: AllLayersScope, 22 }, 23 24 { 25 name: "deep-squashed", 26 want: DeepSquashedScope, 27 }, 28 // fall back to unknown 29 { 30 name: "make-believe", 31 want: UnknownScope, 32 }, 33 { 34 name: "", 35 want: UnknownScope, 36 }, 37 { 38 name: " ", 39 want: UnknownScope, 40 }, 41 // to support the original value 42 43 { 44 name: "Squashed", 45 want: SquashedScope, 46 }, 47 { 48 name: "AllLayers", 49 want: AllLayersScope, 50 }, 51 // case insensitive 52 { 53 name: "alLlaYerS", 54 want: AllLayersScope, 55 }, 56 // aliases 57 { 58 name: "all", 59 want: AllLayersScope, 60 }, 61 { 62 name: "deep-squash", 63 want: DeepSquashedScope, 64 }, 65 { 66 name: "deepsquashed", 67 want: DeepSquashedScope, 68 }, 69 { 70 name: "squasheddeep", 71 want: DeepSquashedScope, 72 }, 73 { 74 name: "squashed-deep", 75 want: DeepSquashedScope, 76 }, 77 { 78 name: "deepsquash", 79 want: DeepSquashedScope, 80 }, 81 } 82 for _, tt := range tests { 83 t.Run(tt.name, func(t *testing.T) { 84 assert.Equal(t, tt.want, ParseScope(tt.name)) 85 }) 86 } 87 }