TheNeuralBit commented on a change in pull request #11529: URL: https://github.com/apache/beam/pull/11529#discussion_r427580795
########## File path: sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/spanner/SpannerIOWriteTest.java ########## @@ -263,6 +263,17 @@ private void verifyBatches(Iterable<Mutation>... batches) { @Test public void noBatching() throws Exception { + + // This test uses a different mock/fake because it explicitly does not want to populate the + // Spanner schema. + FakeServiceFactory fakeServiceFactory = new FakeServiceFactory(); + ReadOnlyTransaction tx = mock(ReadOnlyTransaction.class); + when(fakeServiceFactory.mockDatabaseClient().readOnlyTransaction()).thenReturn(tx); + + // Capture batches sent to writeAtLeastOnce. + when(fakeServiceFactory.mockDatabaseClient().writeAtLeastOnce(mutationBatchesCaptor.capture())) + .thenReturn(null); + Review comment: Actually on second thought I wonder if we should just leave this test completely unchanged (i.e. call `verifyBatches`, don't check that the DB schema is never read). The fact the schema isn't read seems like an implementation detail that we don't need to explicitly verify. What do you think? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org