package org.infinispan.distribution; import org.testng.annotations.Test; @Test(groups = "unit", testName = "distribution.MagicKeyTest") public class MagicKeyTest extends BaseDistFunctionalTest<Object, String> { public void testMagicKeys() { MagicKey k1 = new MagicKey(c1, c2); assert getCacheTopology(c1).isWriteOwner(k1); assert getCacheTopology(c2).isWriteOwner(k1); assert !getCacheTopology(c3).isWriteOwner(k1); assert !getCacheTopology(c4).isWriteOwner(k1); MagicKey k2 = new MagicKey(c2, c3); assert !getCacheTopology(c1).isWriteOwner(k2); assert getCacheTopology(c2).isWriteOwner(k2); assert getCacheTopology(c3).isWriteOwner(k2); assert !getCacheTopology(c4).isWriteOwner(k2); MagicKey k3 = new MagicKey(c3, c4); assert !getCacheTopology(c1).isWriteOwner(k3); assert !getCacheTopology(c2).isWriteOwner(k3); assert getCacheTopology(c3).isWriteOwner(k3); assert getCacheTopology(c4).isWriteOwner(k3); MagicKey k4 = new MagicKey(c4, c1); assert getCacheTopology(c1).isWriteOwner(k4); assert !getCacheTopology(c2).isWriteOwner(k4); assert !getCacheTopology(c3).isWriteOwner(k4); assert getCacheTopology(c4).isWriteOwner(k4); } }