/******************************************************************************* * Copyright (c) 2010-2014 SAP AG and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * SAP AG - initial API and implementation *******************************************************************************/ package org.eclipse.skalli.model; import static org.junit.Assert.*; import java.util.Map; import org.eclipse.skalli.testutil.PropertyTestUtil; import org.junit.Test; @SuppressWarnings("nls") public class UserTest { @Test public void testPropertyDefinitions() throws Exception { Map<String, Object> values = PropertyTestUtil.getValues(); values.put(User.PROPERTY_USERID, "homer"); values.put(User.PROPERTY_FIRSTNAME, "Homer"); values.put(User.PROPERTY_LASTNAME, "Simpson"); values.put(User.PROPERTY_EMAIL, "homer@springfield.net"); values.put(User.PROPERTY_DISPLAY_NAME, "Homer Simpson"); values.put(User.PROPERTY_TELEPHONE, "5551234"); values.put(User.PROPERTY_MOBILE, "5555678"); values.put(User.PROPERTY_ROOM, "reactor control"); values.put(User.PROPERTY_LOCATION, "Springfield"); values.put(User.PROPERTY_DEPARTMENT, "reactor stuff"); values.put(User.PROPERTY_COMPANY, "Springfield Nuclear Power Plant"); values.put(User.PROPERTY_SIP, "homer@springfield.net"); Map<Class<?>, String[]> requiredProperties = PropertyTestUtil.getRequiredProperties(); PropertyTestUtil.checkPropertyDefinitions(User.class, requiredProperties, values); } @Test public void testUnknown() throws Exception { User unknown = new User("homer"); assertTrue(unknown.isUnknown()); assertEquals(User.UNKNOWN, unknown.getFirstname()); assertEquals(User.UNKNOWN, unknown.getLastname()); assertEquals(User.UNKNOWN, unknown.getEmail()); assertFalse(unknown.hasFirstname()); assertFalse(unknown.hasLastname()); assertFalse(unknown.hasEmail()); User user = new User("homer", "Homer", "Simpson", "homer@springfield.net"); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertTrue(user.hasLastname()); assertTrue(user.hasEmail()); user = new User("homer", "Homer", "Simpson", null); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertTrue(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", "Homer", "Simpson", User.UNKNOWN); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertTrue(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", null, "Simpson", null); assertFalse(user.isUnknown()); assertFalse(user.hasFirstname()); assertTrue(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", "Homer", null, null); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertFalse(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", "Homer", null, User.UNKNOWN); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertFalse(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", "Homer", User.UNKNOWN, null); assertFalse(user.isUnknown()); assertTrue(user.hasFirstname()); assertFalse(user.hasLastname()); assertFalse(user.hasEmail()); user = new User("homer", null, null, "homer@springfield.net"); assertFalse(user.isUnknown()); assertFalse(user.hasFirstname()); assertFalse(user.hasLastname()); assertTrue(user.hasEmail()); user = new User("homer", User.UNKNOWN, User.UNKNOWN, "homer@springfield.net"); assertFalse(user.isUnknown()); assertFalse(user.hasFirstname()); assertFalse(user.hasLastname()); assertTrue(user.hasEmail()); user = new User(); assertFalse(user.isUnknown()); assertFalse(unknown.hasFirstname()); assertFalse(unknown.hasLastname()); assertFalse(unknown.hasEmail()); } @Test public void testGetDisplayName() throws Exception { User user = new User("homer"); assertEquals("homer", user.getDisplayName()); user = new User("homer", "Homer", "Simpson", "homer@springfield.net"); assertEquals("Homer Simpson", user.getDisplayName()); user = new User("homer", "Homer", "Simpson", null); assertEquals("Homer Simpson", user.getDisplayName()); user = new User("homer", "Homer", null, "homer@springfield.net"); assertEquals("Homer", user.getDisplayName()); user = new User("homer", null, "Simpson", "homer@springfield.net"); assertEquals("Simpson", user.getDisplayName()); user = new User("homer", null, null, "homer@springfield.net"); assertEquals("homer@springfield.net", user.getDisplayName()); user = new User("homer", User.UNKNOWN, User.UNKNOWN, "homer@springfield.net"); assertEquals("homer@springfield.net", user.getDisplayName()); user = new User(); assertEquals("Anonymous", user.getDisplayName()); user = new User(null); assertEquals("Anonymous", user.getDisplayName()); user = new User(""); assertEquals("Anonymous", user.getDisplayName()); } @Test public void testCompare() throws Exception { User user1 = new User("homer", "Homer", "Simpson", null); User user2 = new User("burns", "Mr.", "Burns", null); assertTrue(user1.compareTo(user2) > 0); assertTrue(user2.compareTo(user1) < 0); assertTrue(user1.compareTo(user1) == 0); assertTrue(user2.compareTo(user2) == 0); user2 = new User("marge", "Marge", "Simpson", null); assertTrue(user1.compareTo(user2) < 0); assertTrue(user2.compareTo(user1) > 0); user2 = new User("homer", "Marge", "Simpson", null); assertTrue(user1.compareTo(user2) < 0); assertTrue(user2.compareTo(user1) > 0); user2 = new User("homer1", "Homer", "Simpson", null); assertTrue(user1.compareTo(user2) < 0); assertTrue(user2.compareTo(user1) > 0); } }