Skip to content

Commit f047b4d

Browse files
committed
Fixed nondetermistic tests in MappingRedisConverterUnitTests.
Closes #3242
1 parent 8b47704 commit f047b4d

File tree

2 files changed

+18
-35
lines changed

2 files changed

+18
-35
lines changed

src/test/java/org/springframework/data/redis/core/convert/MappingRedisConverterUnitTests.java

Lines changed: 7 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -15,33 +15,9 @@
1515
*/
1616
package org.springframework.data.redis.core.convert;
1717

18-
import static org.assertj.core.api.Assertions.assertThat;
19-
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
20-
import static org.mockito.Mockito.eq;
21-
import static org.mockito.Mockito.when;
22-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.AccountInfo;
23-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Address;
24-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.AddressWithId;
25-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.AddressWithPostcode;
26-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Device;
27-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.ExipringPersonWithExplicitProperty;
28-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.ExpiringPerson;
29-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Gender;
30-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.JustSomeDifferentPropertyTypes;
31-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.KEYSPACE_ACCOUNT;
32-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.KEYSPACE_PERSON;
33-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Location;
34-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Outer;
35-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Person;
36-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.PersonWithConstructorAndAddress;
37-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.RecursiveConstructorPerson;
38-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Size;
39-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.Species;
40-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.TaVeren;
41-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.TheWheelOfTime;
42-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.TypeWithMaps;
43-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.TypeWithObjectValueTypes;
44-
import static org.springframework.data.redis.core.convert.ConversionTestEntities.WithArrays;
18+
import static org.assertj.core.api.Assertions.*;
19+
import static org.mockito.Mockito.*;
20+
import static org.springframework.data.redis.core.convert.ConversionTestEntities.*;
4521

4622
import java.nio.charset.Charset;
4723
import java.nio.charset.StandardCharsets;
@@ -1053,7 +1029,7 @@ void writeShouldHonorCustomConversionOnRootType() {
10531029
address.country = "Tel'aran'rhiod";
10541030
address.city = "unknown";
10551031

1056-
assertThat(write(address)).containsEntry("_raw", "{\"city\":\"unknown\",\"country\":\"Tel'aran'rhiod\"}");
1032+
assertThat(write(address).get("_raw")).contains("\"city\":\"unknown\"").contains("\"country\":\"Tel'aran'rhiod\"");
10571033
}
10581034

10591035
@Test // DATAREDIS-425, DATAREDIS-634
@@ -1074,7 +1050,7 @@ void writeShouldHonorCustomConversionOnNestedType() {
10741050
address.city = "unknown";
10751051
rand.address = address;
10761052

1077-
assertThat(write(rand)).containsEntry("address", "{\"city\":\"unknown\",\"country\":\"Tel'aran'rhiod\"}");
1053+
assertThat(write(rand).get("address")).contains("\"city\":\"unknown\"").contains("\"country\":\"Tel'aran'rhiod\"");
10781054
}
10791055

10801056
@Test // DATAREDIS-425
@@ -1769,7 +1745,8 @@ void writeShouldWritePartialUpdatePathWithRegisteredCustomConversionCorrectly()
17691745

17701746
PartialUpdate<Person> update = new PartialUpdate<>("123", Person.class).set("address", address);
17711747

1772-
assertThat(write(update)).containsEntry("address", "{\"city\":\"unknown\",\"country\":\"Tel'aran'rhiod\"}");
1748+
assertThat(write(update).get("address")).contains("\"city\":\"unknown\",")
1749+
.contains("\"country\":\"Tel'aran'rhiod\"");
17731750
}
17741751

17751752
@Test // DATAREDIS-471

src/test/java/org/springframework/data/redis/test/util/RedisTestData.java

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,11 @@
3737
public class RedisTestData implements AssertProvider<RedisTestData.RedisBucketAssert> {
3838

3939
private final RedisData redisData;
40+
private final Map<String, String> stringMap;
4041

41-
RedisTestData(RedisData redisData) {
42+
private RedisTestData(RedisData redisData) {
4243
this.redisData = redisData;
44+
this.stringMap = toStringMap(redisData.getBucket().asMap());
4345
}
4446

4547
public static RedisTestData from(RedisData data) {
@@ -48,7 +50,11 @@ public static RedisTestData from(RedisData data) {
4850

4951
@Override
5052
public RedisBucketAssert assertThat() {
51-
return new RedisBucketAssert(redisData);
53+
return new RedisBucketAssert(redisData, stringMap);
54+
}
55+
56+
public String get(String key) {
57+
return stringMap.get(key);
5258
}
5359

5460
public Bucket getBucket() {
@@ -69,9 +75,9 @@ public static class RedisBucketAssert extends MapAssert<String, String> {
6975

7076
private final RedisData redisData;
7177

72-
RedisBucketAssert(RedisData redisData) {
78+
RedisBucketAssert(RedisData redisData, Map<String, String> stringMap) {
7379

74-
super(toStringMap(redisData.getBucket().asMap()));
80+
super(stringMap);
7581
this.redisData = redisData;
7682
}
7783

@@ -154,6 +160,6 @@ private static Map<String, String> toStringMap(Map<String, byte[]> source) {
154160

155161
@Override
156162
public String toString() {
157-
return toStringMap(getBucket().asMap()).toString();
163+
return stringMap.toString();
158164
}
159165
}

0 commit comments

Comments
 (0)