/* * $Id$ * * Copyright 2009 Glencoe Software, Inc. All rights reserved. * Use is subject to license terms supplied in LICENSE.txt */ package ome.services.blitz.test.utests; import static omero.rtypes.rtime; import static omero.rtypes.rlong; import static omero.rtypes.rint; import java.sql.Timestamp; import ome.api.IContainer; import ome.api.IMetadata; import ome.parameters.Parameters; import omero.sys.ParametersI; import omero.util.IceMapper; import org.jmock.MockObjectTestCase; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; /** * Tests whether or not values are being properly passed in as expected * by {@link IContainer} and {@link IMetadata} */ @Test(groups = "ticket:67") public class ParametersIToPojoOptionsTest extends MockObjectTestCase { ParametersI p; IceMapper m = new IceMapper(); @Override @BeforeMethod protected void setUp() throws Exception { p = new ParametersI(); m = new IceMapper(); } public void testOptions() throws Exception { assertFalse(p().isLeaves()); assertFalse(p().isOrphan()); assertFalse(p().isAcquisitionData()); p.leaves(); assertTrue(p().isLeaves()); assertFalse(p().isOrphan()); assertFalse(p().isAcquisitionData()); p.orphan(); assertTrue(p().isLeaves()); assertTrue(p().isOrphan()); assertFalse(p().isAcquisitionData()); p.noOrphan(); assertTrue(p().isLeaves()); assertFalse(p().isOrphan()); assertFalse(p().isAcquisitionData()); p.acquisitionData(); assertTrue(p().isAcquisitionData()); p.noAcquisitionData(); assertFalse(p().isOrphan()); p.noLeaves(); assertFalse(p().isLeaves()); assertFalse(p().isLeaves()); assertFalse(p().isOrphan()); assertFalse(p().isAcquisitionData()); } public void testTimes() throws Exception { p.startTime(rtime(0)); assertEquals(new Timestamp(0L), p().getStartTime()); assertNull(p().getEndTime()); p.endTime(rtime(1)); assertEquals(new Timestamp(0L), p().getStartTime()); assertEquals(new Timestamp(1L), p().getEndTime()); p.startTime(null); assertNull(p().getStartTime()); assertEquals(new Timestamp(1L), p().getEndTime()); p.endTime(null); assertNull(p().getStartTime()); assertNull(p().getEndTime()); } public void testUserGroup() throws Exception { assertFalse(p().isExperimenter()); assertFalse(p().isGroup()); assertEquals(-1, p().owner()); assertEquals(-1, p().group()); assertNull(p().getExperimenter()); assertNull(p().getGroup()); p.exp(rlong(1L)); assertTrue(p().isExperimenter()); assertFalse(p().isGroup()); assertEquals(1L, p().owner()); assertEquals(-1, p().group()); assertNotNull(p().getExperimenter()); assertNull(p().getGroup()); p.grp(rlong(1L)); assertTrue(p().isExperimenter()); assertTrue(p().isGroup()); assertEquals(1L, p().owner()); assertEquals(1L, p().group()); assertNotNull(p().getExperimenter()); assertNotNull(p().getGroup()); p.allExps(); assertFalse(p().isExperimenter()); assertTrue(p().isGroup()); assertEquals(-1L, p().owner()); assertEquals(1L, p().group()); assertNull(p().getExperimenter()); assertNotNull(p().getGroup()); p.allGrps(); assertFalse(p().isExperimenter()); assertFalse(p().isGroup()); assertEquals(-1L, p().owner()); assertEquals(-1L, p().group()); assertNull(p().getExperimenter()); assertNull(p().getGroup()); } public void testPaginationAndUniqueness() throws Exception { assertFalse(p().isPagination()); assertFalse(p().isUnique()); assertNull(p().getOffset()); assertNull(p().getLimit()); p.page(0, 1); assertTrue(p().isPagination()); assertFalse(p().isUnique()); assertEquals(new Integer(0), p().getOffset()); assertEquals(new Integer(1), p().getLimit()); assertFalse(p().isUnique()); p.noPage(); assertFalse(p().isPagination()); assertFalse(p().isUnique()); assertNull(p().getOffset()); assertNull(p().getLimit()); assertFalse(p().isUnique()); p.page(rint(0), rint(1)); assertTrue(p().isPagination()); assertFalse(p().isUnique()); assertEquals(new Integer(0), p().getOffset()); assertEquals(new Integer(1), p().getLimit()); assertFalse(p().isUnique()); p.unique(); assertTrue(p().isUnique()); assertTrue(p().isPagination()); assertEquals(new Integer(0), p().getOffset()); assertEquals(new Integer(1), p().getLimit()); p.noUnique(); assertFalse(p().isUnique()); assertTrue(p().isPagination()); assertFalse(p().isUnique()); assertEquals(new Integer(0), p().getOffset()); assertEquals(new Integer(1), p().getLimit()); p.noPage(); } // ============ private Parameters p() throws Exception { return m.convert(p); } }