Skip to content

Commit 6d5f461

Browse files
committed
test: refactor TestTestParseFlagPWithPlatformSpec and TestParsePortsLabel
Signed-off-by: Hayato Kiwata <[email protected]>
1 parent 848062e commit 6d5f461

File tree

1 file changed

+36
-63
lines changed

1 file changed

+36
-63
lines changed

pkg/portutil/portutil_test.go

Lines changed: 36 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import (
2323
"testing"
2424

2525
"github.com/containerd/go-cni"
26+
"gotest.tools/v3/assert"
2627

2728
"github.com/containerd/nerdctl/v2/pkg/labels"
2829
"github.com/containerd/nerdctl/v2/pkg/rootlessutil"
@@ -124,45 +125,30 @@ func TestTestParseFlagPWithPlatformSpec(t *testing.T) {
124125
for _, tt := range tests {
125126
t.Run(tt.name, func(t *testing.T) {
126127
got, err := ParseFlagP(tt.args.s)
127-
t.Log(err)
128-
if (err != nil) != tt.wantErr {
129-
t.Errorf("ParseFlagP() error = %v, wantErr %v", err, tt.wantErr)
130-
return
128+
if err != nil {
129+
t.Log(err)
130+
assert.Equal(t, true, tt.wantErr)
131131
}
132132
if !reflect.DeepEqual(got, tt.want) {
133-
if len(got) == len(tt.want) {
134-
if len(got) > 0 {
135-
var hostPorts []int32
136-
var containerPorts []int32
137-
for _, value := range got {
138-
hostPorts = append(hostPorts, value.HostPort)
139-
containerPorts = append(containerPorts, value.ContainerPort)
140-
}
141-
sort.Slice(hostPorts, func(i, j int) bool {
142-
return i < j
143-
})
144-
sort.Slice(containerPorts, func(i, j int) bool {
145-
return i < j
146-
})
147-
if (hostPorts[len(hostPorts)-1] - hostPorts[0]) != (containerPorts[len(hostPorts)-1] - containerPorts[0]) {
148-
t.Errorf("ParseFlagP() = %v, want %v", got, tt.want)
149-
}
150-
sort.Slice(got, func(i, j int) bool {
151-
return got[i].HostPort < got[j].HostPort
152-
})
153-
for i := 0; i < len(got); i++ {
154-
if got[i].ContainerPort != tt.want[i].ContainerPort || got[i].Protocol != tt.want[i].Protocol || got[i].HostIP != tt.want[i].HostIP {
155-
t.Errorf("ParseFlagP() = %v, want %v", got, tt.want)
156-
}
157-
}
133+
assert.Equal(t, len(got), len(tt.want))
134+
if len(got) > 0 {
135+
sort.Slice(got, func(i, j int) bool {
136+
return got[i].HostPort < got[j].HostPort
137+
})
138+
assert.Equal(
139+
t,
140+
got[len(got)-1].HostPort-got[0].HostPort,
141+
got[len(got)-1].ContainerPort-got[0].ContainerPort,
142+
)
143+
for i := range len(got) {
144+
assert.Equal(t, got[i].ContainerPort, tt.want[i].ContainerPort)
145+
assert.Equal(t, got[i].Protocol, tt.want[i].Protocol)
146+
assert.Equal(t, got[i].HostIP, tt.want[i].HostIP)
158147
}
159-
} else {
160-
t.Errorf("ParseFlagP() = %v, want %v", got, tt.want)
161148
}
162149
}
163150
})
164151
}
165-
166152
}
167153

168154
func TestParsePortsLabel(t *testing.T) {
@@ -213,40 +199,27 @@ func TestParsePortsLabel(t *testing.T) {
213199
for _, tt := range tests {
214200
t.Run(tt.name, func(t *testing.T) {
215201
got, err := ParsePortsLabel(tt.labelMap)
216-
t.Log(err)
217-
if (err != nil) != tt.wantErr {
218-
t.Errorf("ParsePortsLabel() error = %v, wantErr %v", err, tt.wantErr)
219-
return
202+
if err != nil {
203+
t.Log(err)
204+
assert.Equal(t, true, tt.wantErr)
220205
}
221206
if !reflect.DeepEqual(got, tt.want) {
222-
if len(got) == len(tt.want) {
223-
if len(got) > 0 {
224-
var hostPorts []int32
225-
var containerPorts []int32
226-
for _, value := range got {
227-
hostPorts = append(hostPorts, value.HostPort)
228-
containerPorts = append(containerPorts, value.ContainerPort)
229-
}
230-
sort.Slice(hostPorts, func(i, j int) bool {
231-
return i < j
232-
})
233-
sort.Slice(containerPorts, func(i, j int) bool {
234-
return i < j
235-
})
236-
if (hostPorts[len(hostPorts)-1] - hostPorts[0]) != (containerPorts[len(hostPorts)-1] - containerPorts[0]) {
237-
t.Errorf("ParsePortsLabel() = %v, want %v", got, tt.want)
238-
}
239-
sort.Slice(got, func(i, j int) bool {
240-
return got[i].HostPort < got[j].HostPort
241-
})
242-
for i := 0; i < len(got); i++ {
243-
if got[i].HostPort != tt.want[i].HostPort || got[i].ContainerPort != tt.want[i].ContainerPort || got[i].Protocol != tt.want[i].Protocol || got[i].HostIP != tt.want[i].HostIP {
244-
t.Errorf("ParsePortsLabel() = %v, want %v", got, tt.want)
245-
}
246-
}
207+
assert.Equal(t, len(got), len(tt.want))
208+
if len(got) > 0 {
209+
sort.Slice(got, func(i, j int) bool {
210+
return got[i].HostPort < got[j].HostPort
211+
})
212+
assert.Equal(
213+
t,
214+
got[len(got)-1].HostPort-got[0].HostPort,
215+
got[len(got)-1].ContainerPort-got[0].ContainerPort,
216+
)
217+
for i := range len(got) {
218+
assert.Equal(t, got[i].HostPort, tt.want[i].HostPort)
219+
assert.Equal(t, got[i].ContainerPort, tt.want[i].ContainerPort)
220+
assert.Equal(t, got[i].Protocol, tt.want[i].Protocol)
221+
assert.Equal(t, got[i].HostIP, tt.want[i].HostIP)
247222
}
248-
} else {
249-
t.Errorf("ParsePortsLabel() = %v, want %v", got, tt.want)
250223
}
251224
}
252225
})

0 commit comments

Comments
 (0)