(t *testing.T)
| 451 | } |
| 452 | |
| 453 | func TestIsAmazonPrivateLinkEndpoint(t *testing.T) { |
| 454 | testCases := []struct { |
| 455 | url string |
| 456 | // Expected result. |
| 457 | result bool |
| 458 | }{ |
| 459 | {"https://192.168.1.1", false}, |
| 460 | {"192.168.1.1", false}, |
| 461 | {"http://storage.googleapis.com", false}, |
| 462 | {"https://storage.googleapis.com", false}, |
| 463 | {"storage.googleapis.com", false}, |
| 464 | {"s3.amazonaws.com", false}, |
| 465 | {"https://amazons3.amazonaws.com", false}, |
| 466 | {"-192.168.1.1", false}, |
| 467 | {"260.192.1.1", false}, |
| 468 | {"https://s3-.amazonaws.com", false}, |
| 469 | {"https://s3..amazonaws.com", false}, |
| 470 | {"https://s3.dualstack.us-west-1.amazonaws.com.cn", false}, |
| 471 | {"https://s3..us-west-1.amazonaws.com.cn", false}, |
| 472 | {"https://s3.amazonaws.com", false}, |
| 473 | {"https://s3-external-1.amazonaws.com", false}, |
| 474 | {"https://s3.cn-north-1.amazonaws.com.cn", false}, |
| 475 | {"https://s3-us-west-1.amazonaws.com", false}, |
| 476 | {"https://s3.us-west-1.amazonaws.com", false}, |
| 477 | {"https://s3.dualstack.us-west-1.amazonaws.com", false}, |
| 478 | // valid inputs. |
| 479 | {"https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com", true}, |
| 480 | {"https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com", true}, |
| 481 | {"https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com:443", true}, |
| 482 | {"https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com:443", true}, |
| 483 | } |
| 484 | |
| 485 | for i, testCase := range testCases { |
| 486 | u, err := url.Parse(testCase.url) |
| 487 | if err != nil { |
| 488 | t.Errorf("Test %d: Expected to pass, but failed with: <ERROR> %s", i+1, err) |
| 489 | } |
| 490 | result := IsAmazonPrivateLinkEndpoint(*u) |
| 491 | if testCase.result != result { |
| 492 | t.Errorf("Test %d: Expected IsAmazonPrivateLinkEndpoint to be '%v' for input \"%s\", but found it to be '%v' instead", i+1, testCase.result, testCase.url, result) |
| 493 | } |
| 494 | } |
| 495 | } |
| 496 | |
| 497 | func TestS3ExpressBucket(t *testing.T) { |
| 498 | tests := []struct { |
nothing calls this directly
no test coverage detected