X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pce%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fpce%2Fimpl%2FPceProviderTest.java;fp=pce%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fpce%2Fimpl%2FPceProviderTest.java;h=b04a75adf70936e6f3b53bba9648542a325e61db;hb=2e0247e7db43b00fcaf2b61f86d9088b60737265;hp=0000000000000000000000000000000000000000;hpb=e9cca3f8a24859b4cfadf65db6ac9a59c9a9755a;p=transportpce.git diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceProviderTest.java b/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceProviderTest.java new file mode 100644 index 000000000..b04a75adf --- /dev/null +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceProviderTest.java @@ -0,0 +1,74 @@ +/* + * Copyright © 2020 Orange Labs, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ + +package org.opendaylight.transportpce.pce.impl; + +import static org.mockito.ArgumentMatchers.anyObject; +import static org.mockito.ArgumentMatchers.eq; + +import org.eclipse.jdt.annotation.NonNull; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mockito; +import org.opendaylight.mdsal.binding.api.NotificationPublishService; +import org.opendaylight.mdsal.binding.api.RpcProviderService; +import org.opendaylight.transportpce.common.network.NetworkTransactionImpl; +import org.opendaylight.transportpce.common.network.RequestProcessor; +import org.opendaylight.transportpce.pce.service.PathComputationService; +import org.opendaylight.transportpce.pce.service.PathComputationServiceImpl; +import org.opendaylight.transportpce.pce.utils.NotificationPublishServiceMock; +import org.opendaylight.transportpce.test.AbstractTest; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev200128.TransportpcePceService; +import org.opendaylight.yangtools.concepts.ObjectRegistration; + + +public class PceProviderTest extends AbstractTest { + + private RpcProviderService rpcService; + private PathComputationService pathComputationService; + private NotificationPublishService notificationPublishService; + private NetworkTransactionImpl networkTransaction; + private RequestProcessor requestProcessor; + private ObjectRegistration rpcRegistration; + private PceProvider pceProvider; + + @Before + public void setUp() { + rpcService = Mockito.mock(RpcProviderService.class); + notificationPublishService = new NotificationPublishServiceMock(); + requestProcessor = Mockito.mock(RequestProcessor.class); + networkTransaction = new NetworkTransactionImpl(requestProcessor); + pathComputationService = new PathComputationServiceImpl(networkTransaction, notificationPublishService); + pceProvider = new PceProvider(rpcService, pathComputationService); + } + + @Test + public void testInit() { + this.rpcRegistration = new ObjectRegistration() { + @NonNull + @Override + public TransportpcePceService getInstance() { + return new PceServiceRPCImpl(pathComputationService); + } + + @Override + public void close() { + + } + }; + + + Mockito + .when(rpcService + .registerRpcImplementation(eq(TransportpcePceService.class), anyObject())) + .thenReturn(rpcRegistration); + pceProvider.init(); + pceProvider.close(); + } + +}