@Override public String toString() { return getName(); }
@Override public String toString() { return String.format("Database[%s, %s]", id.getName(), state); } }
@Override public com.google.spanner.v1.Session call() throws Exception { return gapicRpc.createSession( db.getName(), getOptions().getSessionLabels(), options); } });
private String getDatabaseName(String instanceId, String databaseId) { return new DatabaseId(new InstanceId(projectId, instanceId), databaseId).getName(); } }
@Test public void listDatabases() { String pageToken = "token"; when(rpc.listDatabases(INSTANCE_NAME, 1, null)) .thenReturn(new Paginated<>(ImmutableList.<Database>of(getDatabaseProto()), pageToken)); when(rpc.listDatabases(INSTANCE_NAME, 1, pageToken)) .thenReturn(new Paginated<>(ImmutableList.<Database>of(getAnotherDatabaseProto()), "")); List<com.google.cloud.spanner.Database> dbs = Lists.newArrayList(client.listDatabases(INSTANCE_ID, Options.pageSize(1)).iterateAll()); assertThat(dbs.get(0).getId().getName()).isEqualTo(DB_NAME); assertThat(dbs.get(1).getId().getName()).isEqualTo(DB_NAME2); assertThat(dbs.size()).isEqualTo(2); } }
@Test public void getDatabase() { when(rpc.getDatabase(DB_NAME)).thenReturn(getDatabaseProto()); com.google.cloud.spanner.Database db = client.getDatabase(INSTANCE_ID, DB_ID); assertThat(db.getId().getName()).isEqualTo(DB_NAME); assertThat(db.getState()).isEqualTo(DatabaseInfo.State.READY); }
@Test public void fromProto() { Database db = createDatabase(); assertThat(db.getId().getName()).isEqualTo(NAME); assertThat(db.getState()).isEqualTo(DatabaseInfo.State.CREATING); }
@Test public void createDatabase() throws Exception { OperationFuture<Database, CreateDatabaseMetadata> rawOperationFuture = OperationFutureUtil.immediateOperationFuture( "createDatabase", getDatabaseProto(), CreateDatabaseMetadata.getDefaultInstance()); when(rpc.createDatabase( INSTANCE_NAME, "CREATE DATABASE `" + DB_ID + "`", Collections.<String>emptyList())) .thenReturn(rawOperationFuture); OperationFuture<com.google.cloud.spanner.Database, CreateDatabaseMetadata> op = client.createDatabase(INSTANCE_ID, DB_ID, Collections.<String>emptyList()); assertThat(op.isDone()).isTrue(); assertThat(op.get().getId().getName()).isEqualTo(DB_NAME); }
@Test public void basics() { String name = "projects/test-project/instances/test-instance/databases/database-1"; DatabaseId db = DatabaseId.of(name); assertThat(db.getName()).isEqualTo(name); assertThat(db.getInstanceId().getInstance()).isEqualTo("test-instance"); assertThat(db.getDatabase()).isEqualTo("database-1"); assertThat(DatabaseId.of("test-project", "test-instance", "database-1")).isEqualTo(db); assertThat(DatabaseId.of(name)).isEqualTo(db); assertThat(DatabaseId.of(name).hashCode()).isEqualTo(db.hashCode()); assertThat(db.toString()).isEqualTo(name); }
@Test public void successfulOperation() { com.google.spanner.admin.database.v1.Database db = com.google.spanner.admin.database.v1.Database.newBuilder() .setName(NAME) .setState(com.google.spanner.admin.database.v1.Database.State.READY) .build(); com.google.longrunning.Operation proto = newBuilder().setName("op1").setDone(true).setResponse(Any.pack(db)).build(); Operation<Database, String> op = Operation.create(rpc, proto, new ParserImpl()); assertThat(op.getName()).isEqualTo("op1"); assertThat(op.isDone()).isTrue(); assertThat(op.isSuccessful()).isTrue(); assertThat(op.getMetadata()).isNull(); assertThat(op.getResult().getId().getName()).isEqualTo(NAME); }
@Test public void reload() { com.google.longrunning.Operation proto = newBuilder().setName("op1").setDone(false).build(); Operation<Database, String> op = Operation.create(rpc, proto, new ParserImpl()); com.google.spanner.admin.database.v1.Database db = com.google.spanner.admin.database.v1.Database.newBuilder() .setName(NAME) .setState(com.google.spanner.admin.database.v1.Database.State.READY) .build(); proto = newBuilder().setName("op1").setDone(true).setResponse(Any.pack(db)).build(); when(rpc.getOperation("op1")).thenReturn(proto); op = op.reload(); assertThat(op.getName()).isEqualTo("op1"); assertThat(op.isDone()).isTrue(); assertThat(op.isSuccessful()).isTrue(); assertThat(op.getMetadata()).isNull(); assertThat(op.getResult().getId().getName()).isEqualTo(NAME); }
@Test public void waitForCompletes() throws Exception { com.google.longrunning.Operation proto = newBuilder().setName("op1").setDone(false).build(); Operation<Database, String> op = Operation.create(rpc, proto, new ParserImpl()); com.google.spanner.admin.database.v1.Database db = com.google.spanner.admin.database.v1.Database.newBuilder() .setName(NAME) .setState(com.google.spanner.admin.database.v1.Database.State.READY) .build(); com.google.longrunning.Operation proto2 = newBuilder().setName("op1").setDone(true).setResponse(Any.pack(db)).build(); when(rpc.getOperation("op1")).thenReturn(proto, proto2); op = op.waitFor( RetryOption.totalTimeout(Duration.ofSeconds(3)), RetryOption.initialRetryDelay(Duration.ZERO)); assertThat(op.getName()).isEqualTo("op1"); assertThat(op.isDone()).isTrue(); assertThat(op.isSuccessful()).isTrue(); assertThat(op.getMetadata()).isNull(); assertThat(op.getResult().getId().getName()).isEqualTo(NAME); }
@Override public String toString() { return getName(); }
@Override public String toString() { return String.format("Database[%s, %s]", id.getName(), state); } }
@Override public com.google.spanner.v1.Session call() throws Exception { return gapicRpc.createSession( db.getName(), getOptions().getSessionLabels(), options); } });
private String getDatabaseName(String instanceId, String databaseId) { return new DatabaseId(new InstanceId(projectId, instanceId), databaseId).getName(); } }