@Override public boolean equals(Object obj) { if (obj instanceof FeatureAdminData) { FeatureAdminData test = (FeatureAdminData) obj; return this.getFeatures().equals(test.getFeatures()) && this.getType().equals(test.getType()); } return false; }
if (!data.getFeatures().contains(CORE_FEATURE)) {
private void validateDefaultFeatures() { assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
private void validateDefaultFeatures() { assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
public boolean isAllowedFeature(Feature feature, Gadget gadget) { String container = getSafeContainerFromGadget(gadget); String gadgetUrl = getSafeGadgetUrlFromGadget(gadget); if (container == null || gadgetUrl == null) { return false; } if (!isFeatureAdminEnabled(container)) { return true; } if (!hasGadgetAdminData(container, gadgetUrl)) { // If feature administration is not enabled assume the feature is allowed return false; } GadgetAdminData gadgetAdminData = getGadgetAdminData(container, gadgetUrl); FeatureAdminData featureAdminData = gadgetAdminData.getFeatureAdminData(); String featureName = feature.getName(); switch (featureAdminData.getType()) { case BLACKLIST: return !featureAdminData.getFeatures().contains(featureName); case WHITELIST: default: return featureAdminData.getFeatures().contains(featureName); } }
@Test public void testAddFeatures() { validateDefaultFeatures(); Set<String> toAdd = Sets.newHashSet("foo", "bar", null); whitelistData.addFeatures(toAdd); blacklistData.addFeatures(toAdd); nullData.addFeatures(toAdd); defaultData.addFeatures(toAdd); Set<String> actuallyAdded = Sets.newHashSet("foo", "bar"); whitelist.addAll(actuallyAdded); blacklist.addAll(actuallyAdded); assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(actuallyAdded, nullData.getFeatures()); assertEquals(actuallyAdded, defaultData.getFeatures()); }
@Test public void testAddFeatures() { validateDefaultFeatures(); Set<String> toAdd = Sets.newHashSet("foo", "bar", null); whitelistData.addFeatures(toAdd); blacklistData.addFeatures(toAdd); nullData.addFeatures(toAdd); defaultData.addFeatures(toAdd); Set<String> actuallyAdded = Sets.newHashSet("foo", "bar"); whitelist.addAll(actuallyAdded); blacklist.addAll(actuallyAdded); assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(actuallyAdded, nullData.getFeatures()); assertEquals(actuallyAdded, defaultData.getFeatures()); }
@Test public void testClearFeatures() { validateDefaultFeatures(); whitelistData.clearFeatures(); blacklistData.clearFeatures(); nullData.clearFeatures(); defaultData.clearFeatures(); assertEquals(Sets.newHashSet(), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
@Test public void testAddFeature() { validateDefaultFeatures(); whitelistData.addFeature("foo"); blacklistData.addFeature("foo"); nullData.addFeature("foo"); defaultData.addFeature("foo"); defaultData.addFeature(null); whitelist.add("foo"); blacklist.add("foo"); assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(Sets.newHashSet("foo"), nullData.getFeatures()); assertEquals(Sets.newHashSet("foo"), defaultData.getFeatures()); }
@Test public void testAddFeature() { validateDefaultFeatures(); whitelistData.addFeature("foo"); blacklistData.addFeature("foo"); nullData.addFeature("foo"); defaultData.addFeature("foo"); defaultData.addFeature(null); whitelist.add("foo"); blacklist.add("foo"); assertEquals(whitelist, whitelistData.getFeatures()); assertEquals(blacklist, blacklistData.getFeatures()); assertEquals(Sets.newHashSet("foo"), nullData.getFeatures()); assertEquals(Sets.newHashSet("foo"), defaultData.getFeatures()); }
@Test public void testClearFeatures() { validateDefaultFeatures(); whitelistData.clearFeatures(); blacklistData.clearFeatures(); nullData.clearFeatures(); defaultData.clearFeatures(); assertEquals(Sets.newHashSet(), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
@Test public void testRemoveFeature() { validateDefaultFeatures(); whitelistData.removeFeature(TABS); blacklistData.removeFeature(SELECTION); nullData.removeFeature(TABS); defaultData.removeFeature(TABS); assertEquals(Sets.newHashSet(SETPREFS, VIEWS), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(EE), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
@Test public void testRemoveFeature() { validateDefaultFeatures(); whitelistData.removeFeature(TABS); blacklistData.removeFeature(SELECTION); nullData.removeFeature(TABS); defaultData.removeFeature(TABS); assertEquals(Sets.newHashSet(SETPREFS, VIEWS), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(EE), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
@Test public void testRemoveFeatures() { validateDefaultFeatures(); Set<String> toRemoveWhitelist = Sets.newHashSet(TABS, VIEWS); Set<String> toRemoveBlacklist = Sets.newHashSet(EE); whitelistData.removeFeatures(toRemoveWhitelist); blacklistData.removeFeatures(toRemoveBlacklist); nullData.removeFeatures(toRemoveWhitelist); defaultData.removeFeatures(toRemoveWhitelist); assertEquals(Sets.newHashSet(SETPREFS), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(SELECTION), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
@Test public void testRemoveFeatures() { validateDefaultFeatures(); Set<String> toRemoveWhitelist = Sets.newHashSet(TABS, VIEWS); Set<String> toRemoveBlacklist = Sets.newHashSet(EE); whitelistData.removeFeatures(toRemoveWhitelist); blacklistData.removeFeatures(toRemoveBlacklist); nullData.removeFeatures(toRemoveWhitelist); defaultData.removeFeatures(toRemoveWhitelist); assertEquals(Sets.newHashSet(SETPREFS), whitelistData.getFeatures()); assertEquals(Sets.newHashSet(SELECTION), blacklistData.getFeatures()); assertEquals(Sets.newHashSet(), nullData.getFeatures()); assertEquals(Sets.newHashSet(), defaultData.getFeatures()); }
.getFeatureAdminData(); Set<String> features = featureAdminData.getFeatures(); if(featureAdminData.getType() == Type.WHITELIST) {
@Test public void testSetGadgetAdminData() { assertEquals(horoscopeAdminData, enabledStore.getGadgetAdminData(DEFAULT, HOROSCOPE)); horoscopeAdminData.getFeatureAdminData().addFeature("foo_feature"); enabledStore.setGadgetAdminData(DEFAULT, HOROSCOPE, horoscopeAdminData); assertTrue(enabledStore.getGadgetAdminData(DEFAULT, HOROSCOPE).getFeatureAdminData() .getFeatures().contains("foo_feature")); assertEquals(httpAdminData, enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml")); enabledStore.setGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml", todoAdminData); assertEquals(todoAdminData, enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml")); enabledStore.setGadgetAdminData(DEFAULT, "http://example.com/gadget1.xml", null); assertNotNull(enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget1.xml")); enabledStore.setGadgetAdminData(DEFAULT, null, horoscopeAdminData); assertNull(enabledStore.getGadgetAdminData(DEFAULT, null)); }
@Test public void testSetGadgetAdminData() { assertEquals(horoscopeAdminData, enabledStore.getGadgetAdminData(DEFAULT, HOROSCOPE)); horoscopeAdminData.getFeatureAdminData().addFeature("foo_feature"); enabledStore.setGadgetAdminData(DEFAULT, HOROSCOPE, horoscopeAdminData); assertTrue(enabledStore.getGadgetAdminData(DEFAULT, HOROSCOPE).getFeatureAdminData() .getFeatures().contains("foo_feature")); assertEquals(httpAdminData, enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml")); enabledStore.setGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml", todoAdminData); assertEquals(todoAdminData, enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget2.xml")); enabledStore.setGadgetAdminData(DEFAULT, "http://example.com/gadget1.xml", null); assertNotNull(enabledStore.getGadgetAdminData(DEFAULT, "http://example.com/gadget1.xml")); enabledStore.setGadgetAdminData(DEFAULT, null, horoscopeAdminData); assertNull(enabledStore.getGadgetAdminData(DEFAULT, null)); }