]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - security/runtime/org.argeo.security.core/src/test/java/org/argeo/security/json/ArgeoUserJsonTest.java
Add license headers
[lgpl/argeo-commons.git] / security / runtime / org.argeo.security.core / src / test / java / org / argeo / security / json / ArgeoUserJsonTest.java
index 02b2529bbe0303131738bea640038ac33e8ef63b..c48a9b889510d4de54d0d1b242b2c73c02b1f2c3 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright (C) 2010 Mathieu Baudier <mbaudier@argeo.org>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *         http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package org.argeo.security.json;
 
 import java.io.StringWriter;
@@ -9,11 +25,12 @@ import junit.framework.TestCase;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
 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;
@@ -43,7 +60,7 @@ public class ArgeoUserJsonTest extends TestCase {
                ArgeoUserDetails argeoUserDetails = new ArgeoUserDetails("USER",
                                natures, "PASSWORD", roles);
 
-               BasicArgeoUser argeoUser = new BasicArgeoUser(argeoUserDetails);
+               SimpleArgeoUser argeoUser = new SimpleArgeoUser(argeoUserDetails);
 
                StringWriter writer = new StringWriter();
 
@@ -61,8 +78,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() {