/** * Copyright (C) Intersect 2012. * * This module contains Proprietary Information of Intersect, * and should be treated as Confidential. */ package au.org.intersect.exsite9.domain; import static au.org.intersect.exsite9.test.Assert.assertNotEquals; import static org.junit.Assert.*; import java.util.Arrays; import java.util.List; import org.junit.Test; /** * Tests {@link MetadataAttribute} */ public final class MetadataAttributeUnitTest { @Test public void testConstruction() { final String name = "name"; final MetadataAttributeValue val1 = new MetadataAttributeValue("val1"); final MetadataAttribute toTest = new MetadataAttribute(name, Arrays.asList(val1)); assertEquals(name, toTest.getName()); assertEquals(Arrays.asList(val1), toTest.getMetadataAttributeValues()); assertNull(toTest.getId()); final String newName = "someNewName"; toTest.setName(newName); assertEquals(newName, toTest.getName()); final List<MetadataAttributeValue> newValues = Arrays.asList(val1, val1); toTest.setMetadataAttributeValues(newValues); assertEquals(newValues, toTest.getMetadataAttributeValues()); final Long newId = 123l; toTest.setId(newId); assertEquals(newId, toTest.getId()); assertNotNull(toTest.toString()); } @Test public void testEqualsHashCode() { final MetadataAttribute toTest1 = new MetadataAttribute(); final MetadataAttribute toTest2 = new MetadataAttribute(); toTest1.setId(7l); toTest2.setId(7l); assertEquals(toTest1, toTest1); assertEquals(toTest1, toTest2); assertEquals(toTest2, toTest1); toTest2.setId(424l); assertNotEquals(toTest1, toTest2); assertNotEquals(toTest2, toTest1); assertFalse(toTest1.equals(new Object())); assertFalse(toTest1.equals(null)); assertFalse(toTest1.equals("some string")); assertFalse(toTest1.equals(7l)); } }