@Test public void testUpdateCSN() throws Exception { final MultiDomainServerState state = new MultiDomainServerState(); assertTrue(state.update(dn1, csn1)); assertTrue(state.update(dn2, csn2)); assertFalse(state.update(dn1, (CSN) null)); assertFalse(state.update(dn1, csn1)); assertTrue(state.update(dn1, csn3)); final String expected = "o=test1:" + csn3 + ";o=test2:" + csn2 + ";"; assertEquals(state.toString(), expected); }
@Test(dependsOnMethods = {"testUpdateCSN"}) public void testIsEmpty() throws Exception { final MultiDomainServerState state = new MultiDomainServerState(); assertTrue(state.isEmpty()); assertTrue(state.update(dn1, csn1)); assertFalse(state.isEmpty()); assertThat(state).containsOnly(dn1); assertTrue(state.update(dn2, csn2)); assertFalse(state.isEmpty()); assertThat(state).containsOnly(dn1, dn2); state.clear(); assertTrue(state.isEmpty()); }
@Test(dependsOnMethods = {"testUpdateCSN"}) public void testEqualsTo() throws Exception { final MultiDomainServerState state1 = new MultiDomainServerState(); assertTrue(state1.update(dn1, csn3)); final MultiDomainServerState state2 = new MultiDomainServerState(); assertFalse(state1.equalsTo(state2)); assertTrue(state2.update(dn1, csn1)); assertFalse(state1.equalsTo(state2)); assertTrue(state2.update(dn1, csn3)); assertTrue(state1.equalsTo(state2)); assertTrue(state2.update(dn2, csn2)); assertFalse(state1.equalsTo(state2)); }
@Test(dependsOnMethods = {"testUpdateCSN"}) public void testRemoveCSN() throws Exception { final MultiDomainServerState state = getLastAliveCSNs(); assertNull(state.getCSN(dn3, 42)); assertFalse(state.removeCSN(dn3, csn1)); assertSame(csn1, state.getCSN(dn1, csn1.getServerId())); assertSame(csn1, state.getCSN(dn2, csn1.getServerId())); assertSame(csn2, state.getCSN(dn2, csn2.getServerId())); assertFalse(state.removeCSN(dn1, csn2)); assertSame(csn1, state.getCSN(dn1, csn1.getServerId())); assertSame(csn1, state.getCSN(dn2, csn1.getServerId())); assertSame(csn2, state.getCSN(dn2, csn2.getServerId())); assertTrue(state.removeCSN(dn2, csn1)); assertSame(csn1, state.getCSN(dn1, csn1.getServerId())); assertNull(state.getCSN(dn2, csn1.getServerId())); assertSame(csn2, state.getCSN(dn2, csn2.getServerId())); }