Skip to content

Commit 05d3a63

Browse files
committed
test: 수식 트리 테스트 코드 작성
1 parent 8baad0a commit 05d3a63

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
package tree.expressiontree;
2+
3+
import static org.assertj.core.api.Assertions.assertThat;
4+
5+
import org.junit.jupiter.api.BeforeEach;
6+
import org.junit.jupiter.api.DisplayName;
7+
import org.junit.jupiter.api.Test;
8+
import stack.InfixToPostfix;
9+
10+
class ExpressionTreeTest {
11+
12+
InfixToPostfix infixToPostfix;
13+
14+
@BeforeEach
15+
void setUp() {
16+
infixToPostfix = new InfixToPostfix();
17+
}
18+
19+
@Test
20+
@DisplayName("수식_트리_테스트")
21+
void 수식_트리_테스트() {
22+
String infixExpression = "1 + 2";
23+
char[] postfixExpression = infixToPostfix.convertInputToPostfix(infixExpression);
24+
25+
ExpressionTree expressionTree = new ExpressionTreeImpl(postfixExpression);
26+
assertThat(expressionTree.evaluateTree()).isEqualTo(3);
27+
28+
StringBuilder sb = new StringBuilder();
29+
expressionTree.prefixTypeExpression(sb);
30+
assertThat(sb.toString()).isEqualTo("+12");
31+
32+
sb = new StringBuilder();
33+
expressionTree.infixTypeExpression(sb);
34+
assertThat(sb.toString()).isEqualTo("1+2");
35+
36+
sb = new StringBuilder();
37+
expressionTree.postfixTypeExpression(sb);
38+
assertThat(sb.toString()).isEqualTo("12+");
39+
}
40+
41+
@Test
42+
@DisplayName("수식_트리_테스트2")
43+
void 수식_트리_테스트2() {
44+
String infixExpression = "1 + 2 * 7";
45+
char[] postfixExpression = infixToPostfix.convertInputToPostfix(infixExpression);
46+
47+
ExpressionTree expressionTree = new ExpressionTreeImpl(postfixExpression);
48+
assertThat(expressionTree.evaluateTree()).isEqualTo(3);
49+
50+
StringBuilder sb = new StringBuilder();
51+
expressionTree.prefixTypeExpression(sb);
52+
assertThat(sb.toString()).isEqualTo("*+127");
53+
54+
sb = new StringBuilder();
55+
expressionTree.infixTypeExpression(sb);
56+
assertThat(sb.toString()).isEqualTo("1+2*7");
57+
58+
sb = new StringBuilder();
59+
expressionTree.postfixTypeExpression(sb);
60+
assertThat(sb.toString()).isEqualTo("12+7*");
61+
}
62+
}

0 commit comments

Comments
 (0)