if (args.length >= 2 && !ACTIONS.containsKey(args[0])) { actionName = args[1]; optionsBuilder.setProjectId(args[0]); action = ACTIONS.get(args[1]); args = Arrays.copyOfRange(args, 2, args.length); return; Compute compute = optionsBuilder.build().getService(); Object arg; try {
/** * Creates a {@code RemoteComputeHelper} object for the given project id and JSON key input * stream. * * @param projectId id of the project to be used for running the tests * @param keyStream input stream for a JSON key * @return A {@code RemoteComputeHelper} object for the provided options * @throws ComputeHelperException if {@code keyStream} is not a valid JSON key stream */ public static RemoteComputeHelper create(String projectId, InputStream keyStream) { try { HttpTransportOptions transportOptions = ComputeOptions.getDefaultHttpTransportOptions(); transportOptions = transportOptions.toBuilder().setConnectTimeout(60000).setReadTimeout(60000).build(); ComputeOptions computeOptions = ComputeOptions.newBuilder() .setCredentials(ServiceAccountCredentials.fromStream(keyStream)) .setProjectId(projectId) .setRetrySettings(retrySettings()) .setTransportOptions(transportOptions) .build(); return new RemoteComputeHelper(computeOptions); } catch (IOException ex) { if (log.isLoggable(Level.WARNING)) { log.log(Level.WARNING, ex.getMessage()); } throw ComputeHelperException.translate(ex); } }
ComputeOptions options = ComputeOptions.newBuilder() .setProjectId("p1") .setCredentials(NoCredentials.getInstance()) .build(); ComputeOptions otherOptions = options .toBuilder() .setProjectId("p2") .setRetrySettings(ServiceOptions.getDefaultRetrySettings()) .build(); return new Serializable[] { DISK_TYPE_ID,
options = ComputeOptions.newBuilder() .setProjectId(PROJECT) .setServiceRpcFactory(rpcFactoryMock) .setRetrySettings(ServiceOptions.getNoRetrySettings()) .build(); Compute otherService = options.toBuilder().build().getService(); globalOperation = new Operation.Builder(otherService)
@Test public void testRuntimeException() { String exceptionMessage = "Artificial runtime exception"; EasyMock.expect( computeRpcMock.getDiskType( DISK_TYPE_ID.getZone(), DISK_TYPE_ID.getType(), EMPTY_RPC_OPTIONS)) .andThrow(new RuntimeException(exceptionMessage)); EasyMock.replay(computeRpcMock); compute = options .toBuilder() .setRetrySettings(ServiceOptions.getDefaultRetrySettings()) .build() .getService(); thrown.expect(ComputeException.class); thrown.expectMessage(exceptionMessage); compute.getDiskType(DISK_TYPE_ID); } }
@Test public void testNonRetryableException() { String exceptionMessage = "Not Implemented"; EasyMock.expect( computeRpcMock.getDiskType( DISK_TYPE_ID.getZone(), DISK_TYPE_ID.getType(), EMPTY_RPC_OPTIONS)) .andThrow(new ComputeException(501, exceptionMessage)); EasyMock.replay(computeRpcMock); compute = options .toBuilder() .setRetrySettings(ServiceOptions.getDefaultRetrySettings()) .build() .getService(); thrown.expect(ComputeException.class); thrown.expectMessage(exceptionMessage); compute.getDiskType(DISK_TYPE_ID); }
@Test public void testRetryableException() { EasyMock.expect( computeRpcMock.getDiskType( DISK_TYPE_ID.getZone(), DISK_TYPE_ID.getType(), EMPTY_RPC_OPTIONS)) .andThrow(new ComputeException(500, "InternalError")) .andReturn(DISK_TYPE.toPb()); EasyMock.replay(computeRpcMock); compute = options .toBuilder() .setRetrySettings(ServiceOptions.getDefaultRetrySettings()) .build() .getService(); DiskType diskType = compute.getDiskType(DISK_TYPE_ID); assertEquals(DISK_TYPE, diskType); }
/** * Creates a {@code RemoteComputeHelper} object using default project id and authentication * credentials. */ public static RemoteComputeHelper create() { HttpTransportOptions transportOptions = ComputeOptions.getDefaultHttpTransportOptions(); transportOptions = transportOptions.toBuilder().setConnectTimeout(60000).setReadTimeout(60000).build(); ComputeOptions computeOptions = ComputeOptions.newBuilder() .setRetrySettings(retrySettings()) .setTransportOptions(transportOptions) .build(); return new RemoteComputeHelper(computeOptions); }
public static ComputeOptions getDefaultInstance() { return newBuilder().build(); }
public static Builder newBuilder() { return new Builder(); } }
@Override public Builder toBuilder() { return new Builder(this); }
@Test public void testInvalidTransport() { thrown.expect(IllegalArgumentException.class); ComputeOptions.newBuilder().setTransportOptions(EasyMock.createMock(TransportOptions.class)); } }