gpt4 book ai didi

Golang编译错误: undefined private function "findCluster" in exported function

转载 作者:行者123 更新时间:2023-12-01 22:25:06 25 4
gpt4 key购买 nike

我在包 test/api 中编写了以下代码在项目 A 下:

func ListClusterTestCase() {
...
getResponse, err = ocm.Connection.Get().
Path(ClustersEndpoint).
Parameter("order", "creation_timestamp desc").
Send()
getResult := ReadResponse(getResponse, err, 200)
clusters := GetClusters(getResult)
Expect(findCluster(clusters, clusterID)).To(BeTrue()) // <-- private function defined in a different file in test/api (called clusters_test.go)
}

...

func ProbeTests() []*ocm.TestCase {
tc := []*ocm.TestCase{}
...
tc = append(tc, ListClustersTestCase(cfg)...)
return tc
}

和一个不同的文件 项目 - 项目 B - 导入此 test/api包试图引用 ProbeTests :
import (
cms "my/project/test/api"
)


func AddTests(cfg *ocm.TestConfig) {
...
ocm.AddTestCases(cms.ProbeTests(cfg))
}

尝试编译项目 B 时出现以下编译错误:
../../go/pkg/mod/.../test/api/clusters_load_test_cases.go:59:12: undefined: findCluster

为什么我的项目无法编译?为什么不编译整个包 test/api ?它只编译包含导出 ListClusterTestCase 的文件吗? ?当我编译项目 A 时,它工作得很好。

最佳答案

您需要移动 findCluster如果您不希望在导入包时省略它,则声明非测试文件。

When compiling packages, build ignores files that end in '_test.go'.



https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies

关于Golang编译错误: undefined private function "findCluster" in exported function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60431656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com