Add collaboration feature
[sdc.git] / openecomp-be / lib / openecomp-sdc-notification-lib / openecomp-sdc-notification-core / src / test / java / org / openecomp / sdc / notification / services / impl / NotificationsServiceImplTest.java
1 package org.openecomp.sdc.notification.services.impl;
2
3 import org.junit.Before;
4 import org.junit.Test;
5 import org.mockito.InjectMocks;
6 import org.mockito.Mock;
7 import org.mockito.MockitoAnnotations;
8 import org.mockito.Spy;
9 import org.openecomp.sdc.notification.dao.LastNotificationDao;
10 import org.openecomp.sdc.notification.dao.NotificationsDao;
11 import org.openecomp.sdc.notification.dao.types.NotificationEntity;
12 import org.openecomp.sdc.notification.exceptons.NotificationNotExistException;
13
14 import java.util.UUID;
15
16 import static org.mockito.Matchers.any;
17 import static org.mockito.Mockito.doReturn;
18 import static org.mockito.Mockito.times;
19 import static org.mockito.Mockito.verify;
20
21 /**
22  * @author avrahamg
23  * @since July 13, 2017
24  */
25 public class NotificationsServiceImplTest {
26     @Mock
27     private LastNotificationDao lastNotificationDao;
28     @Mock
29     private NotificationsDao notificationsDao;
30     @Spy
31     @InjectMocks
32     private NotificationsServiceImpl notificationsService;
33
34     @Before
35     public void setUp() throws Exception {
36         MockitoAnnotations.initMocks(this);
37     }
38
39     public void shouldCallNotificationsDaoIfNotificationEntityExist() throws Exception {
40         doReturn(new NotificationEntity()).when(notificationsDao).get(any());
41         notificationsService.markAsRead("ownerId", UUID.randomUUID().toString());
42         verify(notificationsDao, times(1)).update(any());
43     }
44
45     @Test(expected = NotificationNotExistException.class)
46     public void shouldThrowExceptionIfOwnerIdAndNotificationIdDontRelate() throws Exception {
47         doReturn(null).when(notificationsDao).get(any());
48         notificationsService.markAsRead("ownerId", UUID.randomUUID().toString());
49     }
50 }