1// Copyright 2019 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// https://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by gapic-generator. DO NOT EDIT. 16 17package instance 18 19import ( 20 "context" 21 "flag" 22 "fmt" 23 "io" 24 "log" 25 "net" 26 "os" 27 "strings" 28 "testing" 29 30 "github.com/golang/protobuf/proto" 31 "github.com/golang/protobuf/ptypes" 32 emptypb "github.com/golang/protobuf/ptypes/empty" 33 "google.golang.org/api/option" 34 iampb "google.golang.org/genproto/googleapis/iam/v1" 35 longrunningpb "google.golang.org/genproto/googleapis/longrunning" 36 instancepb "google.golang.org/genproto/googleapis/spanner/admin/instance/v1" 37 field_maskpb "google.golang.org/genproto/protobuf/field_mask" 38 39 status "google.golang.org/genproto/googleapis/rpc/status" 40 "google.golang.org/grpc" 41 "google.golang.org/grpc/codes" 42 "google.golang.org/grpc/metadata" 43 44 gstatus "google.golang.org/grpc/status" 45) 46 47var _ = io.EOF 48var _ = ptypes.MarshalAny 49var _ status.Status 50 51type mockInstanceAdminServer struct { 52 // Embed for forward compatibility. 53 // Tests will keep working if more methods are added 54 // in the future. 55 instancepb.InstanceAdminServer 56 57 reqs []proto.Message 58 59 // If set, all calls return this error. 60 err error 61 62 // responses to return if err == nil 63 resps []proto.Message 64} 65 66func (s *mockInstanceAdminServer) ListInstanceConfigs(ctx context.Context, req *instancepb.ListInstanceConfigsRequest) (*instancepb.ListInstanceConfigsResponse, error) { 67 md, _ := metadata.FromIncomingContext(ctx) 68 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 69 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 70 } 71 s.reqs = append(s.reqs, req) 72 if s.err != nil { 73 return nil, s.err 74 } 75 return s.resps[0].(*instancepb.ListInstanceConfigsResponse), nil 76} 77 78func (s *mockInstanceAdminServer) GetInstanceConfig(ctx context.Context, req *instancepb.GetInstanceConfigRequest) (*instancepb.InstanceConfig, error) { 79 md, _ := metadata.FromIncomingContext(ctx) 80 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 81 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 82 } 83 s.reqs = append(s.reqs, req) 84 if s.err != nil { 85 return nil, s.err 86 } 87 return s.resps[0].(*instancepb.InstanceConfig), nil 88} 89 90func (s *mockInstanceAdminServer) ListInstances(ctx context.Context, req *instancepb.ListInstancesRequest) (*instancepb.ListInstancesResponse, error) { 91 md, _ := metadata.FromIncomingContext(ctx) 92 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 93 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 94 } 95 s.reqs = append(s.reqs, req) 96 if s.err != nil { 97 return nil, s.err 98 } 99 return s.resps[0].(*instancepb.ListInstancesResponse), nil 100} 101 102func (s *mockInstanceAdminServer) GetInstance(ctx context.Context, req *instancepb.GetInstanceRequest) (*instancepb.Instance, error) { 103 md, _ := metadata.FromIncomingContext(ctx) 104 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 105 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 106 } 107 s.reqs = append(s.reqs, req) 108 if s.err != nil { 109 return nil, s.err 110 } 111 return s.resps[0].(*instancepb.Instance), nil 112} 113 114func (s *mockInstanceAdminServer) CreateInstance(ctx context.Context, req *instancepb.CreateInstanceRequest) (*longrunningpb.Operation, error) { 115 md, _ := metadata.FromIncomingContext(ctx) 116 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 117 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 118 } 119 s.reqs = append(s.reqs, req) 120 if s.err != nil { 121 return nil, s.err 122 } 123 return s.resps[0].(*longrunningpb.Operation), nil 124} 125 126func (s *mockInstanceAdminServer) UpdateInstance(ctx context.Context, req *instancepb.UpdateInstanceRequest) (*longrunningpb.Operation, error) { 127 md, _ := metadata.FromIncomingContext(ctx) 128 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 129 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 130 } 131 s.reqs = append(s.reqs, req) 132 if s.err != nil { 133 return nil, s.err 134 } 135 return s.resps[0].(*longrunningpb.Operation), nil 136} 137 138func (s *mockInstanceAdminServer) DeleteInstance(ctx context.Context, req *instancepb.DeleteInstanceRequest) (*emptypb.Empty, error) { 139 md, _ := metadata.FromIncomingContext(ctx) 140 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 141 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 142 } 143 s.reqs = append(s.reqs, req) 144 if s.err != nil { 145 return nil, s.err 146 } 147 return s.resps[0].(*emptypb.Empty), nil 148} 149 150func (s *mockInstanceAdminServer) SetIamPolicy(ctx context.Context, req *iampb.SetIamPolicyRequest) (*iampb.Policy, error) { 151 md, _ := metadata.FromIncomingContext(ctx) 152 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 153 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 154 } 155 s.reqs = append(s.reqs, req) 156 if s.err != nil { 157 return nil, s.err 158 } 159 return s.resps[0].(*iampb.Policy), nil 160} 161 162func (s *mockInstanceAdminServer) GetIamPolicy(ctx context.Context, req *iampb.GetIamPolicyRequest) (*iampb.Policy, error) { 163 md, _ := metadata.FromIncomingContext(ctx) 164 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 165 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 166 } 167 s.reqs = append(s.reqs, req) 168 if s.err != nil { 169 return nil, s.err 170 } 171 return s.resps[0].(*iampb.Policy), nil 172} 173 174func (s *mockInstanceAdminServer) TestIamPermissions(ctx context.Context, req *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error) { 175 md, _ := metadata.FromIncomingContext(ctx) 176 if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") { 177 return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg) 178 } 179 s.reqs = append(s.reqs, req) 180 if s.err != nil { 181 return nil, s.err 182 } 183 return s.resps[0].(*iampb.TestIamPermissionsResponse), nil 184} 185 186// clientOpt is the option tests should use to connect to the test server. 187// It is initialized by TestMain. 188var clientOpt option.ClientOption 189 190var ( 191 mockInstanceAdmin mockInstanceAdminServer 192) 193 194func TestMain(m *testing.M) { 195 flag.Parse() 196 197 serv := grpc.NewServer() 198 instancepb.RegisterInstanceAdminServer(serv, &mockInstanceAdmin) 199 200 lis, err := net.Listen("tcp", "localhost:0") 201 if err != nil { 202 log.Fatal(err) 203 } 204 go serv.Serve(lis) 205 206 conn, err := grpc.Dial(lis.Addr().String(), grpc.WithInsecure()) 207 if err != nil { 208 log.Fatal(err) 209 } 210 clientOpt = option.WithGRPCConn(conn) 211 212 os.Exit(m.Run()) 213} 214 215func TestInstanceAdminListInstanceConfigs(t *testing.T) { 216 var nextPageToken string = "" 217 var instanceConfigsElement *instancepb.InstanceConfig = &instancepb.InstanceConfig{} 218 var instanceConfigs = []*instancepb.InstanceConfig{instanceConfigsElement} 219 var expectedResponse = &instancepb.ListInstanceConfigsResponse{ 220 NextPageToken: nextPageToken, 221 InstanceConfigs: instanceConfigs, 222 } 223 224 mockInstanceAdmin.err = nil 225 mockInstanceAdmin.reqs = nil 226 227 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 228 229 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 230 var request = &instancepb.ListInstanceConfigsRequest{ 231 Parent: formattedParent, 232 } 233 234 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 235 if err != nil { 236 t.Fatal(err) 237 } 238 239 resp, err := c.ListInstanceConfigs(context.Background(), request).Next() 240 241 if err != nil { 242 t.Fatal(err) 243 } 244 245 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 246 t.Errorf("wrong request %q, want %q", got, want) 247 } 248 249 want := (interface{})(expectedResponse.InstanceConfigs[0]) 250 got := (interface{})(resp) 251 var ok bool 252 253 switch want := (want).(type) { 254 case proto.Message: 255 ok = proto.Equal(want, got.(proto.Message)) 256 default: 257 ok = want == got 258 } 259 if !ok { 260 t.Errorf("wrong response %q, want %q)", got, want) 261 } 262} 263 264func TestInstanceAdminListInstanceConfigsError(t *testing.T) { 265 errCode := codes.PermissionDenied 266 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 267 268 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 269 var request = &instancepb.ListInstanceConfigsRequest{ 270 Parent: formattedParent, 271 } 272 273 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 274 if err != nil { 275 t.Fatal(err) 276 } 277 278 resp, err := c.ListInstanceConfigs(context.Background(), request).Next() 279 280 if st, ok := gstatus.FromError(err); !ok { 281 t.Errorf("got error %v, expected grpc error", err) 282 } else if c := st.Code(); c != errCode { 283 t.Errorf("got error code %q, want %q", c, errCode) 284 } 285 _ = resp 286} 287func TestInstanceAdminGetInstanceConfig(t *testing.T) { 288 var name2 string = "name2-1052831874" 289 var displayName string = "displayName1615086568" 290 var expectedResponse = &instancepb.InstanceConfig{ 291 Name: name2, 292 DisplayName: displayName, 293 } 294 295 mockInstanceAdmin.err = nil 296 mockInstanceAdmin.reqs = nil 297 298 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 299 300 var formattedName string = fmt.Sprintf("projects/%s/instanceConfigs/%s", "[PROJECT]", "[INSTANCE_CONFIG]") 301 var request = &instancepb.GetInstanceConfigRequest{ 302 Name: formattedName, 303 } 304 305 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 306 if err != nil { 307 t.Fatal(err) 308 } 309 310 resp, err := c.GetInstanceConfig(context.Background(), request) 311 312 if err != nil { 313 t.Fatal(err) 314 } 315 316 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 317 t.Errorf("wrong request %q, want %q", got, want) 318 } 319 320 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 321 t.Errorf("wrong response %q, want %q)", got, want) 322 } 323} 324 325func TestInstanceAdminGetInstanceConfigError(t *testing.T) { 326 errCode := codes.PermissionDenied 327 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 328 329 var formattedName string = fmt.Sprintf("projects/%s/instanceConfigs/%s", "[PROJECT]", "[INSTANCE_CONFIG]") 330 var request = &instancepb.GetInstanceConfigRequest{ 331 Name: formattedName, 332 } 333 334 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 335 if err != nil { 336 t.Fatal(err) 337 } 338 339 resp, err := c.GetInstanceConfig(context.Background(), request) 340 341 if st, ok := gstatus.FromError(err); !ok { 342 t.Errorf("got error %v, expected grpc error", err) 343 } else if c := st.Code(); c != errCode { 344 t.Errorf("got error code %q, want %q", c, errCode) 345 } 346 _ = resp 347} 348func TestInstanceAdminListInstances(t *testing.T) { 349 var nextPageToken string = "" 350 var instancesElement *instancepb.Instance = &instancepb.Instance{} 351 var instances = []*instancepb.Instance{instancesElement} 352 var expectedResponse = &instancepb.ListInstancesResponse{ 353 NextPageToken: nextPageToken, 354 Instances: instances, 355 } 356 357 mockInstanceAdmin.err = nil 358 mockInstanceAdmin.reqs = nil 359 360 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 361 362 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 363 var request = &instancepb.ListInstancesRequest{ 364 Parent: formattedParent, 365 } 366 367 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 368 if err != nil { 369 t.Fatal(err) 370 } 371 372 resp, err := c.ListInstances(context.Background(), request).Next() 373 374 if err != nil { 375 t.Fatal(err) 376 } 377 378 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 379 t.Errorf("wrong request %q, want %q", got, want) 380 } 381 382 want := (interface{})(expectedResponse.Instances[0]) 383 got := (interface{})(resp) 384 var ok bool 385 386 switch want := (want).(type) { 387 case proto.Message: 388 ok = proto.Equal(want, got.(proto.Message)) 389 default: 390 ok = want == got 391 } 392 if !ok { 393 t.Errorf("wrong response %q, want %q)", got, want) 394 } 395} 396 397func TestInstanceAdminListInstancesError(t *testing.T) { 398 errCode := codes.PermissionDenied 399 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 400 401 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 402 var request = &instancepb.ListInstancesRequest{ 403 Parent: formattedParent, 404 } 405 406 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 407 if err != nil { 408 t.Fatal(err) 409 } 410 411 resp, err := c.ListInstances(context.Background(), request).Next() 412 413 if st, ok := gstatus.FromError(err); !ok { 414 t.Errorf("got error %v, expected grpc error", err) 415 } else if c := st.Code(); c != errCode { 416 t.Errorf("got error code %q, want %q", c, errCode) 417 } 418 _ = resp 419} 420func TestInstanceAdminGetInstance(t *testing.T) { 421 var name2 string = "name2-1052831874" 422 var config string = "config-1354792126" 423 var displayName string = "displayName1615086568" 424 var nodeCount int32 = 1539922066 425 var expectedResponse = &instancepb.Instance{ 426 Name: name2, 427 Config: config, 428 DisplayName: displayName, 429 NodeCount: nodeCount, 430 } 431 432 mockInstanceAdmin.err = nil 433 mockInstanceAdmin.reqs = nil 434 435 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 436 437 var formattedName string = fmt.Sprintf("projects/%s/instances/%s", "[PROJECT]", "[INSTANCE]") 438 var request = &instancepb.GetInstanceRequest{ 439 Name: formattedName, 440 } 441 442 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 443 if err != nil { 444 t.Fatal(err) 445 } 446 447 resp, err := c.GetInstance(context.Background(), request) 448 449 if err != nil { 450 t.Fatal(err) 451 } 452 453 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 454 t.Errorf("wrong request %q, want %q", got, want) 455 } 456 457 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 458 t.Errorf("wrong response %q, want %q)", got, want) 459 } 460} 461 462func TestInstanceAdminGetInstanceError(t *testing.T) { 463 errCode := codes.PermissionDenied 464 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 465 466 var formattedName string = fmt.Sprintf("projects/%s/instances/%s", "[PROJECT]", "[INSTANCE]") 467 var request = &instancepb.GetInstanceRequest{ 468 Name: formattedName, 469 } 470 471 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 472 if err != nil { 473 t.Fatal(err) 474 } 475 476 resp, err := c.GetInstance(context.Background(), request) 477 478 if st, ok := gstatus.FromError(err); !ok { 479 t.Errorf("got error %v, expected grpc error", err) 480 } else if c := st.Code(); c != errCode { 481 t.Errorf("got error code %q, want %q", c, errCode) 482 } 483 _ = resp 484} 485func TestInstanceAdminCreateInstance(t *testing.T) { 486 var name string = "name3373707" 487 var config string = "config-1354792126" 488 var displayName string = "displayName1615086568" 489 var nodeCount int32 = 1539922066 490 var expectedResponse = &instancepb.Instance{ 491 Name: name, 492 Config: config, 493 DisplayName: displayName, 494 NodeCount: nodeCount, 495 } 496 497 mockInstanceAdmin.err = nil 498 mockInstanceAdmin.reqs = nil 499 500 any, err := ptypes.MarshalAny(expectedResponse) 501 if err != nil { 502 t.Fatal(err) 503 } 504 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], &longrunningpb.Operation{ 505 Name: "longrunning-test", 506 Done: true, 507 Result: &longrunningpb.Operation_Response{Response: any}, 508 }) 509 510 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 511 var instanceId string = "instanceId-2101995259" 512 var instance *instancepb.Instance = &instancepb.Instance{} 513 var request = &instancepb.CreateInstanceRequest{ 514 Parent: formattedParent, 515 InstanceId: instanceId, 516 Instance: instance, 517 } 518 519 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 520 if err != nil { 521 t.Fatal(err) 522 } 523 524 respLRO, err := c.CreateInstance(context.Background(), request) 525 if err != nil { 526 t.Fatal(err) 527 } 528 resp, err := respLRO.Wait(context.Background()) 529 530 if err != nil { 531 t.Fatal(err) 532 } 533 534 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 535 t.Errorf("wrong request %q, want %q", got, want) 536 } 537 538 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 539 t.Errorf("wrong response %q, want %q)", got, want) 540 } 541} 542 543func TestInstanceAdminCreateInstanceError(t *testing.T) { 544 errCode := codes.PermissionDenied 545 mockInstanceAdmin.err = nil 546 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], &longrunningpb.Operation{ 547 Name: "longrunning-test", 548 Done: true, 549 Result: &longrunningpb.Operation_Error{ 550 Error: &status.Status{ 551 Code: int32(errCode), 552 Message: "test error", 553 }, 554 }, 555 }) 556 557 var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]") 558 var instanceId string = "instanceId-2101995259" 559 var instance *instancepb.Instance = &instancepb.Instance{} 560 var request = &instancepb.CreateInstanceRequest{ 561 Parent: formattedParent, 562 InstanceId: instanceId, 563 Instance: instance, 564 } 565 566 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 567 if err != nil { 568 t.Fatal(err) 569 } 570 571 respLRO, err := c.CreateInstance(context.Background(), request) 572 if err != nil { 573 t.Fatal(err) 574 } 575 resp, err := respLRO.Wait(context.Background()) 576 577 if st, ok := gstatus.FromError(err); !ok { 578 t.Errorf("got error %v, expected grpc error", err) 579 } else if c := st.Code(); c != errCode { 580 t.Errorf("got error code %q, want %q", c, errCode) 581 } 582 _ = resp 583} 584func TestInstanceAdminUpdateInstance(t *testing.T) { 585 var name string = "name3373707" 586 var config string = "config-1354792126" 587 var displayName string = "displayName1615086568" 588 var nodeCount int32 = 1539922066 589 var expectedResponse = &instancepb.Instance{ 590 Name: name, 591 Config: config, 592 DisplayName: displayName, 593 NodeCount: nodeCount, 594 } 595 596 mockInstanceAdmin.err = nil 597 mockInstanceAdmin.reqs = nil 598 599 any, err := ptypes.MarshalAny(expectedResponse) 600 if err != nil { 601 t.Fatal(err) 602 } 603 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], &longrunningpb.Operation{ 604 Name: "longrunning-test", 605 Done: true, 606 Result: &longrunningpb.Operation_Response{Response: any}, 607 }) 608 609 var instance *instancepb.Instance = &instancepb.Instance{} 610 var fieldMask *field_maskpb.FieldMask = &field_maskpb.FieldMask{} 611 var request = &instancepb.UpdateInstanceRequest{ 612 Instance: instance, 613 FieldMask: fieldMask, 614 } 615 616 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 617 if err != nil { 618 t.Fatal(err) 619 } 620 621 respLRO, err := c.UpdateInstance(context.Background(), request) 622 if err != nil { 623 t.Fatal(err) 624 } 625 resp, err := respLRO.Wait(context.Background()) 626 627 if err != nil { 628 t.Fatal(err) 629 } 630 631 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 632 t.Errorf("wrong request %q, want %q", got, want) 633 } 634 635 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 636 t.Errorf("wrong response %q, want %q)", got, want) 637 } 638} 639 640func TestInstanceAdminUpdateInstanceError(t *testing.T) { 641 errCode := codes.PermissionDenied 642 mockInstanceAdmin.err = nil 643 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], &longrunningpb.Operation{ 644 Name: "longrunning-test", 645 Done: true, 646 Result: &longrunningpb.Operation_Error{ 647 Error: &status.Status{ 648 Code: int32(errCode), 649 Message: "test error", 650 }, 651 }, 652 }) 653 654 var instance *instancepb.Instance = &instancepb.Instance{} 655 var fieldMask *field_maskpb.FieldMask = &field_maskpb.FieldMask{} 656 var request = &instancepb.UpdateInstanceRequest{ 657 Instance: instance, 658 FieldMask: fieldMask, 659 } 660 661 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 662 if err != nil { 663 t.Fatal(err) 664 } 665 666 respLRO, err := c.UpdateInstance(context.Background(), request) 667 if err != nil { 668 t.Fatal(err) 669 } 670 resp, err := respLRO.Wait(context.Background()) 671 672 if st, ok := gstatus.FromError(err); !ok { 673 t.Errorf("got error %v, expected grpc error", err) 674 } else if c := st.Code(); c != errCode { 675 t.Errorf("got error code %q, want %q", c, errCode) 676 } 677 _ = resp 678} 679func TestInstanceAdminDeleteInstance(t *testing.T) { 680 var expectedResponse *emptypb.Empty = &emptypb.Empty{} 681 682 mockInstanceAdmin.err = nil 683 mockInstanceAdmin.reqs = nil 684 685 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 686 687 var formattedName string = fmt.Sprintf("projects/%s/instances/%s", "[PROJECT]", "[INSTANCE]") 688 var request = &instancepb.DeleteInstanceRequest{ 689 Name: formattedName, 690 } 691 692 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 693 if err != nil { 694 t.Fatal(err) 695 } 696 697 err = c.DeleteInstance(context.Background(), request) 698 699 if err != nil { 700 t.Fatal(err) 701 } 702 703 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 704 t.Errorf("wrong request %q, want %q", got, want) 705 } 706 707} 708 709func TestInstanceAdminDeleteInstanceError(t *testing.T) { 710 errCode := codes.PermissionDenied 711 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 712 713 var formattedName string = fmt.Sprintf("projects/%s/instances/%s", "[PROJECT]", "[INSTANCE]") 714 var request = &instancepb.DeleteInstanceRequest{ 715 Name: formattedName, 716 } 717 718 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 719 if err != nil { 720 t.Fatal(err) 721 } 722 723 err = c.DeleteInstance(context.Background(), request) 724 725 if st, ok := gstatus.FromError(err); !ok { 726 t.Errorf("got error %v, expected grpc error", err) 727 } else if c := st.Code(); c != errCode { 728 t.Errorf("got error code %q, want %q", c, errCode) 729 } 730} 731func TestInstanceAdminSetIamPolicy(t *testing.T) { 732 var version int32 = 351608024 733 var etag []byte = []byte("21") 734 var expectedResponse = &iampb.Policy{ 735 Version: version, 736 Etag: etag, 737 } 738 739 mockInstanceAdmin.err = nil 740 mockInstanceAdmin.reqs = nil 741 742 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 743 744 var resource string = "resource-341064690" 745 var policy *iampb.Policy = &iampb.Policy{} 746 var request = &iampb.SetIamPolicyRequest{ 747 Resource: resource, 748 Policy: policy, 749 } 750 751 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 752 if err != nil { 753 t.Fatal(err) 754 } 755 756 resp, err := c.SetIamPolicy(context.Background(), request) 757 758 if err != nil { 759 t.Fatal(err) 760 } 761 762 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 763 t.Errorf("wrong request %q, want %q", got, want) 764 } 765 766 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 767 t.Errorf("wrong response %q, want %q)", got, want) 768 } 769} 770 771func TestInstanceAdminSetIamPolicyError(t *testing.T) { 772 errCode := codes.PermissionDenied 773 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 774 775 var resource string = "resource-341064690" 776 var policy *iampb.Policy = &iampb.Policy{} 777 var request = &iampb.SetIamPolicyRequest{ 778 Resource: resource, 779 Policy: policy, 780 } 781 782 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 783 if err != nil { 784 t.Fatal(err) 785 } 786 787 resp, err := c.SetIamPolicy(context.Background(), request) 788 789 if st, ok := gstatus.FromError(err); !ok { 790 t.Errorf("got error %v, expected grpc error", err) 791 } else if c := st.Code(); c != errCode { 792 t.Errorf("got error code %q, want %q", c, errCode) 793 } 794 _ = resp 795} 796func TestInstanceAdminGetIamPolicy(t *testing.T) { 797 var version int32 = 351608024 798 var etag []byte = []byte("21") 799 var expectedResponse = &iampb.Policy{ 800 Version: version, 801 Etag: etag, 802 } 803 804 mockInstanceAdmin.err = nil 805 mockInstanceAdmin.reqs = nil 806 807 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 808 809 var resource string = "resource-341064690" 810 var request = &iampb.GetIamPolicyRequest{ 811 Resource: resource, 812 } 813 814 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 815 if err != nil { 816 t.Fatal(err) 817 } 818 819 resp, err := c.GetIamPolicy(context.Background(), request) 820 821 if err != nil { 822 t.Fatal(err) 823 } 824 825 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 826 t.Errorf("wrong request %q, want %q", got, want) 827 } 828 829 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 830 t.Errorf("wrong response %q, want %q)", got, want) 831 } 832} 833 834func TestInstanceAdminGetIamPolicyError(t *testing.T) { 835 errCode := codes.PermissionDenied 836 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 837 838 var resource string = "resource-341064690" 839 var request = &iampb.GetIamPolicyRequest{ 840 Resource: resource, 841 } 842 843 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 844 if err != nil { 845 t.Fatal(err) 846 } 847 848 resp, err := c.GetIamPolicy(context.Background(), request) 849 850 if st, ok := gstatus.FromError(err); !ok { 851 t.Errorf("got error %v, expected grpc error", err) 852 } else if c := st.Code(); c != errCode { 853 t.Errorf("got error code %q, want %q", c, errCode) 854 } 855 _ = resp 856} 857func TestInstanceAdminTestIamPermissions(t *testing.T) { 858 var expectedResponse *iampb.TestIamPermissionsResponse = &iampb.TestIamPermissionsResponse{} 859 860 mockInstanceAdmin.err = nil 861 mockInstanceAdmin.reqs = nil 862 863 mockInstanceAdmin.resps = append(mockInstanceAdmin.resps[:0], expectedResponse) 864 865 var resource string = "resource-341064690" 866 var permissions []string = nil 867 var request = &iampb.TestIamPermissionsRequest{ 868 Resource: resource, 869 Permissions: permissions, 870 } 871 872 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 873 if err != nil { 874 t.Fatal(err) 875 } 876 877 resp, err := c.TestIamPermissions(context.Background(), request) 878 879 if err != nil { 880 t.Fatal(err) 881 } 882 883 if want, got := request, mockInstanceAdmin.reqs[0]; !proto.Equal(want, got) { 884 t.Errorf("wrong request %q, want %q", got, want) 885 } 886 887 if want, got := expectedResponse, resp; !proto.Equal(want, got) { 888 t.Errorf("wrong response %q, want %q)", got, want) 889 } 890} 891 892func TestInstanceAdminTestIamPermissionsError(t *testing.T) { 893 errCode := codes.PermissionDenied 894 mockInstanceAdmin.err = gstatus.Error(errCode, "test error") 895 896 var resource string = "resource-341064690" 897 var permissions []string = nil 898 var request = &iampb.TestIamPermissionsRequest{ 899 Resource: resource, 900 Permissions: permissions, 901 } 902 903 c, err := NewInstanceAdminClient(context.Background(), clientOpt) 904 if err != nil { 905 t.Fatal(err) 906 } 907 908 resp, err := c.TestIamPermissions(context.Background(), request) 909 910 if st, ok := gstatus.FromError(err); !ok { 911 t.Errorf("got error %v, expected grpc error", err) 912 } else if c := st.Code(); c != errCode { 913 t.Errorf("got error code %q, want %q", c, errCode) 914 } 915 _ = resp 916} 917