diff --git a/redis-driver/src/main/java/org/jnosql/diana/redis/key/RedisSet.java b/redis-driver/src/main/java/org/jnosql/diana/redis/key/RedisSet.java index 760e8a935..0547ef8e2 100644 --- a/redis-driver/src/main/java/org/jnosql/diana/redis/key/RedisSet.java +++ b/redis-driver/src/main/java/org/jnosql/diana/redis/key/RedisSet.java @@ -31,8 +31,12 @@ class RedisSet extends RedisCollection implements Set { @Override public boolean add(T e) { Objects.requireNonNull(e); - jedis.sadd(keyWithNameSpace, JSONB.toJson(e)); - return false; + if (isString) { + jedis.sadd(keyWithNameSpace, e.toString()); + } else { + jedis.sadd(keyWithNameSpace, JSONB.toJson(e)); + } + return true; } @Override @@ -92,7 +96,7 @@ protected List toArrayList() { Set redisValues = jedis.smembers(keyWithNameSpace); List list = new ArrayList<>(); for (String redisValue : redisValues) { - if(isString) { + if (isString) { list.add((T) redisValue); } else { list.add(JSONB.fromJson(redisValue, clazz)); diff --git a/redis-driver/src/test/java/org/jnosql/diana/redis/key/RedisSetStringTest.java b/redis-driver/src/test/java/org/jnosql/diana/redis/key/RedisSetStringTest.java index a1a0b9939..b508a684d 100644 --- a/redis-driver/src/test/java/org/jnosql/diana/redis/key/RedisSetStringTest.java +++ b/redis-driver/src/test/java/org/jnosql/diana/redis/key/RedisSetStringTest.java @@ -23,6 +23,7 @@ import java.util.Set; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; public class RedisSetStringTest { @@ -44,6 +45,14 @@ public void shouldAddUsers() { users.add("otaviojava"); assertTrue(users.size() == 1); + String user = users.iterator().next(); + assertEquals("otaviojava", user); + } + + @Test + public void shouldRemoveSet() { + assertTrue(users.isEmpty()); + users.add("otaviojava"); users.remove("otaviojava"); assertTrue(users.isEmpty()); }