mirror of
https://github.com/redhat-developer/odo.git
synced 2025-10-19 03:06:19 +03:00
65 lines
1.3 KiB
Go
65 lines
1.3 KiB
Go
package portForward
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/google/go-cmp/cmp"
|
|
|
|
"github.com/redhat-developer/odo/pkg/api"
|
|
)
|
|
|
|
func Test_getForwardedPort(t *testing.T) {
|
|
type args struct {
|
|
mapping map[string][]int
|
|
s string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
args args
|
|
want api.ForwardedPort
|
|
wantErr bool
|
|
}{
|
|
{
|
|
name: "find port in container",
|
|
args: args{
|
|
mapping: map[string][]int{
|
|
"container1": {3000, 4200},
|
|
"container2": {80, 8080},
|
|
},
|
|
s: "Forwarding from 127.0.0.1:40407 -> 3000",
|
|
},
|
|
want: api.ForwardedPort{
|
|
ContainerName: "container1",
|
|
LocalAddress: "127.0.0.1",
|
|
LocalPort: 40407,
|
|
ContainerPort: 3000,
|
|
},
|
|
wantErr: false,
|
|
},
|
|
{
|
|
name: "string error",
|
|
args: args{
|
|
mapping: map[string][]int{
|
|
"container1": {3000, 4200},
|
|
"container2": {80, 8080},
|
|
},
|
|
s: "Forwarding from 127.0.0.1:40407 => 3000",
|
|
},
|
|
want: api.ForwardedPort{},
|
|
wantErr: true,
|
|
},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
got, err := getForwardedPort(tt.args.mapping, tt.args.s)
|
|
if (err != nil) != tt.wantErr {
|
|
t.Errorf("getForwardedPort() error = %v, wantErr %v", err, tt.wantErr)
|
|
return
|
|
}
|
|
if diff := cmp.Diff(tt.want, got); diff != "" {
|
|
t.Errorf("getForwardedPort() mismatch (-want +got):\n%s", diff)
|
|
}
|
|
})
|
|
}
|
|
}
|