-
Notifications
You must be signed in to change notification settings - Fork 0
/
CheckpointControllerTest.java
157 lines (124 loc) · 6.28 KB
/
CheckpointControllerTest.java
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
package br.com.fiap.checkpoint.controller;
import org.junit.jupiter.api.Test;
import org.springframework.http.ResponseEntity;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThrows;
public class CheckpointControllerTest {
private CheackpointController checkpointController = new CheackpointController();
// Testes do EXERCICIO 7 - Verificar Palíndromo
@Test
public void testPalindromoEVerdadeiro(){
String palindromo = "madam";
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(true, resposta);
}
@Test
public void testPalindromoComFraseEVerdadeiro(){
String palindromo = "A man, a plan, a canal, Panama";
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(true, resposta);
}
@Test
public void testNaoPalindromoComCaracteresDiferentesReverso() {
String palavra = "hello";
boolean resposta = checkpointController.isPalindrome(palavra);
assertEquals(false, resposta);
}
@Test
public void testPalindromoComFraseEFalso(){
String palindromo = "Digital Business Enablement";
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(false, resposta);
}
@Test
public void testPalindromoComCaracteresEspeciaisNoMeio(){
String palindromo = "p*&$%*a#-()_p*¨%"; // Utilizando o regex a palavra vai ser pap
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(true, resposta);
}
@Test
public void testPalindromoComEspaçosEmBranco(){
String palindromo = "A m a n , a p l a n, a c a n a l, P a n a m a";
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(true, resposta);
}
@Test
public void testPalindromoComPalavraMaiusculasEMinusculas(){
String palindromo = "DiGiTal BuSiNeSs EnAbLeMeNt";
boolean resposta = checkpointController.isPalindrome(palindromo);
assertEquals(false, resposta);
}
// Testes do EXERCICIO 5 - Número Máximo de Consecutivos
@Test
public void testMaiorQuantidadeDeUnsNoComeço(){
int[] numeros = {1,1,1,0,0,1,1};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("3");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMaiorQuantidadeDeUnsNoMeio(){
int[] numeros = {1,0,1,1,1,1,0,1};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("4");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMaiorQuantidadeDeUnsNoFinal(){
int[] numeros = {1,0,1,1,0,0,1,1,1,1,1};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("5");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testEnviandoNumeroSemSerBinario(){
int[] numeros = {1,0,1,1,0,2};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.badRequest().body("ACEITO APENAS 1 ou 0! Numero inválido: 2");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMatrixVazia(){
int[] numeros = {};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("0");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMatrixApenasComZeros(){
int[] numeros = {0,0,0,0,0};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("0");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMatrixApenasComUns(){
int[] numeros = {1,1,1,1,1};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("5");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMatrixComZerosEUnsIntercalados(){
int[] numeros = {0,1,0,1,0,1,0,1};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("1");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
@Test
public void testMatrixComUmElemento(){
int[] numeros = {0};
ResponseEntity<String> maxConsecutivesOnes = checkpointController.findMaxConsecutivesOnes(numeros);
ResponseEntity<String> expectedResponse = ResponseEntity.ok().body("0");
assertEquals(expectedResponse.getStatusCode(), maxConsecutivesOnes.getStatusCode());
assertEquals(expectedResponse.getBody(), maxConsecutivesOnes.getBody());
}
}