-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQueueStackProblemsTest.java
More file actions
57 lines (50 loc) · 2.51 KB
/
QueueStackProblemsTest.java
File metadata and controls
57 lines (50 loc) · 2.51 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
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
/**
* @author Brianna Penkala
* This is the testing class for QueueStackProblems
*/
class QueueStackProblemsTest {
/** A field that initializes deques to be used in the methods */
SuperDeque<Integer> exampleDeque1 = new SuperDeque<>();
SuperDeque<Integer> exampleDeque2 = new SuperDeque<>();
SuperDeque<Integer> exampleDeque3 = new SuperDeque<>();
SuperDeque<Integer> exampleDeque4 = new SuperDeque<>();
/** This method sets up the deques to be tested on */
@BeforeEach
void setUp() {
for (int i = 0; i < 7; i++)
exampleDeque1.enqueue(i + 1);
for (int i = 0; i < 7; i++)
exampleDeque2.enqueue(i + 1);
for (int i = 0; i < 7; i++)
exampleDeque3.enqueue(i + 1);
for (int i = 0; i < 7; i++)
exampleDeque4.enqueue(i + 1);
}
/** This method tests the postfix method using large, medium, and small expressions (assuming this will not be used for non-expressions) */
@Test
void postfix() {
assertEquals(81, QueueStackProblems.evaluatePostFix("43 2 19 * +"));
assertEquals(53, QueueStackProblems.evaluatePostFix("27 3 9 * + 1 -"));
assertEquals(14, QueueStackProblems.evaluatePostFix("2 3 4 * +"));
assertEquals(6, QueueStackProblems.evaluatePostFix("2 4 +"));
}
/** This method tests the reverseWords method using short, medium, and long statements */
@Test
void reverseWords() {
assertEquals("retupmoc yM", QueueStackProblems.reverseWords("My computer"));
assertEquals("gfe D c!BA", QueueStackProblems.reverseWords("AB!c D efg"));
assertEquals("a", QueueStackProblems.reverseWords("a"));
assertEquals("serutcurtS ataD ecneicS retupmoC ytisrevinU evreseR nretseW esaC", QueueStackProblems.reverseWords("Case Western Reserve University Computer Science Data Structures"));
}
/** This method tests the reverseK method reversing the beginning, middle, and end of the string */
@Test
void reverseK() {
assertEquals("1, 2, 3, 4, 5, 6, 7", QueueStackProblems.reverseK(exampleDeque1, 1).toString());
assertEquals("4, 3, 2, 1, 5, 6, 7", QueueStackProblems.reverseK(exampleDeque2, 4).toString());
assertEquals("7, 6, 5, 4, 3, 2, 1", QueueStackProblems.reverseK(exampleDeque3, 7).toString());
assertEquals("1, 2, 3, 4, 5, 6, 7", QueueStackProblems.reverseK(exampleDeque4, 0).toString());
}
}