我想用Golang写一个测试来获取现有的自定义资源。实际的代码流在golang中使用动态客户端来执行相同的操作。 样本片段-
crdclient, err := v1alpha1.NewClient(config)
resp1, err := crdclient.test("testns").Get("test-operator")
func NewClient(cfg *rest.Config) (*testV1Alpha1Client, error) {
scheme := runtime.NewScheme()
SchemeBuilder := runtime.NewSchemeBuilder(addKnownTypes)
if err := SchemeBuilder.AddToScheme(scheme); err != nil {
return nil, err
}
config := *cfg
config.GroupVersion = &SchemeGroupVersion
config.APIPath = "/apis"
config.ContentType = runtime.ContentTypeJSON
config.NegotiatedSerializer = serializer.NewCodecFactory(scheme)
client, err := rest.RESTClientFor(&config)
if err != nil {
return nil, err
}
return &testV1Alpha1Client{restClient: client}, nil
}
我想编写一个Golang测试,该测试将创建一个类似于NewClient方法所做的虚假动态客户端,并且我必须能够使用该虚假客户端对命名空间“ testns”中存在的资源“ test”进行Get调用,并且名称为“测试操作员” 需要一些想法,如何为测试用例复制相同的行为。
我们非常感谢您的帮助。