@Test public void testMissingConfig() throws Exception { ContainerConfig containerMissingConfig = mock(ContainerConfig.class); expect(containerMissingConfig.getContainers()) .andReturn(Arrays.asList(ContainerConfig.DEFAULT_CONTAINER)); replay(); lockedDomainService = new HashLockedDomainService(containerMissingConfig, true); assertFalse(lockedDomainService.gadgetCanRender("www.example.com", wantsLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender("www.example.com", notLocked, "default")); }
@Test public void testMultiContainer() throws Exception { ContainerConfig inheritsConfig = mock(ContainerConfig.class); expect(inheritsConfig.getContainers()) .andReturn(Arrays.asList(ContainerConfig.DEFAULT_CONTAINER, "other")); expect(inheritsConfig.getBool(isA(String.class), eq(LOCKED_DOMAIN_REQUIRED_KEY))) .andReturn(true).anyTimes(); expect(inheritsConfig.getString(isA(String.class), eq(LOCKED_DOMAIN_SUFFIX_KEY))) .andReturn("-a.example.com:8080").anyTimes(); replay(); lockedDomainService = new HashLockedDomainService(inheritsConfig, true); assertFalse(lockedDomainService.gadgetCanRender("www.example.com", wantsLocked, "other")); assertFalse(lockedDomainService.gadgetCanRender("www.example.com", notLocked, "other")); assertTrue(lockedDomainService.gadgetCanRender( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "other")); } }
@Test public void testNotEnabledForGadget() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(enabledConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("www.example.com", notLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertNull(lockedDomainService.getLockedDomainForGadget(notLocked, "default")); }
@Test public void testNotEnabledForGadget() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(enabledConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("www.example.com", notLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertNull(lockedDomainService.getLockedDomainForGadget(notLocked, "default")); }
@Test public void testNotEnabledForGadget() { replay(); lockedDomainService = new HashLockedDomainService(enabledConfig, true); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.gadgetCanRender("www.example.com", notLocked, "default")); assertFalse(lockedDomainService.gadgetCanRender( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertNull(lockedDomainService.getLockedDomainForGadget(notLocked, "default")); }
@Test public void testRequiredForContainer() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", notLocked, "default")); String target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(notLocked, "default"); assertEquals("auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", target); assertTrue(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); }
@Test public void testDisabledGlobally() { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, false, ldgen); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsBoth, "default")); lockedDomainService = new HashLockedDomainService(enabledConfig, false, ldgen); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsBoth, "default")); }
@Test public void testDisabledGlobally() { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, false); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", notLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsBoth, "default")); lockedDomainService = new HashLockedDomainService(enabledConfig, false); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", notLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.gadgetCanRender("embed.com", wantsBoth, "default")); }
@Test public void testRequiredForContainer() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", notLocked, "default")); String target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(notLocked, "default"); assertEquals("auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", target); assertTrue(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); }
@Test public void testRequiredForContainer() { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, true); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertFalse(lockedDomainService.gadgetCanRender("www.example.com", wantsLocked, "default")); assertFalse(lockedDomainService.gadgetCanRender("www.example.com", notLocked, "default")); String target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(notLocked, "default"); assertEquals("auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", target); assertTrue(lockedDomainService.gadgetCanRender( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "default")); assertFalse(lockedDomainService.gadgetCanRender( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", wantsLocked, "default")); assertTrue(lockedDomainService.gadgetCanRender( "auvn86n7q0l4ju2tq5cq8akotcjlda66-a.example.com:8080", notLocked, "default")); assertFalse(lockedDomainService.gadgetCanRender( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", notLocked, "default")); }
@Test public void testDisabledGlobally() { replay(); lockedDomainService = new HashLockedDomainService(requiredConfig, false, ldgen); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsBoth, "default")); lockedDomainService = new HashLockedDomainService(enabledConfig, false, ldgen); assertTrue(lockedDomainService.isSafeForOpenProxy("anywhere.com")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", notLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost("embed.com", wantsBoth, "default")); }
@Test public void testEnabledForGadget() { replay();
@Test public void testEnabledForGadget() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(enabledConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", wantsBoth, "default")); String target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(wantsBoth, "default"); assertEquals("h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", target); lockedDomainService.setLockSecurityTokens(true); assertTrue(lockedDomainService.isGadgetValidForHost( "lrrq12l8s5flpqcjoj1h1872lp9p93nk-a.example.com:8080", wantsSecurityToken, "default")); target = lockedDomainService.getLockedDomainForGadget(wantsSecurityToken, "default"); assertEquals("lrrq12l8s5flpqcjoj1h1872lp9p93nk-a.example.com:8080", target); // Direct includes work as before. target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(wantsBoth, "default"); assertEquals("h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", target); }
@Test public void testEnabledForGadget() throws GadgetException { replay(); lockedDomainService = new HashLockedDomainService(enabledConfig, true, ldgen); assertFalse(lockedDomainService.isSafeForOpenProxy("images-a.example.com:8080")); assertFalse(lockedDomainService.isSafeForOpenProxy("-a.example.com:8080")); assertTrue(lockedDomainService.isSafeForOpenProxy("embed.com")); assertFalse(lockedDomainService.isGadgetValidForHost("www.example.com", wantsLocked, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsLocked, "default")); assertFalse(lockedDomainService.isGadgetValidForHost( "8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", wantsSecurityToken, "default")); assertTrue(lockedDomainService.isGadgetValidForHost( "h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", wantsBoth, "default")); String target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(wantsBoth, "default"); assertEquals("h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", target); lockedDomainService.setLockSecurityTokens(true); assertTrue(lockedDomainService.isGadgetValidForHost( "lrrq12l8s5flpqcjoj1h1872lp9p93nk-a.example.com:8080", wantsSecurityToken, "default")); target = lockedDomainService.getLockedDomainForGadget(wantsSecurityToken, "default"); assertEquals("lrrq12l8s5flpqcjoj1h1872lp9p93nk-a.example.com:8080", target); // Direct includes work as before. target = lockedDomainService.getLockedDomainForGadget(wantsLocked, "default"); assertEquals("8uhr00296d2o3sfhqilj387krjmgjv3v-a.example.com:8080", target); target = lockedDomainService.getLockedDomainForGadget(wantsBoth, "default"); assertEquals("h2nlf2a2dqou2lul3n50jb4v7e8t34kc-a.example.com:8080", target); }