Source:
void getEntityWithResponseSubclassAsync() { final String partitionKeyValue = testResourceNamer.randomName("partitionKey", 20); final String rowKeyValue = testResourceNamer.randomName("rowKey", 20); final TableEntity tableEntity = new TableEntity(partitionKeyValue, rowKeyValue); byte[] bytes = new byte[]{1, 2, 3}; boolean b = true; OffsetDateTime dateTime = OffsetDateTime.of(2020, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC); double d = 1.23D; UUID uuid = UUID.fromString("11111111-2222-3333-4444-555555555555"); int i = 123; long l = 123L; String s = "Test"; SampleEntity.Color color = SampleEntity.Color.GREEN; Map<String, Object> props = new HashMap<>(); props.put("ByteField", bytes); props.put("BooleanField", b); props.put("DateTimeField", dateTime); props.put("DoubleField", d); props.put("UuidField", uuid); props.put("IntField", i); props.put("LongField", l); props.put("StringField", s); props.put("EnumField", color); tableEntity.addProperties(props); final int expectedStatusCode = 200; tableClient.createEntity(tableEntity).block(TIMEOUT); StepVerifier.create(tableClient.getEntityWithResponse(partitionKeyValue, rowKeyValue, null, SampleEntity.class)) .assertNext(response -> { final SampleEntity entity = response.getValue(); assertEquals(expectedStatusCode, response.getStatusCode()); assertNotNull(entity); assertEquals(tableEntity.getPartitionKey(), entity.getPartitionKey()); assertEquals(tableEntity.getRowKey(), entity.getRowKey()); assertNotNull(entity.getTimestamp()); assertNotNull(entity.getETag()); assertArrayEquals(bytes, entity.getByteField()); assertEquals(b, entity.getBooleanField()); assertTrue(dateTime.isEqual(entity.getDateTimeField())); assertEquals(d, entity.getDoubleField()); assertEquals(0, uuid.compareTo(entity.getUuidField())); assertEquals(i, entity.getIntField()); assertEquals(l, entity.getLongField()); assertEquals(s, entity.getStringField()); assertEquals(color, entity.getEnumField()); }) .expectComplete() .verify(); }

Target:
void getEntityWithResponseSubclassAsync() { String partitionKeyValue = testResourceNamer.randomName("partitionKey", 20); String rowKeyValue = testResourceNamer.randomName("rowKey", 20); byte[] bytes = new byte[]{1, 2, 3}; boolean b = true; OffsetDateTime dateTime = OffsetDateTime.of(2020, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC); double d = 1.23D; UUID uuid = UUID.fromString("11111111-2222-3333-4444-555555555555"); int i = 123; long l = 123L; String s = "Test"; SampleEntity.Color color = SampleEntity.Color.GREEN; Map<String, Object> props = new HashMap<>(); props.put("ByteField", bytes); props.put("BooleanField", b); props.put("DateTimeField", dateTime); props.put("DoubleField", d); props.put("UuidField", uuid); props.put("IntField", i); props.put("LongField", l); props.put("StringField", s); props.put("EnumField", color); TableEntity tableEntity = new TableEntity(partitionKeyValue, rowKeyValue); tableEntity.addProperties(props); int expectedStatusCode = 200; tableClient.createEntity(tableEntity).block(TIMEOUT); StepVerifier.create(tableClient.getEntityWithResponse(partitionKeyValue, rowKeyValue, null, SampleEntity.class)) .assertNext(response -> { SampleEntity entity = response.getValue(); assertEquals(expectedStatusCode, response.getStatusCode()); assertNotNull(entity); assertEquals(tableEntity.getPartitionKey(), entity.getPartitionKey()); assertEquals(tableEntity.getRowKey(), entity.getRowKey()); assertNotNull(entity.getTimestamp()); assertNotNull(entity.getETag()); assertArrayEquals(bytes, entity.getByteField()); assertEquals(b, entity.getBooleanField()); assertTrue(dateTime.isEqual(entity.getDateTimeField())); assertEquals(d, entity.getDoubleField()); assertEquals(0, uuid.compareTo(entity.getUuidField())); assertEquals(i, entity.getIntField()); assertEquals(l, entity.getLongField()); assertEquals(s, entity.getStringField()); assertEquals(color, entity.getEnumField()); }) .expectComplete() .verify(); }