summaryrefslogtreecommitdiffstats
path: root/openecomp-be/backend/openecomp-sdc-security-util
AgeCommit message (Expand)AuthorFilesLines
2021-01-30Update project version 1.8.0 -> 1.8.11.8.1Joanna Jeremicz1-1/+1
2020-11-05Update master to HonoluluChrisC1-1/+1
2020-10-26Fix broken local build1.7.2vasraz1-1/+1
2020-10-20Upgrade to 1.7.2sebdet1-1/+1
2020-09-07Update version to 1.7.1sebdet1-1/+1
2020-06-25Rationalize maven dependenciesJulienBe1-8/+0
2020-06-15Fix Critical security vulnerabilityvasraz1-1/+12
2020-06-10Fix security issue in SecurityUtilNeil Derraugh6-30/+42
2020-05-19remove powermock dependency from pom xmlsRodrigo Lima1-19/+0
2020-05-11Fix security issues in SecurityUtilNeil Derraugh2-203/+0
2020-05-06Prepare for Junit5vasraz1-84/+71
2020-03-12Disable SecurityFilterOfir Sonsino1-1/+1
2020-02-02Move to version 1.6.1shrek20001-1/+1
2019-12-01Fix Security Hotspots issuesvasraz1-2/+5
2019-11-07Align Sdc warnings with VNF RequirementsBen David, Elad (eb7504)1-1/+2
2019-11-05Align logging to Onap-ELS 2019.11Ben David, Elad (eb7504)2-20/+74
2019-10-29Bump SDC version 1.6.0Ofir Sonsino1-1/+1
2019-09-10Bump SDC version 1.5.2Ofir Sonsino1-1/+1
2019-08-22unit tests - sdc-healthcheck-managerTomasz Golabek6-36/+21
2019-07-28Update SDC version 1.5.1Ofir Sonsino1-1/+1
2019-07-11Added oparent to sdc mainTomasz Golabek18-44/+364
2019-06-27Upgrade jackson-databindPiotr Darosz1-1/+1
2019-05-07Update SDC version 1.5.0Sonsino, Ofir (os0695)1-1/+1
2019-03-06Fix sonar issue in sdc/openecomp-beParshad Patel1-2/+2
2019-01-10Add restriction filter to onboardingYuli Shlosberg20-0/+1710
ess required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ package org.openecomp.sdc.be.model.operations.impl; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.when; import fj.data.Either; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.openecomp.sdc.be.dao.janusgraph.HealingJanusGraphGenericDao; import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus; import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum; import org.openecomp.sdc.be.model.DataTypeDefinition; import org.openecomp.sdc.be.model.Model; import org.openecomp.sdc.be.model.cache.ApplicationDataTypeCache; import org.openecomp.sdc.be.resources.data.DataTypeData; import org.springframework.test.context.ContextConfiguration; @ContextConfiguration("classpath:application-context-test.xml") class DataTypeOperationTest { @InjectMocks private DataTypeOperation dataTypeOperation; @Mock private ModelOperation modelOperation; @Mock private HealingJanusGraphGenericDao janusGraphGenericDao; @Mock private ApplicationDataTypeCache applicationDataTypeCache; private final String modelName = "ETSI-SDC-MODEL-TEST"; private final List<DataTypeData> dataTypesWithoutModel = new ArrayList<>(); private final List<DataTypeData> dataTypesWithModel = new ArrayList<>(); final Map<String, Map<String, DataTypeDefinition>> dataTypesMappedByModel = new HashMap<>(); final Map<String, DataTypeDefinition> allDataTypesFoundDefinitionMap = new HashMap<>(); private Model model; @BeforeEach void beforeEachInit() { MockitoAnnotations.openMocks(this); initTestData(); } @Test void getAllDataTypeNodesTest() { when(janusGraphGenericDao.getByCriteria(NodeTypeEnum.DataType, null, DataTypeData.class)) .thenReturn(Either.left(dataTypesWithoutModel)); when(modelOperation.findAllModels()).thenReturn(Collections.singletonList(model)); when(janusGraphGenericDao.getByCriteriaForModel(NodeTypeEnum.DataType, null, modelName, DataTypeData.class)) .thenReturn(Either.left(dataTypesWithModel)); final var dataTypesFound = dataTypeOperation.getAllDataTypeNodes(); assertThat(dataTypesFound.size()).isEqualTo(4); assertThat(dataTypesFound.containsAll(dataTypesWithoutModel)).isTrue(); assertThat(dataTypesFound.containsAll(dataTypesWithModel)).isTrue(); } @Test void getAllDataTypesWithModelTest() { when(janusGraphGenericDao.getByCriteria(NodeTypeEnum.DataType, null, DataTypeData.class)) .thenReturn(Either.left(Collections.emptyList())); when(modelOperation.findAllModels()).thenReturn(Collections.singletonList(model)); when(janusGraphGenericDao.getByCriteriaForModel(NodeTypeEnum.DataType, null, modelName, DataTypeData.class)) .thenReturn(Either.left(dataTypesWithModel)); final var dataTypesFound = dataTypeOperation.getAllDataTypeNodes(); assertThat(dataTypesFound.size()).isEqualTo(2); assertThat(dataTypesFound.containsAll(dataTypesWithModel)).isTrue(); assertThat(dataTypesFound.containsAll(dataTypesWithoutModel)).isFalse(); } @Test void getAllDataTypeNodesWithValidationErrorTest() { when(janusGraphGenericDao.getByCriteria(NodeTypeEnum.DataType, null, DataTypeData.class)) .thenReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)); final var dataTypesFound = dataTypeOperation.getAllDataTypeNodes(); assertThat(dataTypesFound.isEmpty()).isTrue(); } @Test void getAllDataTypesWithModelWithValidationErrorTest() { when(janusGraphGenericDao.getByCriteria(NodeTypeEnum.DataType, null, DataTypeData.class)) .thenReturn(Either.left(Collections.emptyList())); when(modelOperation.findAllModels()).thenReturn(Collections.singletonList(model)); when(janusGraphGenericDao.getByCriteriaForModel(NodeTypeEnum.DataType, null, modelName, DataTypeData.class)) .thenReturn(Either.right(JanusGraphOperationStatus.GENERAL_ERROR)); final var dataTypesFound = dataTypeOperation.getAllDataTypeNodes(); assertThat(dataTypesFound).isEmpty(); } @Test void mapDataTypesDefinitionByModelTest() { final var allDataTypesMappedByModel = dataTypeOperation.mapDataTypesDefinitionByModel(allDataTypesFoundDefinitionMap); assertThat(allDataTypesMappedByModel.get(modelName).size()).isEqualTo(2); assertThat(allDataTypesMappedByModel.get(null)).isNotEmpty(); } private void initTestData() { model = new Model(modelName); final String TEST_DATA_TYPE_001 = "test.data.type001"; final String TEST_DATA_TYPE_002 = "test.data.type002"; final String TEST_DATA_TYPE_003 = "test.data.type003"; final String TEST_DATA_TYPE_004 = "test.data.type004"; final DataTypeData dataTypeData1 = createDataTypeData("test.data.type1", TEST_DATA_TYPE_001, 101L, 101L, null); final DataTypeData dataTypeData2 = createDataTypeData("test.data.type2", TEST_DATA_TYPE_002, 101L, 1002L, null); dataTypesWithoutModel.add(dataTypeData1); dataTypesWithoutModel.add(dataTypeData2); final DataTypeData dataTypeWithModel1 = createDataTypeData("test.data.type1", TEST_DATA_TYPE_003, 101L, 101L, modelName); final DataTypeData dataTypeWithModel2 = createDataTypeData("test.data.type2", TEST_DATA_TYPE_004, 101L, 1002L, modelName); dataTypesWithModel.add(dataTypeWithModel1); dataTypesWithModel.add(dataTypeWithModel2); allDataTypesFoundDefinitionMap.put(TEST_DATA_TYPE_001, createDataTypeDefinition("test.data.type1", TEST_DATA_TYPE_001, 101L, 101L, null)); allDataTypesFoundDefinitionMap.put(TEST_DATA_TYPE_002, createDataTypeDefinition("test.data.type2", TEST_DATA_TYPE_002, 101L, 101L, null)); allDataTypesFoundDefinitionMap.put(TEST_DATA_TYPE_003, createDataTypeDefinition("test.data.type1", TEST_DATA_TYPE_003, 101L, 101L, modelName)); allDataTypesFoundDefinitionMap.put(TEST_DATA_TYPE_004, createDataTypeDefinition("test.data.type2", TEST_DATA_TYPE_004, 101L, 101L, modelName)); dataTypesMappedByModel.put(null, allDataTypesFoundDefinitionMap); } private DataTypeData createDataTypeData(final String name, final String uniqueId, final long creationTime, final long modificationTime, final String model) { final DataTypeData dataTypeData = new DataTypeData(); dataTypeData.setDataTypeDataDefinition(createDataTypeDefinition(name, uniqueId, creationTime, modificationTime, model)); return dataTypeData; } private DataTypeDefinition createDataTypeDefinition(final String name, final String uniqueId, final long creationTime, final long modificationTime, String model) { final DataTypeDefinition dataTypeDefinition = new DataTypeDefinition(); dataTypeDefinition.setName(name); dataTypeDefinition.setUniqueId(uniqueId); dataTypeDefinition.setCreationTime(creationTime); dataTypeDefinition.setModificationTime(modificationTime); dataTypeDefinition.setModel(model); return dataTypeDefinition; } }