ListPublisherActionsViewTest.java
3.45 KB
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
package org.legrog.web.publisher;
import org.junit.Before;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.platform.runner.JUnitPlatform;
import org.junit.runner.RunWith;
import org.legrog.entities.Publisher;
import org.legrog.entities.PublisherAction;
import org.legrog.test.MockitoExtension;
import org.mockito.Mock;
import org.mockito.Mockito;
import javax.inject.Inject;
import java.util.ArrayList;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Classe testant ListPublisherActionsView.
*/
@RunWith(JUnitPlatform.class)
@ExtendWith(MockitoExtension.class)
@DisplayName("Shows publisher actions")
public class ListPublisherActionsViewTest {
ListPublisherActionsView listPublisherActionsView;
@Nested
@DisplayName("setView method")
public class testSetView {
boolean filtered;
@BeforeEach
public void setUp(@Mock PublisherService publisherServiceMock){
filtered = false;
listPublisherActionsView = new ListPublisherActionsView(publisherServiceMock) {
@Override
public void filterOnID() {
filtered = true;
}
};
}
@Test
@DisplayName("when publisher is not set, should be in all actions no filter state")
public void showAll(@Mock PublisherService publisherServiceMock) {
listPublisherActionsView.setPublisherId(null);
listPublisherActionsView.setViewAll(false);
listPublisherActionsView.setView();
Mockito.verify(publisherServiceMock).getAllPublisherActions();
assertThat(listPublisherActionsView.isViewAll()).isTrue();
assertThat(filtered).isFalse();
}
@Test
@DisplayName("when publisher is set, should be in filtered not all actions state")
public void showFiltered(@Mock PublisherService publisherServiceMock) {
listPublisherActionsView.setPublisherId(1);
listPublisherActionsView.setViewAll(true);
listPublisherActionsView.setView();
Mockito.verify(publisherServiceMock).getAllPublisherActions();
assertThat(listPublisherActionsView.isViewAll()).isFalse();
assertThat(filtered).isTrue();
}
}
@Test
@DisplayName("when publisher is set, should show only its actions")
public void testFilter() {
List<PublisherAction> publisherActions = new ArrayList<PublisherAction>();
Publisher publisher = new Publisher();
Publisher publisher1 = new Publisher();
PublisherAction publisherAction = new PublisherAction();
PublisherAction publisherAction1 = new PublisherAction();
publisher.setPublisherId(0);
publisher1.setPublisherId(1);
publisherAction.setPublisher(publisher);
publisherAction1.setPublisher(publisher1);
publisherActions.add(publisherAction);
publisherActions.add(publisherAction1);
listPublisherActionsView = new ListPublisherActionsView();
listPublisherActionsView.setPublisherActions(publisherActions);
listPublisherActionsView.setPublisherId(1);
listPublisherActionsView.filterOnID();
assertThat(listPublisherActionsView.getPublisherActions()).containsExactly(publisherAction1);
}
}