aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-dao/src/test/java/org/openecomp/sdc/be/dao/cassandra/CassandraClientTest.java
blob: 0392bf0e0a8fa3ea6c9cb0bc835bcb105df36672 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
package org.openecomp.sdc.be.dao.cassandra;

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Cluster.Builder;
import com.datastax.driver.core.Session;
import com.datastax.driver.mapping.MappingManager;
import fj.data.Either;
import mockit.Deencapsulation;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.tinkerpop.gremlin.structure.T;
import org.junit.Test;
import org.mockito.Mockito;
import org.openecomp.sdc.be.config.ConfigurationManager;
import org.openecomp.sdc.be.utils.DAOConfDependentTest;

public class CassandraClientTest extends DAOConfDependentTest {

	private CassandraClient createTestSubject() {
		return new CassandraClient();
	}

	@Test
	public void testSetLocalDc() throws Exception {
		CassandraClient testSubject;
		Cluster.Builder clusterBuilder = null;

		Builder mock = Mockito.mock(Cluster.Builder.class);
		Mockito.when(mock.withLoadBalancingPolicy(Mockito.any())).thenReturn(new Builder());
		// default test
		testSubject = createTestSubject();
		Deencapsulation.invoke(testSubject, "setLocalDc", new Object[] { Cluster.Builder.class });

		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig()
				.setLocalDataCenter("mock");

		testSubject = createTestSubject();
		Deencapsulation.invoke(testSubject, "setLocalDc", mock);
	}

	@Test
	public void testEnableSsl() throws Exception {
		CassandraClient testSubject;
		Cluster.Builder clusterBuilder = null;

		Builder mock = Mockito.mock(Cluster.Builder.class);
		Mockito.when(mock.withSSL()).thenReturn(new Builder());

		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setSsl(false);
		// default test
		testSubject = createTestSubject();
		Deencapsulation.invoke(testSubject, "enableSsl", mock);

		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setSsl(true);
		// default test
		testSubject = createTestSubject();
		Deencapsulation.invoke(testSubject, "enableSsl", mock);
		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setTruststorePath(null);
		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig()
				.setTruststorePassword(null);
		Deencapsulation.invoke(testSubject, "enableSsl", mock);
	}

	@Test
	public void testEnableAuthentication() throws Exception {
		CassandraClient testSubject;
		Builder mock = Mockito.mock(Cluster.Builder.class);
		Mockito.when(mock.withCredentials(Mockito.any(), Mockito.any())).thenReturn(new Builder());

		// default test
		testSubject = createTestSubject();
		Deencapsulation.invoke(testSubject, "enableAuthentication", Cluster.Builder.class);

		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setAuthenticate(true);
		Deencapsulation.invoke(testSubject, "enableAuthentication", mock);
		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setUsername(null);
		ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig().setPassword(null);
		Deencapsulation.invoke(testSubject, "enableAuthentication", mock);
	}

	@Test
	public void testConnect() throws Exception {
		CassandraClient testSubject;
		String keyspace = "";
		Either<ImmutablePair<Session, MappingManager>, CassandraOperationStatus> result;

		// default test
		testSubject = createTestSubject();
		result = testSubject.connect(keyspace);
	}

	@Test
	public void testSave() throws Exception {
		CassandraClient testSubject;
		T entity = null;
		Class<T> clazz = null;
		MappingManager manager = null;
		CassandraOperationStatus result;

		// default test
		testSubject = createTestSubject();
		result = testSubject.save(entity, clazz, manager);
	}

	@Test
	public void testGetById() throws Exception {
		CassandraClient testSubject;
		String id = "";
		Class<T> clazz = null;
		MappingManager manager = null;
		Either<T, CassandraOperationStatus> result;

		// default test
		testSubject = createTestSubject();
		result = testSubject.getById(id, clazz, manager);
	}

	@Test
	public void testDelete() throws Exception {
		CassandraClient testSubject;
		String id = "";
		Class<T> clazz = null;
		MappingManager manager = null;
		CassandraOperationStatus result;

		// default test
		testSubject = createTestSubject();
		result = testSubject.delete(id, clazz, manager);
	}

	@Test
	public void testIsConnected() throws Exception {
		CassandraClient testSubject;
		boolean result;

		// default test
		testSubject = createTestSubject();
		result = testSubject.isConnected();
	}

	@Test
	public void testCloseClient() throws Exception {
		CassandraClient testSubject;

		// default test
		testSubject = createTestSubject();
		testSubject.closeClient();
	}
}