2 * Copyright © 2020 Orange Labs, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.transportpce.pce.networkanalyzer;
10 import java.util.concurrent.ExecutionException;
11 import org.junit.Assert;
12 import org.junit.Before;
13 import org.junit.Test;
14 import org.opendaylight.transportpce.common.network.NetworkTransactionImpl;
15 import org.opendaylight.transportpce.common.network.RequestProcessor;
16 import org.opendaylight.transportpce.pce.constraints.PceConstraintsCalc;
17 import org.opendaylight.transportpce.pce.utils.PceTestData;
18 import org.opendaylight.transportpce.pce.utils.PceTestUtils;
19 import org.opendaylight.transportpce.pce.utils.TransactionUtils;
20 import org.opendaylight.transportpce.test.AbstractTest;
21 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev200128.PathComputationRequestInput;
24 public class PceCalculationTest extends AbstractTest {
26 private PceCalculation pceCalculation;
27 private PceConstraintsCalc pceConstraintsCalc;
28 private PceResult pceResult = new PceResult();
32 public void setUp() throws ExecutionException, InterruptedException {
33 pceResult.setRC("200");
34 PceTestUtils.writeNetworkIntoDataStore(this.getDataBroker(), this.getDataStoreContextUtil(),
35 TransactionUtils.getNetworkForSpanLoss());
37 pceConstraintsCalc = new PceConstraintsCalc(PceTestData.getPCERequest(),
38 new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker())));
40 pceCalculation = new PceCalculation(
41 PceTestData.getPCERequest(),
42 new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker())),
43 pceConstraintsCalc.getPceHardConstraints(),
44 pceConstraintsCalc.getPceSoftConstraints(),
49 public void testPceCalculationValues() {
51 pceCalculation.retrievePceNetwork();
52 Assert.assertEquals("100GE", pceCalculation.getServiceType());
53 Assert.assertNotNull(pceCalculation.getReturnStructure());
55 Assert.assertNull(pceCalculation.getaendPceNode());
56 Assert.assertNull(pceCalculation.getzendPceNode());
60 public void testPceCalculationValues2() {
62 pceCalculation = new PceCalculation(
63 PceTestData.getPathComputationRequestInputWithCoRoutingOrGeneral(),
64 new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker())),
65 pceConstraintsCalc.getPceHardConstraints(),
66 pceConstraintsCalc.getPceSoftConstraints(),
68 pceCalculation.retrievePceNetwork();
69 Assert.assertEquals("100GE", pceCalculation.getServiceType());
70 Assert.assertNotNull(pceCalculation.getReturnStructure());
72 Assert.assertNull(pceCalculation.getaendPceNode());
73 Assert.assertNull(pceCalculation.getzendPceNode());
77 public void testPceCalculationValues42() {
79 PathComputationRequestInput input = PceTestData.getPathComputationRequestInputWithCoRoutingOrGeneral2();
80 pceConstraintsCalc = new PceConstraintsCalc(input,
81 new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker())));
83 pceCalculation = new PceCalculation(
84 PceTestData.getPCE_test3_request_54(),
85 new NetworkTransactionImpl(new RequestProcessor(this.getDataBroker())),
86 pceConstraintsCalc.getPceHardConstraints(),
87 pceConstraintsCalc.getPceSoftConstraints(),
90 pceCalculation.retrievePceNetwork();
91 // Assert.assertEquals("100GE", pceCalculation.getServiceType());
92 Assert.assertNotNull(pceCalculation.getReturnStructure());
94 Assert.assertNull(pceCalculation.getaendPceNode());
95 Assert.assertNull(pceCalculation.getzendPceNode());