@@ -29,189 +29,204 @@ import org.projectforge.framework.utils.NumberHelper
29
29
import org.projectforge.framework.utils.NumberHelper.extractPhonenumber
30
30
31
31
class NumberHelperTest {
32
- @Test
33
- fun randomAlphaNumericTest () {
34
- Assertions .assertEquals(62 , NumberHelper .ALPHA_NUMERICS_CHARSET .length)
35
- var str = NumberHelper .getSecureRandomAlphanumeric(1000 )
36
- Assertions .assertEquals(1000 , str.length)
37
- for (ch in NumberHelper .ALPHA_NUMERICS_CHARSET ) {
38
- if (str.any { it == ch }) {
39
- // found
40
- continue
41
- }
42
- var found = false
43
- for (i in 0 .. 1000 ) {
44
- str = NumberHelper .getSecureRandomAlphanumeric(1000 )
45
- if (str.contains(ch)) {
46
- found = true
47
- break
32
+ @Test
33
+ fun randomAlphaNumericTest () {
34
+ Assertions .assertEquals(62 , NumberHelper .ALPHA_NUMERICS_CHARSET .length)
35
+ var str = NumberHelper .getSecureRandomAlphanumeric(1000 )
36
+ Assertions .assertEquals(1000 , str.length)
37
+ for (ch in NumberHelper .ALPHA_NUMERICS_CHARSET ) {
38
+ if (str.any { it == ch }) {
39
+ // found
40
+ continue
41
+ }
42
+ var found = false
43
+ for (i in 0 .. 1000 ) {
44
+ str = NumberHelper .getSecureRandomAlphanumeric(1000 )
45
+ if (str.contains(ch)) {
46
+ found = true
47
+ break
48
+ }
49
+ }
50
+ Assertions .assertTrue(
51
+ found,
52
+ " After generating 1,000 secure strings of length 1,000, the char '$ch ' wasn't generated!"
53
+ )
48
54
}
49
- }
50
- Assertions .assertTrue(
51
- found,
52
- " After generating 1,000 secure strings of length 1,000, the char '$ch ' wasn't generated!"
53
- )
54
55
}
55
- }
56
56
57
- @Test
58
- fun randomReducedAlphaNumericTest () {
59
- Assertions .assertEquals(58 , NumberHelper .REDUCED_ALPHA_NUMERICS_CHARSET .length)
60
- var str = NumberHelper .getSecureRandomReducedAlphanumeric(1000 )
61
- Assertions .assertEquals(1000 , str.length)
62
- for (ch in NumberHelper .REDUCED_ALPHA_NUMERICS_CHARSET ) {
63
- if (str.any { it == ch }) {
64
- // found
65
- continue
66
- }
67
- var found = false
68
- for (i in 0 .. 1000 ) {
69
- str = NumberHelper .getSecureRandomReducedAlphanumeric(1000 )
70
- if (str.contains(ch)) {
71
- found = true
72
- break
73
- }
74
- }
75
- Assertions .assertTrue(
76
- found,
77
- " After generating 1,000 secure strings of length 1,000, the char '$ch ' wasn't generated!"
78
- )
57
+ @Test
58
+ fun isDigitsAndDotsOnly () {
59
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" 5.100.87.0" ))
60
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" 5100870" ))
61
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" 123..." ))
62
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" .123" ))
63
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" 123." ))
64
+ Assertions .assertTrue(NumberHelper .isDigitsAndDotsOnly(" 12.34.56" ))
65
+ Assertions .assertFalse(NumberHelper .isDigitsAndDotsOnly(" 5 100,87.00" ))
66
+ Assertions .assertFalse(NumberHelper .isDigitsAndDotsOnly(" hallo 2435" ))
67
+ Assertions .assertFalse(NumberHelper .isDigitsAndDotsOnly(" ..." ))
68
+ Assertions .assertFalse(NumberHelper .isDigitsAndDotsOnly(" " ))
69
+ Assertions .assertFalse(NumberHelper .isDigitsAndDotsOnly(null ))
79
70
}
80
- }
81
71
82
- @Test
83
- fun checkRandomReducedAlphaNumericTest () {
84
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(null , 5 ))
85
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" " , 5 ))
86
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" 1234" , 5 ))
87
- Assertions .assertTrue(NumberHelper .checkSecureRandomReducedAlphanumeric(" 12345" , 5 ))
88
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" 1Ildsfdsfas" , 5 ))
89
- for (i in 0 .. 100 ) {
90
- Assertions .assertTrue(
91
- NumberHelper .checkSecureRandomReducedAlphanumeric(
92
- NumberHelper .getSecureRandomReducedAlphanumeric(
93
- 10
94
- ), 10
95
- )
96
- )
72
+ @Test
73
+ fun randomReducedAlphaNumericTest () {
74
+ Assertions .assertEquals(58 , NumberHelper .REDUCED_ALPHA_NUMERICS_CHARSET .length)
75
+ var str = NumberHelper .getSecureRandomReducedAlphanumeric(1000 )
76
+ Assertions .assertEquals(1000 , str.length)
77
+ for (ch in NumberHelper .REDUCED_ALPHA_NUMERICS_CHARSET ) {
78
+ if (str.any { it == ch }) {
79
+ // found
80
+ continue
81
+ }
82
+ var found = false
83
+ for (i in 0 .. 1000 ) {
84
+ str = NumberHelper .getSecureRandomReducedAlphanumeric(1000 )
85
+ if (str.contains(ch)) {
86
+ found = true
87
+ break
88
+ }
89
+ }
90
+ Assertions .assertTrue(
91
+ found,
92
+ " After generating 1,000 secure strings of length 1,000, the char '$ch ' wasn't generated!"
93
+ )
94
+ }
97
95
}
98
- }
99
96
100
- @Test
101
- fun checkRandomReducedAlphaNumericWithSpecialCharsTest () {
102
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" " , 5 ))
103
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 1234" , 5 ))
104
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 12345" , 5 ))
105
- Assertions .assertTrue(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 123!5" , 5 ))
106
- Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 1Ildsfdsfas" , 5 ))
107
- for (i in 0 .. 100 ) {
108
- Assertions .assertTrue(
109
- NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(
110
- NumberHelper .getSecureRandomReducedAlphanumericWithSpecialChars(
111
- 10
112
- ), 10
113
- )
114
- )
115
- }
116
- // Use shorter strings, so the probability for missing special chars is increased.
117
- for (i in 0 .. 100 ) {
118
- Assertions .assertTrue(
119
- NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(
120
- NumberHelper .getSecureRandomReducedAlphanumericWithSpecialChars(
121
- 3
122
- ), 3
123
- )
124
- )
97
+ @Test
98
+ fun checkRandomReducedAlphaNumericTest () {
99
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(null , 5 ))
100
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" " , 5 ))
101
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" 1234" , 5 ))
102
+ Assertions .assertTrue(NumberHelper .checkSecureRandomReducedAlphanumeric(" 12345" , 5 ))
103
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumeric(" 1Ildsfdsfas" , 5 ))
104
+ for (i in 0 .. 100 ) {
105
+ Assertions .assertTrue(
106
+ NumberHelper .checkSecureRandomReducedAlphanumeric(
107
+ NumberHelper .getSecureRandomReducedAlphanumeric(
108
+ 10
109
+ ), 10
110
+ )
111
+ )
112
+ }
125
113
}
126
- }
127
114
128
- @Test
129
- fun checkRandomAlphaNumericTest () {
130
- Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(null , 5 ))
131
- Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(" " , 5 ))
132
- Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(" 1234" , 5 ))
133
- Assertions .assertTrue(NumberHelper .checkSecureRandomAlphanumeric(" 12345" , 5 ))
134
- Assertions .assertTrue(NumberHelper .checkSecureRandomAlphanumeric(" 1Ildsfdsfas" , 5 ))
135
- for (i in 0 .. 100 ) {
136
- Assertions .assertTrue(
137
- NumberHelper .checkSecureRandomAlphanumeric(
138
- NumberHelper .getSecureRandomAlphanumeric(
139
- 10
140
- ), 10
141
- )
142
- )
115
+ @Test
116
+ fun checkRandomReducedAlphaNumericWithSpecialCharsTest () {
117
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" " , 5 ))
118
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 1234" , 5 ))
119
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 12345" , 5 ))
120
+ Assertions .assertTrue(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 123!5" , 5 ))
121
+ Assertions .assertFalse(NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(" 1Ildsfdsfas" , 5 ))
122
+ for (i in 0 .. 100 ) {
123
+ Assertions .assertTrue(
124
+ NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(
125
+ NumberHelper .getSecureRandomReducedAlphanumericWithSpecialChars(
126
+ 10
127
+ ), 10
128
+ )
129
+ )
130
+ }
131
+ // Use shorter strings, so the probability for missing special chars is increased.
132
+ for (i in 0 .. 100 ) {
133
+ Assertions .assertTrue(
134
+ NumberHelper .checkSecureRandomReducedAlphanumericWithSpecialChars(
135
+ NumberHelper .getSecureRandomReducedAlphanumericWithSpecialChars(
136
+ 3
137
+ ), 3
138
+ )
139
+ )
140
+ }
143
141
}
144
- }
145
142
146
- @Test
147
- fun checkRandomDigitsTest () {
148
- val digits = mutableSetOf<Char >()
149
- for (i in 0 .. 1000 ) {
150
- val code = NumberHelper .getSecureRandomDigits(6 )
151
- Assertions .assertEquals(6 , code.length, " Code '$code ' not of size 6." )
152
- code.forEach {ch ->
153
- Assertions .assertTrue(ch.isDigit(), " Invalid character in '$code ': '$ch '" )
154
- digits.add(ch)
155
- }
143
+ @Test
144
+ fun checkRandomAlphaNumericTest () {
145
+ Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(null , 5 ))
146
+ Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(" " , 5 ))
147
+ Assertions .assertFalse(NumberHelper .checkSecureRandomAlphanumeric(" 1234" , 5 ))
148
+ Assertions .assertTrue(NumberHelper .checkSecureRandomAlphanumeric(" 12345" , 5 ))
149
+ Assertions .assertTrue(NumberHelper .checkSecureRandomAlphanumeric(" 1Ildsfdsfas" , 5 ))
150
+ for (i in 0 .. 100 ) {
151
+ Assertions .assertTrue(
152
+ NumberHelper .checkSecureRandomAlphanumeric(
153
+ NumberHelper .getSecureRandomAlphanumeric(
154
+ 10
155
+ ), 10
156
+ )
157
+ )
158
+ }
156
159
}
157
- Assertions .assertEquals(10 , digits.size)
158
- for (ch in ' 0' .. ' 9' ) {
159
- Assertions .assertTrue(digits.contains(ch), " Digit '$ch ' not found!" )
160
+
161
+ @Test
162
+ fun checkRandomDigitsTest () {
163
+ val digits = mutableSetOf<Char >()
164
+ for (i in 0 .. 1000 ) {
165
+ val code = NumberHelper .getSecureRandomDigits(6 )
166
+ Assertions .assertEquals(6 , code.length, " Code '$code ' not of size 6." )
167
+ code.forEach { ch ->
168
+ Assertions .assertTrue(ch.isDigit(), " Invalid character in '$code ': '$ch '" )
169
+ digits.add(ch)
170
+ }
171
+ }
172
+ Assertions .assertEquals(10 , digits.size)
173
+ for (ch in ' 0' .. ' 9' ) {
174
+ Assertions .assertTrue(digits.contains(ch), " Digit '$ch ' not found!" )
175
+ }
160
176
}
161
- }
162
177
163
- fun randomAlphaNumericPerformanceTest () {
164
- val length = 1000
165
- val time = System .currentTimeMillis()
166
- for (i in 0 .. 1000 ) {
167
- NumberHelper .getSecureRandomAlphanumeric(length)
178
+ fun randomAlphaNumericPerformanceTest () {
179
+ val length = 1000
180
+ val time = System .currentTimeMillis()
181
+ for (i in 0 .. 1000 ) {
182
+ NumberHelper .getSecureRandomAlphanumeric(length)
183
+ }
184
+ println (" Generating 1,000 secure strings each of length $length takes ${System .currentTimeMillis() - time} ms." )
168
185
}
169
- println (" Generating 1,000 secure strings each of length $length takes ${System .currentTimeMillis() - time} ms." )
170
- }
171
186
172
- @Test
173
- fun rangeTest () {
174
- Assertions .assertNull(NumberHelper .ensureRange(0 , 4 , null ))
175
- Assertions .assertEquals(2 , NumberHelper .ensureRange(0 , 4 , 2 ))
176
- Assertions .assertEquals(0 , NumberHelper .ensureRange(0 , 4 , 0 ))
177
- Assertions .assertEquals(0 , NumberHelper .ensureRange(0 , 4 , - 1 ))
178
- Assertions .assertEquals(4 , NumberHelper .ensureRange(0 , 4 , 5 ))
179
- Assertions .assertEquals(4 , NumberHelper .ensureRange(0 , 4 , 4 ))
180
- }
187
+ @Test
188
+ fun rangeTest () {
189
+ Assertions .assertNull(NumberHelper .ensureRange(0 , 4 , null ))
190
+ Assertions .assertEquals(2 , NumberHelper .ensureRange(0 , 4 , 2 ))
191
+ Assertions .assertEquals(0 , NumberHelper .ensureRange(0 , 4 , 0 ))
192
+ Assertions .assertEquals(0 , NumberHelper .ensureRange(0 , 4 , - 1 ))
193
+ Assertions .assertEquals(4 , NumberHelper .ensureRange(0 , 4 , 5 ))
194
+ Assertions .assertEquals(4 , NumberHelper .ensureRange(0 , 4 , 4 ))
195
+ }
181
196
182
- @Test
183
- fun extractPhonenumber () {
184
- Assertions .assertNull(extractPhonenumber(null , null ))
185
- Assertions .assertEquals(" " , extractPhonenumber(" " , " +49" ))
186
- Assertions .assertEquals(" " , extractPhonenumber(" +" , " +49" ))
187
- Assertions .assertEquals(" 4" , extractPhonenumber(" +4" , " +49" ))
188
- Assertions .assertEquals(" 0" , extractPhonenumber(" +49" , " +49" ))
189
- Assertions .assertEquals(" 01" , extractPhonenumber(" +491" , " +49" ))
190
- Assertions .assertEquals(" 05613167930" , extractPhonenumber(" 0561 / 316793-0" , null ))
191
- Assertions .assertEquals(" 00495613167930" , extractPhonenumber(" +49 561 / 316793-0" , null ))
192
- Assertions .assertEquals(" 05613167930" , extractPhonenumber(" +49 561 / 316793-0" , " +49" ))
193
- Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 316793-0" , " +49" ))
194
- Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 31:6793-0" , " +49" ))
195
- Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 31 h6793-0" , " +49" ))
196
- Assertions .assertEquals(
197
- " 1234567890" ,
198
- extractPhonenumber(" \u202D 1234567890\u202C " , " +49" )
199
- ) // Apple white spaces from contacts.
197
+ @Test
198
+ fun extractPhonenumber () {
199
+ Assertions .assertNull(extractPhonenumber(null , null ))
200
+ Assertions .assertEquals(" " , extractPhonenumber(" " , " +49" ))
201
+ Assertions .assertEquals(" " , extractPhonenumber(" +" , " +49" ))
202
+ Assertions .assertEquals(" 4" , extractPhonenumber(" +4" , " +49" ))
203
+ Assertions .assertEquals(" 0" , extractPhonenumber(" +49" , " +49" ))
204
+ Assertions .assertEquals(" 01" , extractPhonenumber(" +491" , " +49" ))
205
+ Assertions .assertEquals(" 05613167930" , extractPhonenumber(" 0561 / 316793-0" , null ))
206
+ Assertions .assertEquals(" 00495613167930" , extractPhonenumber(" +49 561 / 316793-0" , null ))
207
+ Assertions .assertEquals(" 05613167930" , extractPhonenumber(" +49 561 / 316793-0" , " +49" ))
208
+ Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 316793-0" , " +49" ))
209
+ Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 31:6793-0" , " +49" ))
210
+ Assertions .assertEquals(" 00445613167930" , extractPhonenumber(" +44 561 / 31 h6793-0" , " +49" ))
211
+ Assertions .assertEquals(
212
+ " 1234567890" ,
213
+ extractPhonenumber(" \u202D 1234567890\u202C " , " +49" )
214
+ ) // Apple white spaces from contacts.
200
215
201
- Assertions .assertEquals(" 007123456" , extractPhonenumber(" +7123456" , " +49" ))
202
- Assertions .assertEquals(" 007123456" , extractPhonenumber(" +7 123456" , " +49" ))
203
- Assertions .assertEquals(" 012345678" , extractPhonenumber(" +49 (0) 12345 - 678" , " +49" ))
204
- Assertions .assertEquals(" 004112345678" , extractPhonenumber(" +41 (0) 12345 - 678" , " +49" ))
205
- }
216
+ Assertions .assertEquals(" 007123456" , extractPhonenumber(" +7123456" , " +49" ))
217
+ Assertions .assertEquals(" 007123456" , extractPhonenumber(" +7 123456" , " +49" ))
218
+ Assertions .assertEquals(" 012345678" , extractPhonenumber(" +49 (0) 12345 - 678" , " +49" ))
219
+ Assertions .assertEquals(" 004112345678" , extractPhonenumber(" +41 (0) 12345 - 678" , " +49" ))
220
+ }
206
221
207
- @Test
208
- fun formatPhonenumber () {
209
- NumberHelper .TEST_COUNTRY_PREFIX_USAGE_IN_TESTCASES_ONLY = " +49"
210
- Assertions .assertEquals(" 12345678" , NumberHelper .formatPhonenumber(" 12345678" ))
211
- Assertions .assertEquals(" 0" , NumberHelper .formatPhonenumber(" 0" ))
212
- Assertions .assertEquals(" 00" , NumberHelper .formatPhonenumber(" 00" ))
213
- Assertions .assertEquals(" +1" , NumberHelper .formatPhonenumber(" 001" ))
214
- Assertions .assertEquals(" +1 12345" , NumberHelper .formatPhonenumber(" 001 12345" ))
215
- Assertions .assertEquals(" +49 12345 6789" , NumberHelper .formatPhonenumber(" 012345 6789" ))
216
- }
222
+ @Test
223
+ fun formatPhonenumber () {
224
+ NumberHelper .TEST_COUNTRY_PREFIX_USAGE_IN_TESTCASES_ONLY = " +49"
225
+ Assertions .assertEquals(" 12345678" , NumberHelper .formatPhonenumber(" 12345678" ))
226
+ Assertions .assertEquals(" 0" , NumberHelper .formatPhonenumber(" 0" ))
227
+ Assertions .assertEquals(" 00" , NumberHelper .formatPhonenumber(" 00" ))
228
+ Assertions .assertEquals(" +1" , NumberHelper .formatPhonenumber(" 001" ))
229
+ Assertions .assertEquals(" +1 12345" , NumberHelper .formatPhonenumber(" 001 12345" ))
230
+ Assertions .assertEquals(" +49 12345 6789" , NumberHelper .formatPhonenumber(" 012345 6789" ))
231
+ }
217
232
}
0 commit comments