61c2df7006d57d359973858f057965bd965f6bd3
[policy/apex-pdp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2020 Nordix Foundation.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * SPDX-License-Identifier: Apache-2.0
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.policy.apex.domains.onap.vcpe;
22
23 import static org.awaitility.Awaitility.await;
24
25 import java.util.concurrent.TimeUnit;
26 import org.onap.policy.apex.auth.clieditor.tosca.ApexCliToscaEditorMain;
27 import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities;
28 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
29 import org.onap.policy.apex.service.engine.main.ApexMain;
30
31 /**
32  * Test the ONAP vCPE use case.
33  */
34 public class OnapVcpeStandaloneRunner {
35
36     private OnapVcpeStandaloneRunner() throws ApexException {
37
38         // @formatter:off
39         final String[] cliArgs = new String[] {
40             "-c",
41             "src/main/resources/policy/ONAPvCPEPolicyModelStandalone.apex",
42             "-ac",
43             "src/main/resources/examples/config/ONAPvCPEStandalone/ApexConfig_Sim.json",
44             "-t",
45             "src/main/resources/tosca/ToscaTemplate.json",
46             "-ot",
47             "target/classes/APEXPolicy.json"
48         };
49         // @formatter:on
50
51         new ApexCliToscaEditorMain(cliArgs);
52
53         // @formatter:off
54         final String[] apexArgs = {
55             "-p",
56             "target/classes/APEXPolicy.json"
57         };
58         // @formatter:on
59         final ApexMain apexMain = new ApexMain(apexArgs);
60
61         await().atMost(5000, TimeUnit.MILLISECONDS).until(() -> apexMain.isAlive());
62
63         // This test should be amended to start and shutdown the simulator as part of the test and not separately as
64         // is done in the gRPC test.
65         ThreadUtilities.sleep(1000000);
66         apexMain.shutdown();
67     }
68
69     public static void main(String[] args) throws ApexException {
70         new OnapVcpeStandaloneRunner();
71     }
72 }