MCPcopy
hub / github.com/docker/compose / TestProviderMetadata_IsEmpty

Function TestProviderMetadata_IsEmpty

pkg/compose/plugins_test.go:26–76  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

24)
25
26func TestProviderMetadata_IsEmpty(t *testing.T) {
27 param := []ParameterMetadata{{Name: "x"}}
28
29 tests := []struct {
30 name string
31 metadata ProviderMetadata
32 want bool
33 }{
34 {
35 name: "empty metadata",
36 metadata: ProviderMetadata{},
37 want: true,
38 },
39 {
40 name: "only Description set",
41 metadata: ProviderMetadata{Description: "something"},
42 want: false,
43 },
44 {
45 name: "only Up.Parameters set",
46 metadata: ProviderMetadata{Up: CommandMetadata{Parameters: param}},
47 want: false,
48 },
49 {
50 name: "only Down.Parameters set",
51 metadata: ProviderMetadata{Down: CommandMetadata{Parameters: param}},
52 want: false,
53 },
54 {
55 name: "only Stop set is empty",
56 metadata: ProviderMetadata{Stop: &CommandMetadata{}},
57 want: true,
58 },
59 {
60 name: "all fields set",
61 metadata: ProviderMetadata{
62 Description: "full",
63 Up: CommandMetadata{Parameters: param},
64 Down: CommandMetadata{Parameters: param},
65 Stop: &CommandMetadata{Parameters: param},
66 },
67 want: false,
68 },
69 }
70
71 for _, tc := range tests {
72 t.Run(tc.name, func(t *testing.T) {
73 assert.Equal(t, tc.metadata.IsEmpty(), tc.want)
74 })
75 }
76}
77
78func TestProviderMetadata_JSONUnmarshal(t *testing.T) {
79 raw := `{"description":"x","up":{"parameters":[{"name":"a"}]},"down":{"parameters":[{"name":"b"}]},"stop":{"parameters":[{"name":"c"}]}}`

Callers

nothing calls this directly

Calls 1

IsEmptyMethod · 0.45

Tested by

no test coverage detected