From d0b3048fe93a50fdaa2ad34a166794abdc902580 Mon Sep 17 00:00:00 2001 From: hekeguang Date: Thu, 8 Sep 2022 11:22:29 +0800 Subject: Add intent base operation process code . Issue-ID: USECASEUI-696 Change-Id: Iff7e561c6bbc1437ba3b002875c3e120504e95dd Signed-off-by: hekeguang --- .../intentModule/KnowledgeModule.java | 3 - .../FormatIntentInputDecisionModuleTest.java | 92 ++++++++++++++++ .../FormatIntentInputKnowledgeModuleTest.java | 121 +++++++++++++++++++++ .../IntentDefinitionServiceTest.java | 95 ++++++++++++++++ .../IntentDetectionServiceTest.java | 88 +++++++++++++++ .../IntentDistributionServiceTest.java | 93 ++++++++++++++++ .../IntentInvestigationServiceTest.java | 93 ++++++++++++++++ .../IntentOperationServiceTest.java | 89 +++++++++++++++ .../IntentProcessServiceTest.java | 95 ++++++++++++++++ .../src/test/resources/intentdb-test-init.sql | 8 ++ 10 files changed, 774 insertions(+), 3 deletions(-) create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputDecisionModuleTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputKnowledgeModuleTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDefinitionServiceTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDetectionServiceTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDistributionServiceTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentInvestigationServiceTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentOperationServiceTest.java create mode 100644 intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentProcessServiceTest.java (limited to 'intentanalysis') diff --git a/intentanalysis/src/main/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentModule/KnowledgeModule.java b/intentanalysis/src/main/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentModule/KnowledgeModule.java index 02d467a..bce9c95 100644 --- a/intentanalysis/src/main/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentModule/KnowledgeModule.java +++ b/intentanalysis/src/main/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentModule/KnowledgeModule.java @@ -19,10 +19,7 @@ import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.onap.usecaseui.intentanalysis.bean.models.*; import org.onap.usecaseui.intentanalysis.service.IntentService; -import org.onap.usecaseui.intentanalysis.service.impl.IntentServiceImpl; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; -import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputDecisionModuleTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputDecisionModuleTest.java new file mode 100644 index 0000000..ea1717f --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputDecisionModuleTest.java @@ -0,0 +1,92 @@ +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.formatintentinputMgt.formatintentinputModule; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.context.ApplicationContext; +import org.springframework.test.context.junit4.SpringRunner; + +import java.util.ArrayList; +import java.util.List; +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class FormatIntentInputDecisionModuleTest { + @InjectMocks + FormatIntentInputDecisionModule formatIntentInputDecisionModule; + @Mock + private ApplicationContext applicationContext; + IntentGoalBean intentGoalBean = new IntentGoalBean(); + Intent intent = new Intent(); + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intent.setIntentExpectations(expectationList); + intent.setIntentExpectations(expectationList); + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + @Test + public void testExploreIntentHandlers(){ + IntentManagementFunction intentManagementFunction = formatIntentInputDecisionModule.exploreIntentHandlers(intentGoalBean); + Assert.assertTrue(true); + } + @Test + public void testFindHandler(){ + formatIntentInputDecisionModule.findHandler(intentGoalBean); + Assert.assertTrue(true); + } +} \ No newline at end of file diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputKnowledgeModuleTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputKnowledgeModuleTest.java new file mode 100644 index 0000000..eae144e --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/formatintentinputMgt/formatintentinputModule/FormatIntentInputKnowledgeModuleTest.java @@ -0,0 +1,121 @@ +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.formatintentinputMgt.formatintentinputModule; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.enums.OperatorType; +import org.onap.usecaseui.intentanalysis.bean.models.*; +import org.onap.usecaseui.intentanalysis.service.IntentService; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import java.util.ArrayList; +import java.util.List; + +import static org.mockito.ArgumentMatchers.anyString; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class FormatIntentInputKnowledgeModuleTest { + @InjectMocks + FormatIntentInputKnowledgeModule formatIntentInputKnowledgeModule; + + @Mock + IntentService intentService; + IntentGoalBean intentGoalBean = new IntentGoalBean(); + Intent intent = new Intent(); + + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + List expectationTargets = new ArrayList<>(); + ExpectationTarget expectationTarget = new ExpectationTarget(); + expectationTarget.setTargetName("aaaa"); + expectationTargets.add(expectationTarget); + delivery.setExpectationTargets(expectationTargets); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + + List expectationTarget2 = new ArrayList<>(); + ExpectationTarget expectationTargetAssu = new ExpectationTarget(); + expectationTargetAssu.setTargetName("aaaa"); + expectationTarget2.add(expectationTargetAssu); + assurance.setExpectationTargets(expectationTarget2); + + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intent.setIntentExpectations(expectationList); + intent.setIntentExpectations(expectationList); + + List intentContexts = new ArrayList<>(); + Context context = new Context(); + context.setContextName("owninfo"); + + List conditionList = new ArrayList<>();//ownerName = formatIntentInputManagementFunction" + Condition condition = new Condition(); + condition.setConditionName("ownerName"); + condition.setOperator(OperatorType.EQUALTO); + condition.setConditionValue("formatIntentInputManagementFunction"); + conditionList.add(condition); + context.setContextConditions(conditionList); + intentContexts.add(context); + intent.setIntentContexts(intentContexts); + + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + + @Test + public void testFormatIntentInputKnowledgeModule() { + List list = new ArrayList<>(); + list.add(intent); + Mockito.when(intentService.getIntentByName(anyString())).thenReturn(list); + formatIntentInputKnowledgeModule.intentCognition(intent); + Assert.assertTrue(true); + } +} diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDefinitionServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDefinitionServiceTest.java new file mode 100644 index 0000000..1394f50 --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDefinitionServiceTest.java @@ -0,0 +1,95 @@ +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.CLLBusinessIntentManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentDefinitionServiceTest { + + @InjectMocks + IntentDefinitionService intentDefinitionService; + + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "CLLBusinessIntentManagementFunction") + private CLLBusinessIntentManagementFunction cllBusinessIntentManagementFunction; + Intent intent = new Intent(); + + @Before + public void before() throws Exception { + + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + } + + @Test + public void testDefinitionPorcess() { + intentDefinitionService.setIntentRole(intentOwner, cllBusinessIntentManagementFunction); + LinkedHashMap map = new LinkedHashMap<>(); + IntentGoalBean gb = new IntentGoalBean(intent, IntentGoalType.CREATE); + map.put(gb, new IntentManagementFunction()); + intentDefinitionService.definitionPorcess(map.entrySet().iterator().next()); + Assert.assertTrue(true); + } +} \ No newline at end of file diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDetectionServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDetectionServiceTest.java new file mode 100644 index 0000000..fa67cf2 --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDetectionServiceTest.java @@ -0,0 +1,88 @@ + +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.CLLBusinessIntentManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentDetectionServiceTest { + @InjectMocks + IntentDetectionService intentDetectionService; + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "CLLBusinessIntentManagementFunction") + private CLLBusinessIntentManagementFunction cllBusinessIntentManagementFunction; + Intent intent = new Intent(); + + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + } + + @Test + public void testDetectionProcess() { + intentDetectionService.setIntentRole(intentOwner, null); + intentDetectionService.detectionProcess(intent); + Assert.assertTrue(true); + + } +} \ No newline at end of file diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDistributionServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDistributionServiceTest.java new file mode 100644 index 0000000..882770c --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentDistributionServiceTest.java @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.CLLBusinessIntentManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentDistributionServiceTest { + @InjectMocks + IntentDistributionService IntentDistributionService; + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "CLLBusinessIntentManagementFunction") + private CLLBusinessIntentManagementFunction cllBusinessIntentManagementFunction; + Intent intent = new Intent(); + IntentGoalBean intentGoalBean = new IntentGoalBean(); + + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + @Test + public void testIntentDistribution() { + IntentDistributionService.setIntentRole(intentOwner, cllBusinessIntentManagementFunction); + LinkedHashMap map = new LinkedHashMap<>(); + map.put(intentGoalBean,cllBusinessIntentManagementFunction); + IntentDistributionService.distributionProcess(map.entrySet().iterator().next()); + Assert.assertTrue(true); + } +} diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentInvestigationServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentInvestigationServiceTest.java new file mode 100644 index 0000000..ea0bf7a --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentInvestigationServiceTest.java @@ -0,0 +1,93 @@ + +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.CLLBusinessIntentManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentInvestigationServiceTest { + @InjectMocks + IntentInvestigationService intentInvestigationService; + + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "CLLBusinessIntentManagementFunction") + private CLLBusinessIntentManagementFunction cllBusinessIntentManagementFunction; + Intent intent = new Intent(); + IntentGoalBean intentGoalBean = new IntentGoalBean(); + + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intent.setIntentExpectations(expectationList); + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + @Test + public void testDetectionProcess() { + intentInvestigationService.setIntentRole(intentOwner, null); + intentInvestigationService.investigationProcess(intentGoalBean); + Assert.assertTrue(true); + } +} diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentOperationServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentOperationServiceTest.java new file mode 100644 index 0000000..f2167e6 --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentOperationServiceTest.java @@ -0,0 +1,89 @@ +/* + * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless 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. + * + */ + +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.formatintentinputMgt.FormatIntentInputManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentOperationServiceTest { + @InjectMocks + IntentOperationService intentOperationService; + + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "formatIntentInputManagementFunction") + private FormatIntentInputManagementFunction formatIntentInputManagementFunction; + IntentGoalBean intentGoalBean = new IntentGoalBean(); + Intent intent = new Intent(); + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + @Test + public void testIntentOperation() { + intentOperationService.setIntentRole(intentOwner, formatIntentInputManagementFunction); + intentOperationService.operationProcess(intent); + Assert.assertTrue(true); + } +} \ No newline at end of file diff --git a/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentProcessServiceTest.java b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentProcessServiceTest.java new file mode 100644 index 0000000..7836793 --- /dev/null +++ b/intentanalysis/src/test/java/org/onap/usecaseui/intentanalysis/intentBaseService/intentProcessService/IntentProcessServiceTest.java @@ -0,0 +1,95 @@ +package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.onap.usecaseui.intentanalysis.IntentAnalysisApplicationTests; +import org.onap.usecaseui.intentanalysis.bean.enums.ExpectationType; +import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType; +import org.onap.usecaseui.intentanalysis.bean.enums.ObjectType; +import org.onap.usecaseui.intentanalysis.bean.models.Expectation; +import org.onap.usecaseui.intentanalysis.bean.models.ExpectationObject; +import org.onap.usecaseui.intentanalysis.bean.models.Intent; +import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean; +import org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.CLLBusinessIntentManagementFunction; +import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction; +import org.onap.usecaseui.intentanalysis.service.IntentService; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.when; + +@SpringBootTest(classes = IntentAnalysisApplicationTests.class) +@RunWith(SpringRunner.class) +public class IntentProcessServiceTest { + @InjectMocks + IntentProcessService intentProcessService; + @Resource(name = "formatIntentInputManagementFunction") + private IntentManagementFunction intentOwner; + @Resource(name = "CLLBusinessIntentManagementFunction") + private CLLBusinessIntentManagementFunction cllBusinessIntentManagementFunction; + Intent intent = new Intent(); + IntentGoalBean intentGoalBean = new IntentGoalBean(); + @Mock + IntentDetectionService intentDetectionService; + @Mock + IntentInvestigationService intentInvestigationService; + @Mock + IntentDefinitionService intentDefinitionService; + @Mock + IntentDistributionService intentDistributionService; + @Mock + IntentOperationService intentOperationService; + @Mock + IntentService intentService; + + + @Before + public void before() throws Exception { + intent.setIntentName("cllIntent"); + intent.setIntentId("12345"); + List expectationList = new ArrayList<>(); + + Expectation delivery = new Expectation(); + delivery.setExpectationId("12345-delivery"); + delivery.setExpectationName("deliveryExpectation"); + delivery.setExpectationType(ExpectationType.DELIVERY); + ExpectationObject expectationObject = new ExpectationObject(); + expectationObject.setObjectType(ObjectType.OBJECT1); + //expetationTarget Context FulfilmentInfo is empty + delivery.setExpectationObject(expectationObject); + expectationList.add(delivery); + + Expectation assurance = new Expectation(); + assurance.setExpectationId("12345-assurance"); + assurance.setExpectationName("assuranceExpectation"); + assurance.setExpectationType(ExpectationType.ASSURANCE); + ExpectationObject expectationObject1 = new ExpectationObject(); + expectationObject1.setObjectType(ObjectType.OBJECT2); + //expetationTarget Context FulfilmentInfo is empty + assurance.setExpectationObject(expectationObject1); + expectationList.add(assurance); + + intent.setIntentExpectations(expectationList); + intentGoalBean.setIntent(intent); + intentGoalBean.setIntentGoalType(IntentGoalType.CREATE); + } + @Test + public void testIntentProcess() { + intentProcessService.setIntentRole(intentOwner,cllBusinessIntentManagementFunction); + LinkedHashMap intentMap = new LinkedHashMap<>(); + intentMap.put(intentGoalBean,cllBusinessIntentManagementFunction); + when(intentInvestigationService.investigationProcess(any())).thenReturn(intentMap); + intentProcessService.intentProcess(intent); + Assert.assertTrue(true); + } +} \ No newline at end of file diff --git a/intentanalysis/src/test/resources/intentdb-test-init.sql b/intentanalysis/src/test/resources/intentdb-test-init.sql index 211e1cb..3a60df7 100644 --- a/intentanalysis/src/test/resources/intentdb-test-init.sql +++ b/intentanalysis/src/test/resources/intentdb-test-init.sql @@ -78,3 +78,11 @@ create table if not exists condition parent_id varchar(255) ); +create table if not exists intent_management_function_reg_info( + imfr_info_id varchar(255) primary key, + imfr_info_description varchar(255), + support_model varchar(255), + handle_name varchar(255), + intent_function_type varchar(255) + ); + -- cgit 1.2.3-korg