1
2
3
4 package de.powerstat.validation.comparators.test;
5
6
7 import static org.junit.jupiter.api.Assertions.assertEquals;
8 import static org.junit.jupiter.api.Assertions.assertNotNull;
9 import static org.junit.jupiter.api.Assertions.assertThrows;
10 import static org.junit.jupiter.api.Assertions.assertTrue;
11
12 import org.junit.jupiter.api.Test;
13
14 import de.powerstat.validation.comparators.ComparatorEMailByDomain;
15 import de.powerstat.validation.values.EMail;
16
17
18
19
20
21 final class ComparatorEMailByDomainTests
22 {
23
24
25
26 private static final String USER1_EXAMPLE_COM = "user1@example.com";
27
28
29
30
31 private static final String USER2_EXAMPLE_COM = "user2@example.com";
32
33
34
35
36 private static final String USER1_POWERSTAT_DE = "user1@powerstat.de";
37
38
39
40
41 private static final String NULL_POINTER_EXCEPTION = "Null pointer exception expected";
42
43
44
45
46 private static final String COMPARE_NOT_SMALLER = "Compare not smaller!";
47
48
49
50
51 private static final String COMPARE_NOT_GREATER = "Compare not greater!";
52
53
54
55
56
57 ComparatorEMailByDomainTests()
58 {
59 super();
60 }
61
62
63
64
65
66 @Test
67 void testConstructor1()
68 {
69 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
70 assertNotNull(comp, "Constructor failed!");
71 }
72
73
74
75
76
77 @Test
78 void testCompare1()
79 {
80 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
81 final EMail email = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
82 assertThrows(NullPointerException.class, () ->
83 {
84 comp.compare(null, email);
85 }, ComparatorEMailByDomainTests.NULL_POINTER_EXCEPTION
86 );
87 }
88
89
90
91
92
93 @Test
94 void testCompare2()
95 {
96 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
97 final EMail email = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
98 assertThrows(NullPointerException.class, () ->
99 {
100 comp.compare(email, null);
101 }, ComparatorEMailByDomainTests.NULL_POINTER_EXCEPTION
102 );
103 }
104
105
106
107
108
109 @Test
110 void testCompare3()
111 {
112 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
113 final EMail email = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
114 final int result = comp.compare(email, email);
115 assertEquals(0, result, "Compare not equal!");
116 }
117
118
119
120
121
122 @Test
123 void testCompare4()
124 {
125 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
126 final EMail email1 = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
127 final EMail email2 = EMail.of(ComparatorEMailByDomainTests.USER2_EXAMPLE_COM);
128 final int result = comp.compare(email1, email2);
129 assertTrue(result < 0, ComparatorEMailByDomainTests.COMPARE_NOT_SMALLER);
130 }
131
132
133
134
135
136 @Test
137 void testCompare5()
138 {
139 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
140 final EMail email1 = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
141 final EMail email2 = EMail.of(ComparatorEMailByDomainTests.USER2_EXAMPLE_COM);
142 final int result = comp.compare(email2, email1);
143 assertTrue(result > 0, ComparatorEMailByDomainTests.COMPARE_NOT_GREATER);
144 }
145
146
147
148
149
150 @Test
151 void testCompare6()
152 {
153 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
154 final EMail email1 = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
155 final EMail email2 = EMail.of(ComparatorEMailByDomainTests.USER1_POWERSTAT_DE);
156 final int result = comp.compare(email1, email2);
157 assertTrue(result < 0, ComparatorEMailByDomainTests.COMPARE_NOT_SMALLER);
158 }
159
160
161
162
163
164 @Test
165 void testCompare7()
166 {
167 final ComparatorEMailByDomain comp = new ComparatorEMailByDomain();
168 final EMail email1 = EMail.of(ComparatorEMailByDomainTests.USER1_EXAMPLE_COM);
169 final EMail email2 = EMail.of(ComparatorEMailByDomainTests.USER1_POWERSTAT_DE);
170 final int result = comp.compare(email2, email1);
171 assertTrue(result > 0, ComparatorEMailByDomainTests.COMPARE_NOT_GREATER);
172 }
173
174 }