Upgrade tests to use R2DBC 0.9.

See #710
This commit is contained in:
Mark Paluch
2022-02-07 11:14:25 +01:00
parent 211a087afb
commit 4da260e4e5
12 changed files with 104 additions and 74 deletions

View File

@@ -30,7 +30,7 @@
<degraph-check.version>0.1.4</degraph-check.version>
<postgresql.version>42.2.5</postgresql.version>
<mysql.version>8.0.21</mysql.version>
<r2dbc-spi-test.version>0.8.5.RELEASE</r2dbc-spi-test.version>
<r2dbc-spi-test.version>0.9.1.RELEASE</r2dbc-spi-test.version>
<mssql-jdbc.version>7.1.2.jre8-preview</mssql-jdbc.version>
<mariadb-jdbc.version>2.5.4</mariadb-jdbc.version>
<r2dbc-releasetrain.version>Borca-RELEASE</r2dbc-releasetrain.version>

View File

@@ -3,6 +3,7 @@ package org.springframework.data.r2dbc.convert;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.Row;
import io.r2dbc.spi.RowMetadata;
import io.r2dbc.spi.test.MockColumnMetadata;
@@ -33,14 +34,14 @@ class EntityRowMapperUnitTests {
private Row rowMock = mock(Row.class);
private RowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("integer_set").build())
.columnMetadata(MockColumnMetadata.builder().name("boxed_integers").build())
.columnMetadata(MockColumnMetadata.builder().name("primitive_integers").build())
.columnMetadata(MockColumnMetadata.builder().name("enum_array").build())
.columnMetadata(MockColumnMetadata.builder().name("set_of_enum").build())
.columnMetadata(MockColumnMetadata.builder().name("enum_set").build())
.columnMetadata(MockColumnMetadata.builder().name("id").build())
.columnMetadata(MockColumnMetadata.builder().name("ids").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("integer_set").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("boxed_integers").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("primitive_integers").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("enum_array").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("set_of_enum").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("enum_set").type(R2dbcType.COLLECTION).build())
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.columnMetadata(MockColumnMetadata.builder().name("ids").type(R2dbcType.COLLECTION).build()).build();
@Test // gh-22
void shouldMapSimpleEntity() {

View File

@@ -18,6 +18,7 @@ package org.springframework.data.r2dbc.convert;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.Row;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockRow;
@@ -228,8 +229,9 @@ public class MappingR2dbcConverterUnitTests {
MockRow row = MockRow.builder().identified("id", Object.class, 42).identified("world", Object.class, "No, universe")
.build();
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
.columnMetadata(MockColumnMetadata.builder().name("world").build()).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.columnMetadata(MockColumnMetadata.builder().name("world").type(R2dbcType.VARCHAR).build()).build();
WithSpelExpression result = converter.read(WithSpelExpression.class, row, metadata);
@@ -242,8 +244,9 @@ public class MappingR2dbcConverterUnitTests {
void considersConverterBeforeEntityConstruction() {
MockRow row = MockRow.builder().identified("id", Object.class, 42).identified("person", Object.class, null).build();
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
.columnMetadata(MockColumnMetadata.builder().name("person").build()).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.columnMetadata(MockColumnMetadata.builder().name("person").type(R2dbcType.VARCHAR).build()).build();
WithSimplePersonConstructor result = converter.read(WithSimplePersonConstructor.class, row, metadata);

View File

@@ -17,6 +17,7 @@ package org.springframework.data.r2dbc.convert;
import static org.assertj.core.api.Assertions.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockRow;
import io.r2dbc.spi.test.MockRowMetadata;
@@ -80,8 +81,8 @@ class MySqlMappingR2dbcConverterUnitTests {
.identified("flag2", Object.class, (byte) 0).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("flag1").build())
.columnMetadata(MockColumnMetadata.builder().name("flag2").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("flag1").type(R2dbcType.SMALLINT).build())
.columnMetadata(MockColumnMetadata.builder().name("flag2").type(R2dbcType.SMALLINT).build()).build();
BooleanMapping mapped = converter.read(BooleanMapping.class, row, metadata);

View File

@@ -18,6 +18,7 @@ package org.springframework.data.r2dbc.convert;
import static org.assertj.core.api.Assertions.*;
import io.r2dbc.postgresql.codec.Json;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockRow;
import io.r2dbc.spi.test.MockRowMetadata;
@@ -89,7 +90,7 @@ class PostgresMappingR2dbcConverterUnitTests {
MockRow row = MockRow.builder().identified("json_string", Object.class, Json.of("{\"hello\":\"world\"}")).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("json_string").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("json_string").type(R2dbcType.VARCHAR).build()).build();
ConvertedJson result = converter.read(ConvertedJson.class, row, metadata);
assertThat(result.jsonString).isEqualTo("{\"hello\":\"world\"}");
@@ -101,7 +102,7 @@ class PostgresMappingR2dbcConverterUnitTests {
MockRow row = MockRow.builder().identified("json_bytes", Object.class, Json.of("{\"hello\":\"world\"}")).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("json_bytes").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("json_bytes").type(R2dbcType.VARCHAR).build()).build();
ConvertedJson result = converter.read(ConvertedJson.class, row, metadata);
assertThat(result.jsonBytes).isEqualTo("{\"hello\":\"world\"}".getBytes());
@@ -113,7 +114,7 @@ class PostgresMappingR2dbcConverterUnitTests {
MockRow row = MockRow.builder().identified("holder", Object.class, Json.of("{\"hello\":\"world\"}")).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("holder").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("holder").type(R2dbcType.VARCHAR).build()).build();
WithJsonHolder result = converter.read(WithJsonHolder.class, row, metadata);
assertThat(result.holder).isNotNull();

View File

@@ -21,6 +21,7 @@ import static org.springframework.data.r2dbc.query.Criteria.*;
import io.r2dbc.spi.Connection;
import io.r2dbc.spi.ConnectionFactory;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.Result;
import io.r2dbc.spi.Statement;
import io.r2dbc.spi.test.MockColumnMetadata;
@@ -435,9 +436,7 @@ public class DefaultDatabaseClientUnitTests {
@Test // gh-189
void shouldApplyStatementFilterFunctions() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata).build();
MockResult result = MockResult.builder().build();
Statement statement = mockStatement(result);
@@ -460,9 +459,7 @@ public class DefaultDatabaseClientUnitTests {
@Test // gh-189
void shouldApplyStatementFilterFunctionsToTypedExecute() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata).build();
MockResult result = MockResult.builder().build();
Statement statement = mockStatement(result);
@@ -538,11 +535,11 @@ public class DefaultDatabaseClientUnitTests {
private MockResult mockSingleColumnResult(@Nullable MockRow.Builder row) {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult.Builder resultBuilder = MockResult.builder().rowMetadata(metadata);
MockResult.Builder resultBuilder = MockResult.builder();
if (row != null) {
resultBuilder = resultBuilder.row(row.build());
resultBuilder = resultBuilder.row(row.metadata(metadata).build());
}
return resultBuilder.build();
}

View File

@@ -18,6 +18,7 @@ package org.springframework.data.r2dbc.core;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockResult;
import io.r2dbc.spi.test.MockRow;
@@ -87,8 +88,8 @@ public class R2dbcEntityTemplateUnitTests {
void shouldCountBy() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified(0, Long.class, 1L).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -108,8 +109,8 @@ public class R2dbcEntityTemplateUnitTests {
void shouldProjectExistsResult() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified(0, Object.class, null).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -126,8 +127,8 @@ public class R2dbcEntityTemplateUnitTests {
void shouldExistsByCriteria() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified(0, Long.class, 1L).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -162,10 +163,11 @@ public class R2dbcEntityTemplateUnitTests {
@Test // gh-215
void selectShouldInvokeCallback() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
.columnMetadata(MockColumnMetadata.builder().name("THE_NAME").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata).row(MockRow.builder()
.identified("id", Object.class, "Walter").identified("THE_NAME", Object.class, "some-name").build()).build();
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.columnMetadata(MockColumnMetadata.builder().name("THE_NAME").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder().row(MockRow.builder().identified("id", Object.class, "Walter")
.identified("THE_NAME", Object.class, "some-name").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -204,8 +206,8 @@ public class R2dbcEntityTemplateUnitTests {
void shouldUpdateByQuery() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata).rowsUpdated(1).build();
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder().rowsUpdated(1).build();
recorder.addStubbing(s -> s.startsWith("UPDATE"), result);
@@ -226,8 +228,8 @@ public class R2dbcEntityTemplateUnitTests {
void shouldDeleteByQuery() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("name").build()).build();
MockResult result = MockResult.builder().rowMetadata(metadata).rowsUpdated(1).build();
.columnMetadata(MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()).build();
MockResult result = MockResult.builder().rowsUpdated(1).build();
recorder.addStubbing(s -> s.startsWith("DELETE"), result);

View File

@@ -18,6 +18,7 @@ package org.springframework.data.r2dbc.core;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import io.r2dbc.spi.Parameters;
import io.r2dbc.spi.Row;
import io.r2dbc.spi.RowMetadata;
import io.r2dbc.spi.test.MockColumnMetadata;
@@ -198,7 +199,8 @@ public abstract class ReactiveDataAccessStrategyTestSupport {
ReactiveDataAccessStrategy strategy = getStrategy();
Row rowMock = mock(Row.class);
RowMetadata metadataMock = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name(fieldname).build()).build();
.columnMetadata(MockColumnMetadata.builder().name(fieldname).type(Parameters.in(testValue).getType()).build())
.build();
PrimitiveTypes toSave = new PrimitiveTypes();
setter.accept(toSave, testValue);

View File

@@ -17,6 +17,7 @@ package org.springframework.data.r2dbc.core;
import static org.assertj.core.api.Assertions.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockResult;
import io.r2dbc.spi.test.MockRow;
@@ -55,10 +56,11 @@ public class ReactiveInsertOperationUnitTests {
@Test // gh-220
void shouldInsert() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, 42).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, 42).metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("INSERT"), result);
@@ -83,10 +85,11 @@ public class ReactiveInsertOperationUnitTests {
@Test // gh-220
void shouldUpdateInTable() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, 42).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, 42).metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("INSERT"), result);

View File

@@ -19,6 +19,7 @@ import static org.assertj.core.api.Assertions.*;
import static org.springframework.data.relational.core.query.Criteria.*;
import static org.springframework.data.relational.core.query.Query.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockResult;
import io.r2dbc.spi.test.MockRow;
@@ -56,10 +57,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectAll() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -79,10 +81,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectAs() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -102,10 +105,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectFromTable() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -125,10 +129,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectFirst() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -147,10 +152,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectOne() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -169,10 +175,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectExists() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified("id", Object.class, "Walter").build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified("id", Object.class, "Walter").metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);
@@ -191,10 +198,11 @@ public class ReactiveSelectOperationUnitTests {
@Test // gh-220
void shouldSelectCount() {
MockRowMetadata metadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build())
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build())
.build();
MockResult result = MockResult.builder().rowMetadata(metadata)
.row(MockRow.builder().identified(0, Long.class, 1L).build()).build();
MockResult result = MockResult.builder()
.row(MockRow.builder().identified(0, Long.class, 1L).metadata(metadata).build()).build();
recorder.addStubbing(s -> s.startsWith("SELECT"), result);

View File

@@ -18,6 +18,7 @@ package org.springframework.data.r2dbc.repository.query;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import io.r2dbc.spi.R2dbcType;
import io.r2dbc.spi.test.MockColumnMetadata;
import io.r2dbc.spi.test.MockResult;
import io.r2dbc.spi.test.MockRow;
@@ -288,9 +289,9 @@ public class StringBasedR2dbcQueryUnitTests {
void selectsSimpleType() {
MockRowMetadata metadata = MockRowMetadata.builder()
.columnMetadata(MockColumnMetadata.builder().name("date").build()).build();
.columnMetadata(MockColumnMetadata.builder().name("date").type(R2dbcType.DATE).build()).build();
LocalDate value = LocalDate.now();
MockResult result = MockResult.builder().rowMetadata(metadata)
MockResult result = MockResult.builder()
.row(MockRow.builder().identified(0, LocalDate.class, value).build()).build();
StatementRecorder recorder = StatementRecorder.newInstance();

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2020-2021 the original author or authors.
* Copyright 2020-2022 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,6 +15,7 @@
*/
package org.springframework.data.r2dbc.repository
import io.r2dbc.spi.R2dbcType
import io.r2dbc.spi.test.MockColumnMetadata
import io.r2dbc.spi.test.MockResult
import io.r2dbc.spi.test.MockRow
@@ -69,11 +70,21 @@ class CoroutineRepositoryUnitTests {
@Test // gh-395
fun shouldIssueSelectQuery() {
val rowMetadata = MockRowMetadata.builder().columnMetadata(MockColumnMetadata.builder().name("id").build()).columnMetadata(MockColumnMetadata.builder().name("name").build()).build()
val row1 = MockRow.builder().identified("id", Object::class.java, 1L).identified("name", Object::class.java, "Walter").build()
val row2 = MockRow.builder().identified("id", Object::class.java, 2L).identified("name", Object::class.java, "White").build()
val rowMetadata = MockRowMetadata.builder()
.columnMetadata(
MockColumnMetadata.builder().name("id").type(R2dbcType.INTEGER).build()
)
.columnMetadata(
MockColumnMetadata.builder().name("name").type(R2dbcType.VARCHAR).build()
)
.build()
val row1 = MockRow.builder().identified("id", Object::class.java, 1L)
.identified("name", Object::class.java, "Walter").metadata(rowMetadata)
.build()
val row2 = MockRow.builder().identified("id", Object::class.java, 2L)
.identified("name", Object::class.java, "White").metadata(rowMetadata).build()
val result = MockResult.builder().rowMetadata(rowMetadata).row(row1).row(row2).build()
val result = MockResult.builder().row(row1).row(row2).build()
recorder.addStubbing({ s: String -> s.startsWith("SELECT") }, result)
val repository = repositoryFactory.getRepository(PersonRepository::class.java)