Sonar Fixes, Formatting
[aaf/authz.git] / auth / auth-cass / src / test / java / org / onap / aaf / auth / dao / JU_CassDAOImpl.java
1 /*******************************************************************************
2  * ============LICENSE_START====================================================
3  * * org.onap.aaf
4  * * ===========================================================================
5  * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6  * * ===========================================================================
7  * * Licensed under the Apache License, Version 2.0 (the "License");
8  * * you may not use this file except in compliance with the License.
9  * * You may obtain a copy of the License at
10  * *
11  *  *      http://www.apache.org/licenses/LICENSE-2.0
12  * *
13  *  * Unless required by applicable law or agreed to in writing, software
14  * * distributed under the License is distributed on an "AS IS" BASIS,
15  * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * * See the License for the specific language governing permissions and
17  * * limitations under the License.
18  * * ============LICENSE_END====================================================
19  * *
20  * *
21  ******************************************************************************/
22
23 package org.onap.aaf.auth.dao;
24
25 import static org.junit.Assert.*;
26
27 import org.junit.Before;
28 import org.junit.Test;
29 import org.junit.runner.RunWith;
30 import org.mockito.Mock;
31 import org.onap.aaf.auth.dao.CassDAOImpl;
32 import org.onap.aaf.auth.dao.Loader;
33 import org.onap.aaf.auth.env.AuthzTrans;
34 import org.onap.aaf.misc.env.Data;
35 import org.onap.aaf.misc.env.Trans;
36 import org.onap.aaf.misc.env.TransStore;
37 import org.powermock.api.mockito.PowerMockito;
38 import org.powermock.modules.junit4.PowerMockRunner;
39
40 import com.datastax.driver.core.Cluster;
41 import com.datastax.driver.core.ConsistencyLevel;
42
43 @RunWith(PowerMockRunner.class)
44 public class JU_CassDAOImpl {
45
46 public static final String CASS_READ_CONSISTENCY="cassandra.readConsistency";
47 public static final String CASS_WRITE_CONSISTENCY="cassandra.writeConsistency";
48
49 CassDAOImpl cassDAOImpl;
50
51
52 @Mock
53 TransStore transStoreMock;
54 @SuppressWarnings("rawtypes")
55 Class dcMock;
56 @SuppressWarnings("rawtypes")
57 Loader loaderMock;
58 Cluster clusterMock;
59 Class<Data> classDataMock;
60 ConsistencyLevel consistencyLevelMock;
61 Trans transMock;
62
63 @Mock
64 AuthzTrans authzTransMock;
65
66
67
68     @SuppressWarnings({ "rawtypes", "unchecked" })
69     @Before
70     public void setUp()
71     {
72         String name = "name";
73         String keySpace = "keySpace";
74         String table = "table";
75         cassDAOImpl = new CassDAOImpl(transStoreMock, name, clusterMock, keySpace, classDataMock, table, consistencyLevelMock, consistencyLevelMock);
76     }
77
78     //TODO: Gabe [JUnit] Visibility issue
79     @Test
80     public void testReadConsistency() {
81         String table = "users";
82         PowerMockito.when(authzTransMock.getProperty(CASS_READ_CONSISTENCY+'.'+table)).thenReturn("TWO");
83         ConsistencyLevel consistencyLevel = cassDAOImpl.readConsistency(authzTransMock, table);
84         System.out.println("Consistency level" + consistencyLevel.name());
85         assertEquals("TWO", consistencyLevel.name());
86     }
87
88     @Test
89     public void testWriteConsistency() {
90         String table = "users";
91         PowerMockito.when(authzTransMock.getProperty(CASS_WRITE_CONSISTENCY+'.'+table)).thenReturn(null);
92         ConsistencyLevel consistencyLevel = cassDAOImpl.writeConsistency(authzTransMock, table);
93         System.out.println("Consistency level" + consistencyLevel.name());
94         assertEquals("ONE", consistencyLevel.name());
95     }
96
97 }