Finish implementing API
[lgpl/argeo-commons.git] / security / runtime / org.argeo.security.core / src / test / java / org / argeo / security / json / ArgeoUserJsonTest.java
index 02b2529bbe0303131738bea640038ac33e8ef63b..df9dbe95aa8cf64db551ec72367a95887d4d7b40 100644 (file)
@@ -14,6 +14,7 @@ import org.argeo.security.UserNature;
 import org.argeo.security.core.ArgeoUserDetails;
 import org.argeo.security.nature.CoworkerNature;
 import org.argeo.security.nature.SimpleUserNature;
+import org.argeo.server.json.JsonServerMapper;
 import org.codehaus.jackson.JsonFactory;
 import org.codehaus.jackson.JsonGenerator;
 import org.codehaus.jackson.map.ObjectMapper;
@@ -61,8 +62,30 @@ public class ArgeoUserJsonTest extends TestCase {
                // BasicArgeoUser aud = objectMapper.readValue(audJo,
                // BasicArgeoUser.class);
 
-               ArgeoUserMapper argeoUserMapper = new ArgeoUserMapper();
-               ArgeoUser argeoUserDes = argeoUserMapper.parse(audJo);
+               JsonServerMapper mapper = JsonServerMapperTest.createJsonServerMapper();
+               ArgeoUser aud = (ArgeoUser) mapper.deserialize(audJo);
+
+               assertEquals(argeoUser.getUsername(), aud.getUsername());
+               assertEquals(argeoUser.getRoles().size(), aud.getRoles().size());
+               assertEquals(argeoUser.getUserNatures().size(), aud.getUserNatures()
+                               .size());
+
+               assertSimpleUserNature((SimpleUserNature) argeoUser.getUserNatures()
+                               .get(0), (SimpleUserNature) aud.getUserNatures().get(0));
+               assertCoworkerNature(
+                               (CoworkerNature) argeoUser.getUserNatures().get(1),
+                               (CoworkerNature) aud.getUserNatures().get(1));
+
+       }
+
+       public static void assertSimpleUserNature(SimpleUserNature expected,
+                       SimpleUserNature reached) {
+               assertEquals(expected.getEmail(), reached.getEmail());
+       }
+
+       public static void assertCoworkerNature(CoworkerNature expected,
+                       CoworkerNature reached) {
+               assertEquals(expected.getMobile(), reached.getMobile());
        }
 
        public void testSeriDeserialize() {