Skip to content

Commit f1ece35

Browse files
committed
Add test to verify empty enum collection behavior.
See #1544
1 parent c55a54e commit f1ece35

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

spring-data-r2dbc/src/test/java/org/springframework/data/r2dbc/core/PostgresReactiveDataAccessStrategyTests.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,24 @@ void shouldCorrectlyWriteConvertedEnumNullValues() {
164164
assertThat(outboundRow).withColumn("enum_list").isEmpty().hasType(String[].class);
165165
}
166166

167+
@Test // gh-1544
168+
void shouldCorrectlyWriteConvertedEmptyEnumCollections() {
169+
170+
DefaultReactiveDataAccessStrategy strategy = new DefaultReactiveDataAccessStrategy(PostgresDialect.INSTANCE);
171+
172+
WithEnumCollections withEnums = new WithEnumCollections();
173+
withEnums.enumArray = new MyEnum[0];
174+
withEnums.enumList = Collections.emptyList();
175+
withEnums.enumSet = Collections.emptySet();
176+
177+
OutboundRow outboundRow = strategy.getOutboundRow(withEnums);
178+
179+
assertThat(outboundRow).containsColumns("enum_set", "enum_array", "enum_list");
180+
assertThat(outboundRow).withColumn("enum_set").hasValueInstanceOf(String[].class).hasType(String[].class);
181+
assertThat(outboundRow).withColumn("enum_array").hasValueInstanceOf(String[].class).hasType(String[].class);
182+
assertThat(outboundRow).withColumn("enum_list").hasValueInstanceOf(String[].class).hasType(String[].class);
183+
}
184+
167185
@Test // gh-593
168186
void shouldConvertCollectionOfEnumNatively() {
169187

0 commit comments

Comments
 (0)