package org.exoplatform.commons.scope; import org.exoplatform.component.test.AbstractKernelTest; import org.exoplatform.component.test.ConfigurationUnit; import org.exoplatform.component.test.ConfiguredBy; import org.exoplatform.component.test.ContainerScope; /** @author <a href="mailto:julien.viet@exoplatform.com">Julien Viet</a> */ @ConfiguredBy({ @ConfigurationUnit(scope = ContainerScope.PORTAL, path = "conf/exo.portal.component.test.jcr-configuration.xml"), @ConfigurationUnit(scope = ContainerScope.PORTAL, path = "org/exoplatform/commons/scope/configuration.xml") }) public class ScopeTestCase extends AbstractKernelTest { public void testKey() { ScopedKey<String> k1 = ScopedKey.create("foo", "bar"); assertEquals("foo", k1.getScope()); assertEquals("bar", k1.getKey()); // ScopedKey<String> k2 = ScopedKey.create("foo", "bar"); assertEquals("foo", k1.getScope()); assertEquals("bar", k1.getKey()); // ScopedKey<String> k3 = ScopedKey.create("juu", "bar"); assertEquals("juu", k3.getScope()); assertEquals("bar", k3.getKey()); // ScopedKey<String> k4 = ScopedKey.create("juu", "daa"); assertEquals("juu", k4.getScope()); assertEquals("daa", k4.getKey()); // assertTrue(k1.equals(k2)); assertTrue(k2.equals(k1)); assertEquals(k1.hashCode(), k2.hashCode()); assertFalse(k1.equals(k3)); assertFalse(k3.equals(k1)); assertFalse(k3.equals(k4)); assertFalse(k4.equals(k3)); } public void testLifeCycle() { assertNull(ScopeManager.getCurrentScope()); ScopedKey<String> key = ScopedKey.create("foo"); assertEquals("", key.getScope()); assertEquals("foo", key.getKey()); // assertNull(ScopeManager.getCurrentScope()); key = ScopedKey.create("foo"); assertEquals("", key.getScope()); assertEquals("foo", key.getKey()); // begin(); // assertEquals("repository", ScopeManager.getCurrentScope()); key = ScopedKey.create("foo"); assertEquals("repository", key.getScope()); assertEquals("foo", key.getKey()); // end(); // assertNull(ScopeManager.getCurrentScope()); key = ScopedKey.create("foo"); assertEquals("", key.getScope()); assertEquals("foo", key.getKey()); } }