У меня есть следующий код, написанный в пакете 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, он работает просто отлично.