62 lines
1.5 KiB
Go
62 lines
1.5 KiB
Go
package webhook
|
|
|
|
import (
|
|
gamekruiseiov1alpha1 "github.com/openkruise/kruise-game/apis/v1alpha1"
|
|
"github.com/openkruise/kruise-game/cloudprovider"
|
|
"github.com/openkruise/kruise-game/cloudprovider/alibabacloud"
|
|
"github.com/openkruise/kruise-game/cloudprovider/manager"
|
|
"testing"
|
|
)
|
|
|
|
func TestValidatingCreate(t *testing.T) {
|
|
tests := []struct {
|
|
gss *gamekruiseiov1alpha1.GameServerSet
|
|
cpm *manager.ProviderManager
|
|
allowed bool
|
|
}{
|
|
{
|
|
gss: &gamekruiseiov1alpha1.GameServerSet{
|
|
Spec: gamekruiseiov1alpha1.GameServerSetSpec{
|
|
Network: &gamekruiseiov1alpha1.Network{
|
|
NetworkConf: []gamekruiseiov1alpha1.NetworkConfParams{
|
|
{
|
|
Name: "xx",
|
|
Value: "xx",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
cpm: &manager.ProviderManager{
|
|
CloudProviders: map[string]cloudprovider.CloudProvider{},
|
|
},
|
|
allowed: false,
|
|
},
|
|
{
|
|
gss: &gamekruiseiov1alpha1.GameServerSet{
|
|
Spec: gamekruiseiov1alpha1.GameServerSetSpec{
|
|
Network: &gamekruiseiov1alpha1.Network{
|
|
NetworkType: "AlibabaCloud-LB",
|
|
},
|
|
},
|
|
},
|
|
cpm: &manager.ProviderManager{
|
|
CloudProviders: map[string]cloudprovider.CloudProvider{
|
|
"AlibabaCloud": func() cloudprovider.CloudProvider {
|
|
acp, _ := alibabacloud.NewAlibabaCloudProvider()
|
|
return acp
|
|
}(),
|
|
},
|
|
},
|
|
allowed: false,
|
|
},
|
|
}
|
|
|
|
for i, test := range tests {
|
|
actual := validatingCreate(test.gss, test.cpm)
|
|
if actual.Allowed != test.allowed {
|
|
t.Errorf("%d: expect %v, got %v", i, test.allowed, actual.Allowed)
|
|
}
|
|
}
|
|
}
|