MCPcopy Index your code
hub / github.com/coder/coder / createProvisionerClient

Function createProvisionerClient

provisionerd/provisionerd_test.go:1246–1279  ·  view source on GitHub ↗

Creates a provisioner protobuf client that's connected to the server implementation provided.

(t *testing.T, done <-chan struct{}, server provisionerTestServer)

Source from the content-addressed store, hash-verified

1244// Creates a provisioner protobuf client that's connected
1245// to the server implementation provided.
1246func createProvisionerClient(t *testing.T, done <-chan struct{}, server provisionerTestServer) sdkproto.DRPCProvisionerClient {
1247 t.Helper()
1248 clientPipe, serverPipe := drpcsdk.MemTransportPipe()
1249 t.Cleanup(func() {
1250 _ = clientPipe.Close()
1251 _ = serverPipe.Close()
1252 })
1253 ctx, cancelFunc := context.WithCancel(context.Background())
1254 closed := make(chan struct{})
1255 tempDir := t.TempDir()
1256 go func() {
1257 defer close(closed)
1258 _ = provisionersdk.Serve(ctx, &server, &provisionersdk.ServeOptions{
1259 Listener: serverPipe,
1260 Logger: testutil.Logger(t).Named("test-provisioner"),
1261 WorkDirectory: tempDir,
1262 })
1263 }()
1264 t.Cleanup(func() {
1265 cancelFunc()
1266 <-closed
1267 select {
1268 case <-done:
1269 t.Error("createProvisionerClient cleanup after test was done!")
1270 default:
1271 }
1272 })
1273 select {
1274 case <-done:
1275 t.Error("called createProvisionerClient after test was done!")
1276 default:
1277 }
1278 return sdkproto.NewDRPCProvisionerClient(clientPipe)
1279}
1280
1281type provisionerTestServer struct {
1282 init func(s *provisionersdk.Session, r *provisionersdk.InitRequest, canceledOrComplete <-chan struct{}) *sdkproto.InitComplete

Callers 1

TestProvisionerdFunction · 0.85

Calls 9

MemTransportPipeFunction · 0.92
ServeFunction · 0.92
LoggerFunction · 0.92
NamedMethod · 0.80
HelperMethod · 0.65
CleanupMethod · 0.65
CloseMethod · 0.65
TempDirMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected