+ @Test
+ @Transactional
+ public void downloadPdpGroupsTest() throws JsonSyntaxException, IOException, InterruptedException, ParseException {
+ PolicyModel policyModel1 = new PolicyModel("onap.policies.monitoring.test", null, "1.0.0");
+ policyModelsRepository.saveAndFlush(policyModel1);
+ PolicyModel policyModel2 = new PolicyModel("onap.policies.controlloop.Operational", null, "1.0.0");
+ policyModelsRepository.saveAndFlush(policyModel2);
+
+ policyController.downloadPdpGroups();
+
+ List<PolicyModel> policyModelsList = policyModelsRepository.findAll();
+ assertThat(policyModelsList.size()).isGreaterThanOrEqualTo(2);
+
+ PolicyModel policy1 = policyModelsRepository
+ .getOne(new PolicyModelId("onap.policies.monitoring.test", "1.0.0"));
+ PolicyModel policy2 = policyModelsRepository
+ .getOne(new PolicyModelId("onap.policies.controlloop.Operational", "1.0.0"));
+
+ String expectedRes1 = "{\"supportedPdpGroups\":[{\"monitoring\":[\"xacml\"]}]}";
+ JsonObject expectedJson1 = JsonUtils.GSON.fromJson(expectedRes1, JsonObject.class);
+ assertThat(policy1.getPolicyPdpGroup()).isEqualTo(expectedJson1);
+ String expectedRes2 = "{\"supportedPdpGroups\":[{\"controlloop\":[\"apex\",\"drools\"]}]}";
+ JsonObject expectedJson2 = JsonUtils.GSON.fromJson(expectedRes2, JsonObject.class);
+ assertThat(policy2.getPolicyPdpGroup()).isEqualTo(expectedJson2);
+
+ }