f376dd5f9bcaf62a6c13bfe9b41082ab7ba08807
[moon.git] /
1 /*
2  * Copyright (c) 2016 Cisco 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.aaa.authn.mdsal.store;
10
11 import org.junit.Assert;
12 import org.junit.Test;
13 import org.opendaylight.aaa.api.IDMStoreUtil;
14 import org.opendaylight.aaa.api.SHA256Calculator;
15 import org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Domain;
16 import org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Grant;
17 import org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.Role;
18 import org.opendaylight.yang.gen.v1.urn.aaa.yang.authn.claims.rev141029.authentication.User;
19
20 public class IDMStoreTest {
21
22     @Test
23     public void testWriteDomain() throws Exception {
24         IDMStoreTestUtil util = new IDMStoreTestUtil();
25         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
26         util.addMokitoFordomain();
27         Domain domain = testedObject.writeDomain(util.domain);
28         Assert.assertNotNull(domain);
29         Assert.assertEquals(domain.getDomainid(), util.domain.getName());
30     }
31
32     @Test
33     public void testReadDomain() throws Exception {
34         IDMStoreTestUtil util = new IDMStoreTestUtil();
35         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
36         util.addMokitoFordomain();
37         Domain domain = testedObject.readDomain(util.domain.getDomainid());
38         Assert.assertNotNull(domain);
39         Assert.assertEquals(domain, util.domain);
40     }
41
42     @Test
43     public void testDeleteDomain() throws Exception {
44         IDMStoreTestUtil util = new IDMStoreTestUtil();
45         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
46         util.addMokitoFordomain();
47         Domain domain = testedObject.deleteDomain(util.domain.getDomainid());
48         Assert.assertEquals(domain, util.domain);
49     }
50
51     @Test
52     public void testUpdateDomain() throws Exception {
53         IDMStoreTestUtil util = new IDMStoreTestUtil();
54         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
55         util.addMokitoFordomain();
56         Domain domain = testedObject.updateDomain(util.domain);
57         Assert.assertEquals(domain, util.domain);
58     }
59
60     @Test
61     public void testWriteRole() throws Exception {
62         IDMStoreTestUtil util = new IDMStoreTestUtil();
63         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
64         util.addMokitoForrole();
65         util.addMokitoFordomain();
66         Role role = testedObject.writeRole(util.role);
67         Assert.assertNotNull(role);
68         Assert.assertEquals(role.getRoleid(),
69                 IDMStoreUtil.createRoleid(role.getName(), role.getDomainid()));
70     }
71
72     @Test
73     public void testReadRole() throws Exception {
74         IDMStoreTestUtil util = new IDMStoreTestUtil();
75         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
76         util.addMokitoForrole();
77         Role role = testedObject.readRole(util.role.getRoleid());
78         Assert.assertNotNull(role);
79         Assert.assertEquals(role, util.role);
80     }
81
82     @Test
83     public void testDeleteRole() throws Exception {
84         IDMStoreTestUtil util = new IDMStoreTestUtil();
85         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
86         util.addMokitoForrole();
87         Role role = testedObject.deleteRole(util.role.getRoleid());
88         Assert.assertNotNull(role);
89         Assert.assertEquals(role, util.role);
90     }
91
92     @Test
93     public void testUpdateRole() throws Exception {
94         IDMStoreTestUtil util = new IDMStoreTestUtil();
95         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
96         util.addMokitoForrole();
97         Role role = testedObject.updateRole(util.role);
98         Assert.assertNotNull(role);
99         Assert.assertEquals(role, util.role);
100     }
101
102     @Test
103     public void testWriteUser() throws Exception {
104         IDMStoreTestUtil util = new IDMStoreTestUtil();
105         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
106         util.addMokitoForuser();
107         User user = testedObject.writeUser(util.user);
108         Assert.assertNotNull(user);
109         Assert.assertEquals(user.getUserid(),
110                 IDMStoreUtil.createUserid(user.getName(), util.user.getDomainid()));
111     }
112
113     @Test
114     public void testReadUser() throws Exception {
115         IDMStoreTestUtil util = new IDMStoreTestUtil();
116         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
117         util.addMokitoForuser();
118         User user = testedObject.readUser(util.user.getUserid());
119         Assert.assertNotNull(user);
120         Assert.assertEquals(user, util.user);
121     }
122
123     @Test
124     public void testDeleteUser() throws Exception {
125         IDMStoreTestUtil util = new IDMStoreTestUtil();
126         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
127         util.addMokitoForuser();
128         User user = testedObject.deleteUser(util.user.getUserid());
129         Assert.assertNotNull(user);
130         Assert.assertEquals(user, util.user);
131     }
132
133     @Test
134     public void testUpdateUser() throws Exception {
135         IDMStoreTestUtil util = new IDMStoreTestUtil();
136         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
137         util.addMokitoForuser();
138         User user = testedObject.updateUser(util.user);
139         Assert.assertNotNull(user);
140         Assert.assertEquals(user.getPassword(),
141                 SHA256Calculator.getSHA256(util.user.getPassword(), util.user.getSalt()));
142     }
143
144     @Test
145     public void testWriteGrant() throws Exception {
146         IDMStoreTestUtil util = new IDMStoreTestUtil();
147         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
148         util.addMokitoFordomain();
149         util.addMokitoForrole();
150         util.addMokitoForuser();
151         util.addMokitoForgrant();
152         Grant grant = testedObject.writeGrant(util.grant);
153         Assert.assertNotNull(grant);
154     }
155
156     @Test
157     public void testReadGrant() throws Exception {
158         IDMStoreTestUtil util = new IDMStoreTestUtil();
159         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
160         util.addMokitoForgrant();
161         Grant grant = testedObject.readGrant(util.grant.getGrantid());
162         Assert.assertNotNull(grant);
163         Assert.assertEquals(grant, util.grant);
164     }
165
166     @Test
167     public void testDeleteGrant() throws Exception {
168         IDMStoreTestUtil util = new IDMStoreTestUtil();
169         IDMMDSALStore testedObject = new IDMMDSALStore(util.dataBroker);
170         util.addMokitoForgrant();
171         Grant grant = testedObject.deleteGrant(util.grant.getGrantid());
172         Assert.assertNotNull(grant);
173         Assert.assertEquals(grant, util.grant);
174     }
175 }