3b622f2e7aae5cadeae3d5dce2873aaeb87f957b
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / music / conf / MusicSessionRepositoryHandlerTest.java
1 /*
2  * ============LICENSE_START==========================================
3  * ONAP Portal
4  * ===================================================================
5  * Copyright © 2018 AT&T Intellectual Property. All rights reserved.
6  * ===================================================================
7  *
8  * Unless otherwise specified, all software contained herein is licensed
9  * under the Apache License, Version 2.0 (the "License");
10  * you may not use this software except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *             http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  * Unless otherwise specified, all documentation contained herein is licensed
22  * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
23  * you may not use this documentation except in compliance with the License.
24  * You may obtain a copy of the License at
25  *
26  *             https://creativecommons.org/licenses/by/4.0/
27  *
28  * Unless required by applicable law or agreed to in writing, documentation
29  * distributed under the License is distributed on an "AS IS" BASIS,
30  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31  * See the License for the specific language governing permissions and
32  * limitations under the License.
33  *
34  * ============LICENSE_END============================================
35  *
36  *
37  */
38 package org.onap.portalapp.music.conf;
39
40 import static org.junit.Assert.assertNotNull;
41 import static org.junit.Assert.assertNull;
42
43 import org.junit.Before;
44 import org.junit.Test;
45 import org.junit.runner.RunWith;
46 import org.mockito.InjectMocks;
47 import org.mockito.Matchers;
48 import org.mockito.Mock;
49 import org.mockito.Mockito;
50 import org.mockito.MockitoAnnotations;
51 import org.onap.music.datastore.PreparedQueryObject;
52 import org.onap.music.main.MusicCore;
53 import org.onap.portalapp.music.service.MusicService;
54 import org.onap.portalapp.music.util.MusicUtil;
55 import org.powermock.api.mockito.PowerMockito;
56 import org.powermock.core.classloader.annotations.PrepareForTest;
57 import org.powermock.modules.junit4.PowerMockRunner;
58 import org.springframework.session.Session;
59
60 import com.datastax.driver.core.ResultSet;
61
62 @RunWith(PowerMockRunner.class)
63 @PrepareForTest({MusicUtil.class, MusicCore.class})
64 public class MusicSessionRepositoryHandlerTest {
65         
66         @Mock
67         private MusicService musicService;
68         
69         @Mock
70         ResultSet resultSet;
71         
72         @Before
73         public void setUp() {
74                 PowerMockito.mockStatic(MusicUtil.class);
75                 PowerMockito.mockStatic(MusicCore.class);
76                 Mockito.when(MusicUtil.isCached()).thenReturn(true);
77                 MockitoAnnotations.initMocks(this);
78         }
79         
80         @InjectMocks
81         MusicSessionRepositoryHandler musicSessionRepositoryHandler =  new MusicSessionRepositoryHandler();
82         
83         MusicSession ms = new MusicSession();
84
85         
86         @SuppressWarnings("static-access")
87         @Test
88         public void getTest() throws Exception {
89                 Mockito.when(MusicCore.get(Matchers.any(PreparedQueryObject.class))).thenReturn(resultSet);
90                 Mockito.when(musicService.getMetaAttribute("test_id")).thenReturn(ms);
91                 Session session = musicSessionRepositoryHandler.get("test_id");
92                 assertNotNull(session);
93         }
94         
95         @SuppressWarnings("static-access")
96         @Test
97         public void getFailWithIdTest() throws Exception {
98                 Mockito.when(MusicCore.get(Matchers.any(PreparedQueryObject.class))).thenReturn(resultSet);
99                 Mockito.when((musicService).getMetaAttribute("test_id")).thenThrow(new NullPointerException());
100                 Session session = musicSessionRepositoryHandler.get("test_id");
101                 assertNull(session);
102         }
103 }