Remove spaces from dockerbuild script
[aaf/authz.git] / auth / auth-cass / src / test / java / org / onap / aaf / auth / dao / aaf / test / JU_ArtiDAO.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 package org.onap.aaf.auth.dao.aaf.test;
23
24 import static org.junit.Assert.assertEquals;
25 import static org.junit.Assert.assertTrue;
26
27 import java.io.IOException;
28 import java.nio.ByteBuffer;
29 import java.security.NoSuchAlgorithmException;
30 import java.util.Date;
31 import java.util.List;
32
33 import org.junit.Test;
34 import org.onap.aaf.auth.dao.cass.ArtiDAO;
35 import org.onap.aaf.auth.dao.cass.ArtiDAO.Data;
36 import org.onap.aaf.auth.layer.Result;
37
38 /**
39  * UserDAO unit test.
40  * User: tp007s
41  * Date: 7/19/13
42  */
43 public class JU_ArtiDAO  extends AbsJUCass {
44         @Test
45         public void test() throws IOException, NoSuchAlgorithmException {
46                 ArtiDAO adao = new ArtiDAO(trans,cluster,"authz");
47                 try {
48                         // Create
49                 ArtiDAO.Data data = new ArtiDAO.Data();
50                 data.mechid="m55555@perturbed.att.com";
51                 data.machine="perturbed1232.att.com";
52                 data.type(false).add("file");
53                 data.type(false).add("jks");
54                 data.sponsor="Fred Flintstone";
55                 data.ca="devl";
56                 data.dir="/opt/app/aft/keys";
57                 data.ns="kumquat";
58                 data.os_user="aft";
59                 data.notify="email:myname@bogus.email.com";
60                 data.expires=new Date();
61                 
62 //              Bytification
63                 ByteBuffer bb = data.bytify();
64                 Data bdata = new ArtiDAO.Data();
65                 bdata.reconstitute(bb);
66                 checkData1(data, bdata);
67                 
68                 
69 //              DB work
70                         adao.create(trans,data);
71                         try {
72                                 // Validate Read with key fields in Data
73                                 Result<List<ArtiDAO.Data>> rlcd = adao.read(trans,data);
74                                 assertTrue(rlcd.isOKhasData());
75                                 for(ArtiDAO.Data d : rlcd.value) {
76                                         checkData1(data,d);
77                                 }
78         
79                                 // Validate Read with key fields in Data
80                                 rlcd = adao.read(trans,data.mechid, data.machine);
81                                 assertTrue(rlcd.isOKhasData());
82                                 for(ArtiDAO.Data d : rlcd.value) {
83                                         checkData1(data,d);
84                                 }
85         
86                                 // By Machine
87                                 rlcd = adao.readByMachine(trans,data.machine);
88                                 assertTrue(rlcd.isOKhasData());
89                                 for(ArtiDAO.Data d : rlcd.value) {
90                                         checkData1(data,d);
91                                 }
92                                 
93                                 // By MechID
94                                 rlcd = adao.readByMechID(trans,data.mechid);
95                                 assertTrue(rlcd.isOKhasData());
96                                 for(ArtiDAO.Data d : rlcd.value) {
97                                         checkData1(data,d);
98                                 }
99         
100                                 // Update
101                                 data.sponsor = "Wilma Flintstone";
102                                 adao.update(trans,data);
103                                 rlcd = adao.read(trans,data);
104                                 assertTrue(rlcd.isOKhasData());
105                                 for(ArtiDAO.Data d : rlcd.value) {
106                                         checkData1(data,d);
107                                 }                       
108
109                         } finally {
110                                 // Always delete data, even if failure.
111                                 adao.delete(trans,data, true);
112                         }
113                 } finally {
114                         adao.close(trans);
115                 }
116
117                 
118         }
119
120         private void checkData1(Data data, Data d) {
121                 assertEquals(data.mechid,d.mechid);
122                 assertEquals(data.machine,d.machine);
123                 assertEquals(data.type(false).size(),d.type(false).size());
124                 for(String s: data.type(false)) {
125                         assertTrue(d.type(false).contains(s));
126                 }
127                 assertEquals(data.sponsor,d.sponsor);
128                 assertEquals(data.ca,d.ca);
129                 assertEquals(data.dir,d.dir);
130                 assertEquals(data.ns,d.ns);
131                 assertEquals(data.os_user,d.os_user);
132                 assertEquals(data.notify,d.notify);
133                 assertEquals(data.expires,d.expires);
134         }
135
136 }