/** * Sets the RPC administration data. * * @param rpcAdminData * The RPC administration data to set. */ public void setRpcAdminData(RpcAdminData rpcAdminData) { if(rpcAdminData == null) { rpcAdminData = new RpcAdminData(); } this.rpcAdminData = rpcAdminData; }
/** * Constructor */ public GadgetAdminData() { this.featureAdminData = new FeatureAdminData(); this.rpcAdminData = new RpcAdminData(); }
/** * Creates an RpcAdminData object from a JSON object. * * @param rpcJson * the JSON object representing the RPC admin data. * @return an RpcAdminData object. * @throws JSONException thrown when the RpcAdminData object cannot be created. */ private RpcAdminData createRpcAdminData(JSONObject rpcJson) throws JSONException { RpcAdminData adminData = new RpcAdminData(); if(rpcJson.has(ADDITIONAL_RPC_SERVICE_IDS)) { JSONArray ids = rpcJson.getJSONArray(ADDITIONAL_RPC_SERVICE_IDS); for(int i = 0; i < ids.length(); i++) { adminData.addAdditionalRpcServiceId(ids.getString(i)); } } return adminData; }
/** * Constructor * * @param featureAdminData * Feature administration data for this gadget * @param rpcAdminData * RPC administration data for this gadget */ public GadgetAdminData(FeatureAdminData featureAdminData, RpcAdminData rpcAdminData) { if (featureAdminData == null) { featureAdminData = new FeatureAdminData(); } if (rpcAdminData == null) { rpcAdminData = new RpcAdminData(); } this.featureAdminData = featureAdminData; this.rpcAdminData = rpcAdminData; }
@Before public void setUp() throws Exception { populatedIds = Sets.newHashSet("rpc1", "rpc2"); empty = new RpcAdminData(); populated = new RpcAdminData(populatedIds); nullData = new RpcAdminData(null); }
@Before public void setUp() throws Exception { populatedIds = Sets.newHashSet("rpc1", "rpc2"); empty = new RpcAdminData(); populated = new RpcAdminData(populatedIds); nullData = new RpcAdminData(null); }
@Test public void testGetRpcAdminData() { assertEquals(rpcAdminData, whitelistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), blacklistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), nullInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), defaultInfo.getRpcAdminData()); }
@Test public void testGetRpcAdminData() { assertEquals(rpcAdminData, whitelistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), blacklistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), nullInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), defaultInfo.getRpcAdminData()); }
@Before public void setUp() throws Exception { whitelist = Sets.newHashSet(VIEWS, SETPREFS, TABS); blacklist = Sets.newHashSet(EE, SELECTION); whitelistFeatures = new FeatureAdminData(whitelist, Type.WHITELIST); blacklistFeatures = new FeatureAdminData(blacklist, Type.BLACKLIST); rpcAdminData = new RpcAdminData(Sets.newHashSet("rpc1", "rpc2")); whitelistData = new GadgetAdminData(whitelistFeatures, rpcAdminData); blacklistData = new GadgetAdminData(blacklistFeatures, new RpcAdminData()); gadgetMap = Maps.newHashMap(); gadgetMap.put(GADGET_URL_1, whitelistData); gadgetMap.put(GADGET_URL_2, blacklistData); gadgetMap.put(GADGET_URL_3, new GadgetAdminData()); gadgetMap.put("http://*", blacklistData); gadgetMap.put(GADGET_URL_4_WITH_PORT, whitelistData); validData = new ContainerAdminData(gadgetMap); emptyData = new ContainerAdminData(new HashMap<String, GadgetAdminData>()); nullData = new ContainerAdminData(null); defaultData = new ContainerAdminData(); }
@Test public void testEqualsObject() { assertTrue(new RpcAdminData(populatedIds).equals(populated)); assertTrue(new RpcAdminData().equals(empty)); assertTrue(new RpcAdminData().equals(nullData)); assertTrue(nullData.equals(empty)); assertFalse(populated.equals(empty)); }
@Before public void setUp() throws Exception { whitelist = Sets.newHashSet(VIEWS, SETPREFS, TABS); blacklist = Sets.newHashSet(EE, SELECTION); rpcServiceIds = Sets.newHashSet(RPC1, RPC2); whitelistFeatures = new FeatureAdminData(whitelist, Type.WHITELIST); blacklistFeatures = new FeatureAdminData(blacklist, Type.BLACKLIST); rpcAdminData = new RpcAdminData(rpcServiceIds); whitelistInfo = new GadgetAdminData(whitelistFeatures, rpcAdminData); blacklistInfo = new GadgetAdminData(blacklistFeatures, new RpcAdminData()); nullInfo = new GadgetAdminData(null, null); defaultInfo = new GadgetAdminData(); }
@Before public void setUp() throws Exception { whitelist = Sets.newHashSet(VIEWS, SETPREFS, TABS); blacklist = Sets.newHashSet(EE, SELECTION); rpcServiceIds = Sets.newHashSet(RPC1, RPC2); whitelistFeatures = new FeatureAdminData(whitelist, Type.WHITELIST); blacklistFeatures = new FeatureAdminData(blacklist, Type.BLACKLIST); rpcAdminData = new RpcAdminData(rpcServiceIds); whitelistInfo = new GadgetAdminData(whitelistFeatures, rpcAdminData); blacklistInfo = new GadgetAdminData(blacklistFeatures, new RpcAdminData()); nullInfo = new GadgetAdminData(null, null); defaultInfo = new GadgetAdminData(); }
@Test public void testEqualsObject() { assertTrue(new RpcAdminData(populatedIds).equals(populated)); assertTrue(new RpcAdminData().equals(empty)); assertTrue(new RpcAdminData().equals(nullData)); assertTrue(nullData.equals(empty)); assertFalse(populated.equals(empty)); }
@Test public void testHashCode() { assertEquals(Objects.hashCode(whitelistFeatures, rpcAdminData), whitelistInfo.hashCode()); assertEquals(Objects.hashCode(blacklistFeatures, new RpcAdminData()), blacklistInfo.hashCode()); assertEquals(Objects.hashCode(new FeatureAdminData(), new RpcAdminData()), nullInfo.hashCode()); assertEquals(Objects.hashCode(new FeatureAdminData(), new RpcAdminData()), defaultInfo.hashCode()); assertEquals(nullInfo.hashCode(), defaultInfo.hashCode()); assertFalse(blacklistInfo.hashCode() == whitelistInfo.hashCode()); }
@Test public void testHashCode() { assertEquals(Objects.hashCode(whitelistFeatures, rpcAdminData), whitelistInfo.hashCode()); assertEquals(Objects.hashCode(blacklistFeatures, new RpcAdminData()), blacklistInfo.hashCode()); assertEquals(Objects.hashCode(new FeatureAdminData(), new RpcAdminData()), nullInfo.hashCode()); assertEquals(Objects.hashCode(new FeatureAdminData(), new RpcAdminData()), defaultInfo.hashCode()); assertEquals(nullInfo.hashCode(), defaultInfo.hashCode()); assertFalse(blacklistInfo.hashCode() == whitelistInfo.hashCode()); }
@Test public void testAllowedGadgetWhitelist() throws Exception { Set<String> features = Sets.newHashSet("foo4", "foo3"); List<String> featuresAndDeps = Lists.newArrayList("foo4", "dep1", "dep2", "foo3"); List<String> allGadgetFeatures = Lists.newArrayList("dep1", "dep2", "foo3", "foo4"); List<String> gadgetRequiredFeatureNames = Lists.newArrayList("foo3", "foo4"); List<Feature> allFeatures = Lists.newArrayList( createMockFeature(gadgetRequiredFeatureNames.get(0), true), createMockFeature(gadgetRequiredFeatureNames.get(1), true)); FeatureAdminData data = new FeatureAdminData(features,Type.WHITELIST); enabledStore.getContainerAdminData(DEFAULT).addGadgetAdminData(TEST_GADGET, new GadgetAdminData(data, new RpcAdminData())); mockRegistryForFeatureAdmin(features, featuresAndDeps, allGadgetFeatures, gadgetRequiredFeatureNames); mockGadget(allFeatures); replay(); assertTrue(enabledStore.checkFeatureAdminInfo(mockGadget)); assertTrue(disabledStore.checkFeatureAdminInfo(mockGadget)); verify(); }
@Test public void testDeniedGadgetWhitelist() throws Exception { Set<String> features = Sets.newHashSet("foo4", "foo3"); List<String> featuresAndDeps = Lists.newArrayList("foo4", "dep1", "dep2", "foo3"); List<String> allGadgetFeatures = Lists.newArrayList("dep1", "dep2", "foo3", "foo4", "foo5"); List<String> gadgetRequiredFeatureNames = Lists.newArrayList("foo3", "foo4", "foo5"); List<Feature> allFeatures = Lists.newArrayList( createMockFeature(gadgetRequiredFeatureNames.get(0), true), createMockFeature(gadgetRequiredFeatureNames.get(1), true), createMockFeature(gadgetRequiredFeatureNames.get(2), true)); FeatureAdminData data = new FeatureAdminData(features,Type.WHITELIST); enabledStore.getContainerAdminData(DEFAULT).addGadgetAdminData(TEST_GADGET, new GadgetAdminData(data, new RpcAdminData())); mockRegistryForFeatureAdmin(features, featuresAndDeps, allGadgetFeatures, gadgetRequiredFeatureNames); mockGadget(allFeatures); replay(); assertFalse(enabledStore.checkFeatureAdminInfo(mockGadget)); assertTrue(disabledStore.checkFeatureAdminInfo(mockGadget)); verify(); }
@Test public void testDeniedOptionalFeature() throws Exception { Set<String> features = Sets.newHashSet("foo4", "foo3"); List<String> featuresAndDeps = Lists.newArrayList("foo4", "dep1", "dep2", "foo3"); List<String> allGadgetFeatures = Lists.newArrayList("dep1", "dep2", "foo3", "foo4"); List<String> gadgetRequiredFeatureNames = Lists.newArrayList("foo3", "foo4"); List<Feature> allFeatures = Lists.newArrayList( createMockFeature(gadgetRequiredFeatureNames.get(0), true), createMockFeature(gadgetRequiredFeatureNames.get(1), true), createMockFeature("foo5", false)); FeatureAdminData data = new FeatureAdminData(features,Type.WHITELIST); enabledStore.getContainerAdminData(DEFAULT).addGadgetAdminData(TEST_GADGET, new GadgetAdminData(data, new RpcAdminData())); mockRegistryForFeatureAdmin(features, featuresAndDeps, allGadgetFeatures, gadgetRequiredFeatureNames); mockGadget(allFeatures); replay(); assertTrue(enabledStore.checkFeatureAdminInfo(mockGadget)); assertTrue(disabledStore.checkFeatureAdminInfo(mockGadget)); verify(); }
@Test public void testSetRpcAdminData() { assertEquals(rpcAdminData, whitelistInfo.getRpcAdminData()); whitelistInfo.setRpcAdminData(null); assertEquals(new RpcAdminData(), whitelistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), blacklistInfo.getRpcAdminData()); blacklistInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, blacklistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), nullInfo.getRpcAdminData()); nullInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, nullInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), defaultInfo.getRpcAdminData()); defaultInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, defaultInfo.getRpcAdminData()); }
@Test public void testSetRpcAdminData() { assertEquals(rpcAdminData, whitelistInfo.getRpcAdminData()); whitelistInfo.setRpcAdminData(null); assertEquals(new RpcAdminData(), whitelistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), blacklistInfo.getRpcAdminData()); blacklistInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, blacklistInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), nullInfo.getRpcAdminData()); nullInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, nullInfo.getRpcAdminData()); assertEquals(new RpcAdminData(), defaultInfo.getRpcAdminData()); defaultInfo.setRpcAdminData(rpcAdminData); assertEquals(rpcAdminData, defaultInfo.getRpcAdminData()); }