Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 4fc1965

Browse files
committed
Add intersectSize test for SINTERCARD operation in DefaultSetOperationsIntegrationTests
Signed-off-by: Kiminni <imk0980@gmail.com>
1 parent 48cc51e commit 4fc1965

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

‎src/test/java/org/springframework/data/redis/core/DefaultSetOperationsIntegrationTests.java

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
* @author Christoph Strobl
3939
* @author Thomas Darimont
4040
* @author Mark Paluch
41+
* @author Mingi Lee
4142
*/
4243
@ParameterizedClass
4344
@MethodSource("testParams")
@@ -329,6 +330,38 @@ void intersectAndStoreShouldReturnNumberOfElementsInDestination() {
329330
assertThat(setOps.intersectAndStore(Arrays.asList(sourceKey1, sourceKey2), destinationKey)).isEqualTo(2L);
330331
}
331332

333+
@Test // GH-2906
334+
@EnabledOnCommand("SINTERCARD")
335+
void intersectSizeShouldReturnIntersectionCardinality() {
336+
337+
K sourceKey1 = keyFactory.instance();
338+
K sourceKey2 = keyFactory.instance();
339+
K sourceKey3 = keyFactory.instance();
340+
341+
V v1 = valueFactory.instance();
342+
V v2 = valueFactory.instance();
343+
V v3 = valueFactory.instance();
344+
V v4 = valueFactory.instance();
345+
V v5 = valueFactory.instance();
346+
347+
setOps.add(sourceKey1, v1, v2, v3);
348+
setOps.add(sourceKey2, v2, v3, v4);
349+
setOps.add(sourceKey3, v3, v4, v5);
350+
351+
// Test two keys intersection
352+
assertThat(setOps.intersectSize(sourceKey1, sourceKey2)).isEqualTo(2L);
353+
354+
// Test key and collection intersection
355+
assertThat(setOps.intersectSize(sourceKey1, Arrays.asList(sourceKey2, sourceKey3))).isEqualTo(1L);
356+
357+
// Test collection intersection
358+
assertThat(setOps.intersectSize(Arrays.asList(sourceKey1, sourceKey2, sourceKey3))).isEqualTo(1L);
359+
360+
// Test empty intersection
361+
K emptyKey = keyFactory.instance();
362+
assertThat(setOps.intersectSize(sourceKey1, emptyKey)).isEqualTo(0L);
363+
}
364+
332365
@Test // GH-2037
333366
@EnabledOnCommand("SMISMEMBER")
334367
void isMember() {

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /