1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.shardingsphere.test.it.sql.parser.internal.asserts;
19
20 import lombok.Getter;
21 import lombok.RequiredArgsConstructor;
22 import org.apache.shardingsphere.test.it.sql.parser.internal.cases.sql.type.SQLCaseType;
23
24 import java.util.List;
25
26
27
28
29 @RequiredArgsConstructor
30 public final class SQLCaseAssertContext {
31
32 private final String caseId;
33
34 private final String sql;
35
36 private final List<String> params;
37
38 @Getter
39 private final SQLCaseType caseType;
40
41
42
43
44
45
46
47 public String getText(final String failureMessage) {
48 StringBuilder result = new StringBuilder(System.lineSeparator());
49 appendSQLCaseId(result);
50 appendSQL(result);
51 appendFailureMessage(failureMessage, result);
52 return result.toString();
53 }
54
55 private void appendSQLCaseId(final StringBuilder builder) {
56 builder.append("SQL Case ID : ").append(caseId).append(System.lineSeparator());
57 }
58
59 private void appendSQL(final StringBuilder builder) {
60 builder.append("SQL : ");
61 if (SQLCaseType.PLACEHOLDER == caseType) {
62 builder.append(sql).append(System.lineSeparator()).append("SQL Params : ").append(params).append(System.lineSeparator());
63 } else {
64 builder.append(sql);
65 }
66 }
67
68 private void appendFailureMessage(final String failureMessage, final StringBuilder builder) {
69 builder.append(System.lineSeparator()).append(failureMessage).append(System.lineSeparator());
70 }
71 }