public static CryptoKeyName parse(String formattedString) { if (formattedString.isEmpty()) { return null; } Map<String, String> matchMap = PATH_TEMPLATE.validatedMatch( formattedString, "CryptoKeyName.parse: formattedString not in valid format"); return of( matchMap.get("project"), matchMap.get("location"), matchMap.get("key_ring"), matchMap.get("crypto_key")); }
@Test @SuppressWarnings("all") public void decryptExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockKeyManagementService.addException(exception); try { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); ByteString ciphertext = ByteString.copyFromUtf8("-72"); client.decrypt(name, ciphertext); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { // Expected exception } }
@Test @SuppressWarnings("all") public void getCryptoKeyExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockKeyManagementService.addException(exception); try { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); client.getCryptoKey(name); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { // Expected exception } }
@Test @SuppressWarnings("all") public void listCryptoKeyVersionsExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockKeyManagementService.addException(exception); try { CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); client.listCryptoKeyVersions(parent); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { // Expected exception } }
@Test @SuppressWarnings("all") public void updateCryptoKeyPrimaryVersionExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockKeyManagementService.addException(exception); try { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); String cryptoKeyVersionId = "cryptoKeyVersionId729489152"; client.updateCryptoKeyPrimaryVersion(name, cryptoKeyVersionId); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { // Expected exception } }
@Test @SuppressWarnings("all") public void getCryptoKeyTest() { CryptoKeyName name2 = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey actualResponse = client.getCryptoKey(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); GetCryptoKeyRequest actualRequest = (GetCryptoKeyRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void createCryptoKeyVersionExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockKeyManagementService.addException(exception); try { CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKeyVersion cryptoKeyVersion = CryptoKeyVersion.newBuilder().build(); client.createCryptoKeyVersion(parent, cryptoKeyVersion); Assert.fail("No exception raised"); } catch (InvalidArgumentException e) { // Expected exception } }
@Test @SuppressWarnings("all") public void listCryptoKeyVersionsTest() { String nextPageToken = ""; int totalSize = 705419236; CryptoKeyVersion cryptoKeyVersionsElement = CryptoKeyVersion.newBuilder().build(); List<CryptoKeyVersion> cryptoKeyVersions = Arrays.asList(cryptoKeyVersionsElement); ListCryptoKeyVersionsResponse expectedResponse = ListCryptoKeyVersionsResponse.newBuilder() .setNextPageToken(nextPageToken) .setTotalSize(totalSize) .addAllCryptoKeyVersions(cryptoKeyVersions) .build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); ListCryptoKeyVersionsPagedResponse pagedListResponse = client.listCryptoKeyVersions(parent); List<CryptoKeyVersion> resources = Lists.newArrayList(pagedListResponse.iterateAll()); Assert.assertEquals(1, resources.size()); Assert.assertEquals(expectedResponse.getCryptoKeyVersionsList().get(0), resources.get(0)); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); ListCryptoKeyVersionsRequest actualRequest = (ListCryptoKeyVersionsRequest) actualRequests.get(0); Assert.assertEquals(parent, CryptoKeyName.parse(actualRequest.getParent())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void decryptTest() { ByteString plaintext = ByteString.copyFromUtf8("-9"); DecryptResponse expectedResponse = DecryptResponse.newBuilder().setPlaintext(plaintext).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); ByteString ciphertext = ByteString.copyFromUtf8("-72"); DecryptResponse actualResponse = client.decrypt(name, ciphertext); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); DecryptRequest actualRequest = (DecryptRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyName.parse(actualRequest.getName())); Assert.assertEquals(ciphertext, actualRequest.getCiphertext()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void updateCryptoKeyPrimaryVersionTest() { CryptoKeyName name2 = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); String cryptoKeyVersionId = "cryptoKeyVersionId729489152"; CryptoKey actualResponse = client.updateCryptoKeyPrimaryVersion(name, cryptoKeyVersionId); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); UpdateCryptoKeyPrimaryVersionRequest actualRequest = (UpdateCryptoKeyPrimaryVersionRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyName.parse(actualRequest.getName())); Assert.assertEquals(cryptoKeyVersionId, actualRequest.getCryptoKeyVersionId()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void updateCryptoKeyTest() { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKey cryptoKey = CryptoKey.newBuilder().build(); FieldMask updateMask = FieldMask.newBuilder().build(); CryptoKey actualResponse = client.updateCryptoKey(cryptoKey, updateMask); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); UpdateCryptoKeyRequest actualRequest = (UpdateCryptoKeyRequest) actualRequests.get(0); Assert.assertEquals(cryptoKey, actualRequest.getCryptoKey()); Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void createCryptoKeyVersionTest() { CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKeyVersion cryptoKeyVersion = CryptoKeyVersion.newBuilder().build(); CryptoKeyVersion actualResponse = client.createCryptoKeyVersion(parent, cryptoKeyVersion); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); CreateCryptoKeyVersionRequest actualRequest = (CreateCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(parent, CryptoKeyName.parse(actualRequest.getParent())); Assert.assertEquals(cryptoKeyVersion, actualRequest.getCryptoKeyVersion()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void createCryptoKeyTest() { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse);
throws StatusRuntimeException { String kmsKeyResourcePath = CryptoKeyName.of(projectId, location, keyRingName, keyName).toString(); try {
public static CryptoKeyName parse(String formattedString) { if (formattedString.isEmpty()) { return null; } Map<String, String> matchMap = PATH_TEMPLATE.validatedMatch( formattedString, "CryptoKeyName.parse: formattedString not in valid format"); return of( matchMap.get("project"), matchMap.get("location"), matchMap.get("key_ring"), matchMap.get("crypto_key")); }