Files
podman/pkg/machine/config_test.go
Paul Holzinger 33a474286b pkg/machine: add missing build tags to tests
Machine can only run on amd64 and arm64 platforms so we need to make
sure the test are only run on those platforms. We do not have CI checks
for this but it fails in debian build infra since debian supports many
other architectures as well.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-07-04 18:09:30 +02:00

75 lines
1.4 KiB
Go

//go:build amd64 || arm64
// +build amd64 arm64
package machine
import (
"net"
"net/url"
"reflect"
"testing"
)
func TestRemoteConnectionType_MakeSSHURL(t *testing.T) {
var (
host = "foobar"
path = "/path/to/socket"
rc = "ssh"
username = "core"
)
type args struct {
host string
path string
port string
userName string
}
tests := []struct {
name string
rc RemoteConnectionType
args args
want url.URL
}{
{
name: "Good no port",
rc: "ssh",
args: args{
host: host,
path: path,
port: "",
userName: username,
},
want: url.URL{
Scheme: rc,
User: url.User(username),
Host: host,
Path: path,
ForceQuery: false,
},
},
{
name: "Good with port",
rc: "ssh",
args: args{
host: host,
path: path,
port: "222",
userName: username,
},
want: url.URL{
Scheme: rc,
User: url.User(username),
Host: net.JoinHostPort(host, "222"),
Path: path,
ForceQuery: false,
},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := tt.rc.MakeSSHURL(tt.args.host, tt.args.path, tt.args.port, tt.args.userName); !reflect.DeepEqual(got, tt.want) { //nolint: scopelint
t.Errorf("MakeSSHURL() = %v, want %v", got, tt.want) //nolint: scopelint
}
})
}
}