26079c3855f56355c25074836e33d5df686bbee5
[openflowplugin.git] / openflowjava / openflow-protocol-impl / src / test / java / org / opendaylight / openflowjava / protocol / impl / core / PublishingChannelInitializerFactoryTest.java
1 /*
2  * Copyright (c) 2014 Brocade Communications Systems, Inc. and others.  All rights reserved.
3  *
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
7  */
8
9 package org.opendaylight.openflowjava.protocol.impl.core;
10
11 import static org.junit.Assert.assertNotNull;
12
13 import com.google.common.collect.Lists;
14 import org.junit.Before;
15 import org.junit.Test;
16 import org.junit.runner.RunWith;
17 import org.mockito.Mock;
18 import org.mockito.junit.MockitoJUnitRunner;
19 import org.opendaylight.openflowjava.protocol.api.connection.SwitchConnectionHandler;
20 import org.opendaylight.openflowjava.protocol.api.connection.TlsConfiguration;
21 import org.opendaylight.openflowjava.protocol.api.connection.TlsConfigurationImpl;
22 import org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializationFactory;
23 import org.opendaylight.openflowjava.protocol.impl.serialization.SerializationFactory;
24 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.config.rev140630.KeystoreType;
25 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.config.rev140630.PathType;
26
27 /**
28  * Unit tests for ChannelInitializerFactory.
29  *
30  * @author jameshall
31  */
32 @RunWith(MockitoJUnitRunner.class)
33 public class PublishingChannelInitializerFactoryTest {
34
35     TlsConfiguration tlsConfiguration ;
36     ChannelInitializerFactory factory;
37     private final long switchIdleTimeOut = 60;
38     @Mock SwitchConnectionHandler switchConnectionHandler ;
39     @Mock SerializationFactory serializationFactory;
40     @Mock DeserializationFactory deserializationFactory ;
41
42     /**
43      * Sets up test environment.
44      */
45     @Before
46     public void setUp() {
47         factory = new ChannelInitializerFactory();
48         tlsConfiguration = new TlsConfigurationImpl(KeystoreType.JKS, "/exemplary-ctlTrustStore",
49                 PathType.CLASSPATH, KeystoreType.JKS, "/exemplary-ctlKeystore", PathType.CLASSPATH,
50                 Lists.newArrayList("TLS_RSA_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA256"));
51         factory.setDeserializationFactory(deserializationFactory);
52         factory.setSerializationFactory(serializationFactory);
53         factory.setSwitchConnectionHandler(switchConnectionHandler);
54         factory.setSwitchIdleTimeout(switchIdleTimeOut);
55         factory.setTlsConfig(tlsConfiguration);
56     }
57
58     /**
59      * Test {@link TcpChannelInitializer} creation.
60      */
61     @Test
62     public void testCreatePublishingChannelInitializer() {
63         TcpChannelInitializer initializer = factory.createPublishingChannelInitializer() ;
64         assertNotNull(initializer);
65     }
66 }