@ -202,9 +202,9 @@ class CacheReproTests {
@@ -202,9 +202,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb2" ) . join ( ) ) . isNotSameAs ( tb ) ;
assertThat ( cache . get ( "tb2" ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . join ( ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . join ( ) ) . isNull ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . join ( ) ) . isNull ( ) ;
context . close ( ) ;
}
@ -230,9 +230,9 @@ class CacheReproTests {
@@ -230,9 +230,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb1" ) . get ( ) ) . isSameAs ( tb ) ;
assertThat ( cache . get ( "tb1" ) . get ( ) ) . isSameAs ( tb ) ;
assertThat ( bean . findById ( "" ) . join ( ) ) . isNull ( ) ;
assertThat ( bean . findById ( "" ) . join ( ) ) . isNull ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isNull ( ) ;
assertThat ( bean . findById ( "" ) . join ( ) ) . isNull ( ) ;
context . close ( ) ;
}
@ -265,9 +265,9 @@ class CacheReproTests {
@@ -265,9 +265,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb2" ) . block ( ) ) . isNotSameAs ( tb ) ;
assertThat ( cache . get ( "tb2" ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . block ( ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . block ( ) ) . isNull ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . block ( ) ) . isNull ( ) ;
context . close ( ) ;
}
@ -293,9 +293,9 @@ class CacheReproTests {
@@ -293,9 +293,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb1" ) . block ( ) ) . isSameAs ( tb ) ;
assertThat ( cache . get ( "tb1" ) . get ( ) ) . isSameAs ( tb ) ;
assertThat ( bean . findById ( "" ) . block ( ) ) . isNull ( ) ;
assertThat ( bean . findById ( "" ) . block ( ) ) . isNull ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isNull ( ) ;
assertThat ( bean . findById ( "" ) . block ( ) ) . isNull ( ) ;
context . close ( ) ;
}
@ -328,9 +328,9 @@ class CacheReproTests {
@@ -328,9 +328,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb2" ) . collectList ( ) . block ( ) ) . isNotEqualTo ( tb ) ;
assertThat ( cache . get ( "tb2" ) ) . isNull ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
assertThat ( bean . findByIdEmpty ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isEqualTo ( Collections . emptyList ( ) ) ;
assertThat ( bean . findByIdEmpty ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
context . close ( ) ;
}
@ -356,9 +356,9 @@ class CacheReproTests {
@@ -356,9 +356,9 @@ class CacheReproTests {
assertThat ( bean . findById ( "tb1" ) . collectList ( ) . block ( ) ) . isEqualTo ( tb ) ;
assertThat ( cache . get ( "tb1" ) . get ( ) ) . isEqualTo ( tb ) ;
assertThat ( bean . findById ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
assertThat ( bean . findById ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
assertThat ( cache . get ( "" ) . get ( ) ) . isEqualTo ( Collections . emptyList ( ) ) ;
assertThat ( bean . findById ( "" ) . collectList ( ) . block ( ) ) . isEmpty ( ) ;
context . close ( ) ;
}
@ -587,6 +587,8 @@ class CacheReproTests {
@@ -587,6 +587,8 @@ class CacheReproTests {
public static class Spr14235FutureService {
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , unless = "#result.name == 'tb2'" )
public CompletableFuture < TestBean > findById ( String id ) {
return CompletableFuture . completedFuture ( new TestBean ( id ) ) ;
@ -594,6 +596,8 @@ class CacheReproTests {
@@ -594,6 +596,8 @@ class CacheReproTests {
@Cacheable ( value = "itemCache" )
public CompletableFuture < TestBean > findByIdEmpty ( String id ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return CompletableFuture . completedFuture ( null ) ;
}
@ -611,9 +615,16 @@ class CacheReproTests {
@@ -611,9 +615,16 @@ class CacheReproTests {
public static class Spr14235FutureServiceSync {
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , sync = true )
public CompletableFuture < TestBean > findById ( String id ) {
return CompletableFuture . completedFuture ( id . isEmpty ( ) ? null : new TestBean ( id ) ) ;
if ( id . isEmpty ( ) ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return CompletableFuture . completedFuture ( null ) ;
}
return CompletableFuture . completedFuture ( new TestBean ( id ) ) ;
}
@CachePut ( cacheNames = "itemCache" , key = "#item.name" )
@ -625,6 +636,8 @@ class CacheReproTests {
@@ -625,6 +636,8 @@ class CacheReproTests {
public static class Spr14235MonoService {
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , unless = "#result.name == 'tb2'" )
public Mono < TestBean > findById ( String id ) {
return Mono . just ( new TestBean ( id ) ) ;
@ -632,6 +645,8 @@ class CacheReproTests {
@@ -632,6 +645,8 @@ class CacheReproTests {
@Cacheable ( value = "itemCache" )
public Mono < TestBean > findByIdEmpty ( String id ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return Mono . empty ( ) ;
}
@ -649,9 +664,16 @@ class CacheReproTests {
@@ -649,9 +664,16 @@ class CacheReproTests {
public static class Spr14235MonoServiceSync {
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , sync = true )
public Mono < TestBean > findById ( String id ) {
return ( id . isEmpty ( ) ? Mono . empty ( ) : Mono . just ( new TestBean ( id ) ) ) ;
if ( id . isEmpty ( ) ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return Mono . empty ( ) ;
}
return Mono . just ( new TestBean ( id ) ) ;
}
@CachePut ( cacheNames = "itemCache" , key = "#item.name" )
@ -665,6 +687,8 @@ class CacheReproTests {
@@ -665,6 +687,8 @@ class CacheReproTests {
private int counter = 0 ;
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , unless = "#result[0].name == 'tb2'" )
public Flux < TestBean > findById ( String id ) {
return Flux . just ( new TestBean ( id ) , new TestBean ( id + ( counter + + ) ) ) ;
@ -672,6 +696,8 @@ class CacheReproTests {
@@ -672,6 +696,8 @@ class CacheReproTests {
@Cacheable ( value = "itemCache" )
public Flux < TestBean > findByIdEmpty ( String id ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return Flux . empty ( ) ;
}
@ -691,9 +717,16 @@ class CacheReproTests {
@@ -691,9 +717,16 @@ class CacheReproTests {
private int counter = 0 ;
private boolean emptyCalled ;
@Cacheable ( value = "itemCache" , sync = true )
public Flux < TestBean > findById ( String id ) {
return ( id . isEmpty ( ) ? Flux . empty ( ) : Flux . just ( new TestBean ( id ) , new TestBean ( id + ( counter + + ) ) ) ) ;
if ( id . isEmpty ( ) ) {
assertThat ( emptyCalled ) . isFalse ( ) ;
emptyCalled = true ;
return Flux . empty ( ) ;
}
return Flux . just ( new TestBean ( id ) , new TestBean ( id + ( counter + + ) ) ) ;
}
@CachePut ( cacheNames = "itemCache" , key = "#id" )