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

Function createProvisionerDaemonClient

provisionerd/provisionerd_test.go:1200–1242  ·  view source on GitHub ↗

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

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

Source from the content-addressed store, hash-verified

1198// Creates a provisionerd protobuf client that's connected
1199// to the server implementation provided.
1200func createProvisionerDaemonClient(t *testing.T, done <-chan struct{}, server provisionerDaemonTestServer) proto.DRPCProvisionerDaemonClient {
1201 t.Helper()
1202 if server.failJob == nil {
1203 // Default to asserting the error from the failure, otherwise
1204 // it can be lost in tests!
1205 server.failJob = func(ctx context.Context, job *proto.FailedJob) (*proto.Empty, error) {
1206 assert.Fail(t, job.Error)
1207 return &proto.Empty{}, nil
1208 }
1209 }
1210 clientPipe, serverPipe := drpcsdk.MemTransportPipe()
1211 t.Cleanup(func() {
1212 _ = clientPipe.Close()
1213 _ = serverPipe.Close()
1214 })
1215 mux := drpcmux.New()
1216 err := proto.DRPCRegisterProvisionerDaemon(mux, &server)
1217 require.NoError(t, err)
1218 srv := drpcserver.NewWithOptions(mux, drpcserver.Options{
1219 Manager: drpcsdk.DefaultDRPCOptions(nil),
1220 })
1221 ctx, cancelFunc := context.WithCancel(context.Background())
1222 closed := make(chan struct{})
1223 go func() {
1224 defer close(closed)
1225 _ = srv.Serve(ctx, serverPipe)
1226 }()
1227 t.Cleanup(func() {
1228 cancelFunc()
1229 <-closed
1230 select {
1231 case <-done:
1232 t.Error("createProvisionerDaemonClient cleanup after test was done!")
1233 default:
1234 }
1235 })
1236 select {
1237 case <-done:
1238 t.Error("called createProvisionerDaemonClient after test was done!")
1239 default:
1240 }
1241 return proto.NewDRPCProvisionerDaemonClient(clientPipe)
1242}
1243
1244// Creates a provisioner protobuf client that's connected
1245// to the server implementation provided.

Callers 1

TestProvisionerdFunction · 0.85

Calls 9

MemTransportPipeFunction · 0.92
DefaultDRPCOptionsFunction · 0.92
HelperMethod · 0.65
CleanupMethod · 0.65
CloseMethod · 0.65
NewMethod · 0.65
FailMethod · 0.45
ServeMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected