Revize e17aa675
Přidáno uživatelem Tomáš Šimandl před více než 6 roky(ů)
sources/src/test/java/cz/zcu/kiv/imiger/tests/backend/GraphFilterTest.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.imiger.tests.backend; |
2 | 2 |
|
3 |
import cz.zcu.kiv.offscreen.api.EdgeInterface;
|
|
4 |
import cz.zcu.kiv.offscreen.api.GraphInterface;
|
|
5 |
import cz.zcu.kiv.offscreen.graph.EdgeImpl;
|
|
3 |
import cz.zcu.kiv.offscreen.api.Edge; |
|
4 |
import cz.zcu.kiv.offscreen.api.SubedgeInfo;
|
|
5 |
import cz.zcu.kiv.offscreen.graph.Graph;
|
|
6 | 6 |
import cz.zcu.kiv.offscreen.graph.GraphManager; |
7 |
import cz.zcu.kiv.offscreen.graph.SubedgeInfo; |
|
8 | 7 |
import cz.zcu.kiv.offscreen.graph.loader.GraphJSONDataLoader; |
9 | 8 |
import cz.zcu.kiv.offscreen.graph.loader.JSONConfigLoader; |
10 | 9 |
import org.junit.jupiter.api.Assertions; |
... | ... | |
37 | 36 |
|
38 | 37 |
@Test |
39 | 38 |
void testFilter1a() { |
40 |
GraphInterface graph = createGraph("test1a.json");
|
|
39 |
Graph graph = createGraph("test1a.json"); |
|
41 | 40 |
|
42 |
List<String> vertexIds = new ArrayList<>();
|
|
43 |
vertexIds.add("32");
|
|
44 |
vertexIds.add("9");
|
|
45 |
vertexIds.add("1");
|
|
46 |
vertexIds.add("2");
|
|
41 |
List<Integer> vertexIds = new ArrayList<>();
|
|
42 |
vertexIds.add(32);
|
|
43 |
vertexIds.add(9);
|
|
44 |
vertexIds.add(1);
|
|
45 |
vertexIds.add(2);
|
|
47 | 46 |
|
48 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
47 |
List<Edge> edges = new ArrayList<>(); |
|
49 | 48 |
|
50 | 49 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
51 | 50 |
subedgeInfos.add(createTestSubEdge(117)); |
52 |
edges.add(createTestEdge("1", "32", subedgeInfos));
|
|
51 |
edges.add(createTestEdge(1, 32, subedgeInfos));
|
|
53 | 52 |
|
54 | 53 |
subedgeInfos = new ArrayList<>(); |
55 | 54 |
subedgeInfos.add(createTestSubEdge(10)); |
56 |
edges.add(createTestEdge("1", "9", subedgeInfos));
|
|
55 |
edges.add(createTestEdge(1, 9, subedgeInfos));
|
|
57 | 56 |
|
58 | 57 |
subedgeInfos = new ArrayList<>(); |
59 | 58 |
subedgeInfos.add(createTestSubEdge(8)); |
60 |
edges.add(createTestEdge("2", "9", subedgeInfos));
|
|
59 |
edges.add(createTestEdge(2, 9, subedgeInfos));
|
|
61 | 60 |
|
62 | 61 |
graphContains(graph, vertexIds, edges); |
63 | 62 |
} |
64 | 63 |
|
65 | 64 |
@Test |
66 | 65 |
void testFilter1b() { |
67 |
GraphInterface graph = createGraph("test1b.json");
|
|
66 |
Graph graph = createGraph("test1b.json"); |
|
68 | 67 |
|
69 |
List<String> vertexIds = new ArrayList<>();
|
|
70 |
vertexIds.add("2");
|
|
71 |
vertexIds.add("9");
|
|
72 |
vertexIds.add("18");
|
|
68 |
List<Integer> vertexIds = new ArrayList<>();
|
|
69 |
vertexIds.add(2);
|
|
70 |
vertexIds.add(9);
|
|
71 |
vertexIds.add(18);
|
|
73 | 72 |
|
74 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
73 |
List<Edge> edges = new ArrayList<>(); |
|
75 | 74 |
|
76 | 75 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
77 | 76 |
subedgeInfos.add(createTestSubEdge(9)); |
78 |
edges.add(createTestEdge("9", "2", subedgeInfos));
|
|
77 |
edges.add(createTestEdge(9, 2, subedgeInfos));
|
|
79 | 78 |
|
80 | 79 |
subedgeInfos = new ArrayList<>(); |
81 | 80 |
subedgeInfos.add(createTestSubEdge(86)); |
82 |
edges.add(createTestEdge("18", "2", subedgeInfos));
|
|
81 |
edges.add(createTestEdge(18, 2, subedgeInfos));
|
|
83 | 82 |
|
84 | 83 |
graphContains(graph, vertexIds, edges); |
85 | 84 |
} |
86 | 85 |
|
87 | 86 |
@Test |
88 | 87 |
void testFilter1c() { |
89 |
GraphInterface graph = createGraph("test1c.json");
|
|
88 |
Graph graph = createGraph("test1c.json"); |
|
90 | 89 |
|
91 |
List<String> vertexIds = new ArrayList<>();
|
|
92 |
vertexIds.add("2");
|
|
93 |
vertexIds.add("18");
|
|
94 |
vertexIds.add("32");
|
|
90 |
List<Integer> vertexIds = new ArrayList<>();
|
|
91 |
vertexIds.add(2);
|
|
92 |
vertexIds.add(18);
|
|
93 |
vertexIds.add(32);
|
|
95 | 94 |
|
96 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
95 |
List<Edge> edges = new ArrayList<>(); |
|
97 | 96 |
|
98 | 97 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
99 | 98 |
subedgeInfos.add(createTestSubEdge(79)); |
100 |
edges.add(createTestEdge("2", "18", subedgeInfos));
|
|
99 |
edges.add(createTestEdge(2, 18, subedgeInfos));
|
|
101 | 100 |
|
102 | 101 |
subedgeInfos = new ArrayList<>(); |
103 | 102 |
subedgeInfos.add(createTestSubEdge(86)); |
104 |
edges.add(createTestEdge("18", "2", subedgeInfos));
|
|
103 |
edges.add(createTestEdge(18, 2, subedgeInfos));
|
|
105 | 104 |
|
106 | 105 |
graphContains(graph, vertexIds, edges); |
107 | 106 |
} |
108 | 107 |
|
109 | 108 |
@Test |
110 | 109 |
void testFilter1d() { |
111 |
GraphInterface graph = createGraph("test1d.json");
|
|
110 |
Graph graph = createGraph("test1d.json"); |
|
112 | 111 |
|
113 |
List<String> vertexIds = new ArrayList<>();
|
|
114 |
vertexIds.add("1");
|
|
115 |
vertexIds.add("9");
|
|
116 |
vertexIds.add("32");
|
|
112 |
List<Integer> vertexIds = new ArrayList<>();
|
|
113 |
vertexIds.add(1);
|
|
114 |
vertexIds.add(9);
|
|
115 |
vertexIds.add(32);
|
|
117 | 116 |
|
118 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
117 |
List<Edge> edges = new ArrayList<>(); |
|
119 | 118 |
|
120 | 119 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
121 | 120 |
subedgeInfos.add(createTestSubEdge(10)); |
122 |
edges.add(createTestEdge("1", "9", subedgeInfos));
|
|
121 |
edges.add(createTestEdge(1, 9, subedgeInfos));
|
|
123 | 122 |
|
124 | 123 |
subedgeInfos = new ArrayList<>(); |
125 | 124 |
subedgeInfos.add(createTestSubEdge(117)); |
126 |
edges.add(createTestEdge("1", "32", subedgeInfos));
|
|
125 |
edges.add(createTestEdge(1, 32, subedgeInfos));
|
|
127 | 126 |
|
128 | 127 |
graphContains(graph, vertexIds, edges); |
129 | 128 |
} |
130 | 129 |
|
131 | 130 |
@Test |
132 | 131 |
void testFilter1e() { |
133 |
GraphInterface graph = createGraph("test1e.json");
|
|
132 |
Graph graph = createGraph("test1e.json"); |
|
134 | 133 |
|
135 |
List<String> vertexIds = new ArrayList<>();
|
|
136 |
vertexIds.add("1");
|
|
137 |
vertexIds.add("32");
|
|
138 |
vertexIds.add("9");
|
|
134 |
List<Integer> vertexIds = new ArrayList<>();
|
|
135 |
vertexIds.add(1);
|
|
136 |
vertexIds.add(32);
|
|
137 |
vertexIds.add(9);
|
|
139 | 138 |
|
140 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
139 |
List<Edge> edges = new ArrayList<>(); |
|
141 | 140 |
|
142 | 141 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
143 | 142 |
subedgeInfos.add(createTestSubEdge(11)); |
144 |
edges.add(createTestEdge("9", "1", subedgeInfos));
|
|
143 |
edges.add(createTestEdge(9, 1, subedgeInfos));
|
|
145 | 144 |
|
146 | 145 |
subedgeInfos = new ArrayList<>(); |
147 | 146 |
subedgeInfos.add(createTestSubEdge(117)); |
148 |
edges.add(createTestEdge("1", "32", subedgeInfos));
|
|
147 |
edges.add(createTestEdge(1, 32, subedgeInfos));
|
|
149 | 148 |
|
150 | 149 |
graphContains(graph, vertexIds, edges); |
151 | 150 |
} |
152 | 151 |
|
153 | 152 |
@Test |
154 | 153 |
void testFilter1f() { |
155 |
GraphInterface graph = createGraph("test1f.json");
|
|
154 |
Graph graph = createGraph("test1f.json"); |
|
156 | 155 |
|
157 |
List<String> vertexIds = new ArrayList<>();
|
|
158 |
vertexIds.add("1");
|
|
159 |
vertexIds.add("2");
|
|
160 |
vertexIds.add("18");
|
|
156 |
List<Integer> vertexIds = new ArrayList<>();
|
|
157 |
vertexIds.add(1);
|
|
158 |
vertexIds.add(2);
|
|
159 |
vertexIds.add(18);
|
|
161 | 160 |
|
162 |
List<EdgeInterface> edges = new ArrayList<>();
|
|
161 |
List<Edge> edges = new ArrayList<>(); |
|
163 | 162 |
|
164 | 163 |
List<SubedgeInfo> subedgeInfos = new ArrayList<>(); |
165 | 164 |
subedgeInfos.add(createTestSubEdge(86)); |
166 |
edges.add(createTestEdge("18", "2", subedgeInfos));
|
|
165 |
edges.add(createTestEdge(18, 2, subedgeInfos));
|
|
167 | 166 |
|
168 | 167 |
graphContains(graph, vertexIds, edges); |
169 | 168 |
} |
170 | 169 |
|
171 |
private GraphInterface createGraph(String configFilename) {
|
|
170 |
private Graph createGraph(String configFilename) { |
|
172 | 171 |
String configLocation = testDirectory + "\\config"; |
173 | 172 |
JSONConfigLoader configLoader = new JSONConfigLoader(graphManager, configLocation); |
174 | 173 |
JSONConfigLoader.configFilename = configFilename; |
... | ... | |
176 | 175 |
} |
177 | 176 |
|
178 | 177 |
private SubedgeInfo createTestSubEdge(int id) { |
179 |
SubedgeInfo subedge = new SubedgeInfo(0, null); |
|
180 |
subedge.id = id; |
|
181 |
|
|
182 |
return subedge; |
|
178 |
return new SubedgeInfo(id,0, null); |
|
183 | 179 |
} |
184 | 180 |
|
185 |
private EdgeInterface createTestEdge(String from, String to, List<SubedgeInfo> subedges) { |
|
186 |
EdgeInterface edge = new EdgeImpl(0, from, to, false, ""); |
|
187 |
edge.setSubedgeInfo(subedges); |
|
188 |
|
|
189 |
return edge; |
|
181 |
private Edge createTestEdge(int from, int to, List<SubedgeInfo> subedges) { |
|
182 |
return new Edge(0, from, to, "", subedges); |
|
190 | 183 |
} |
191 | 184 |
|
192 | 185 |
/** |
... | ... | |
195 | 188 |
* @param vertexIds - vertices, that graph must contain in order to pass the test. |
196 | 189 |
* @param edges - edges, that graph must contain in order to pass the test. |
197 | 190 |
*/ |
198 |
private void graphContains(GraphInterface graph, List<String> vertexIds, List<EdgeInterface> edges) {
|
|
191 |
private void graphContains(Graph graph, List<Integer> vertexIds, List<Edge> edges) {
|
|
199 | 192 |
Assertions.assertEquals(graph.getVertices().size(), vertexIds.size()); |
200 | 193 |
Assertions.assertEquals(graph.getEdges().size(), edges.size()); |
201 | 194 |
|
202 | 195 |
// Vertices |
203 |
for (String vertexId : graph.getVertices().keySet()) {
|
|
196 |
for (int vertexId : graph.getVertices().keySet()) {
|
|
204 | 197 |
Assertions.assertTrue(vertexIds.contains(vertexId)); |
205 | 198 |
} |
206 | 199 |
|
207 | 200 |
// Edges |
208 |
for (EdgeInterface edge : graph.getEdges()) {
|
|
201 |
for (Edge edge : graph.getEdges()) { |
|
209 | 202 |
Assertions.assertTrue(edges.contains(edge)); |
210 | 203 |
|
211 |
EdgeInterface edgeCmp = edges.get(edges.indexOf(edge));
|
|
204 |
Edge edgeCmp = edges.get(edges.indexOf(edge)); |
|
212 | 205 |
Assertions.assertEquals(edge.getSubedgeInfo().size(), edgeCmp.getSubedgeInfo().size()); |
213 | 206 |
|
214 | 207 |
for (SubedgeInfo subedgeInfo : edge.getSubedgeInfo()) { |
... | ... | |
225 | 218 |
*/ |
226 | 219 |
private boolean containsSubedgeWithId(SubedgeInfo subedgeInfo, List<SubedgeInfo> subedgeInfos) { |
227 | 220 |
for (SubedgeInfo s : subedgeInfos) { |
228 |
if (s.id == subedgeInfo.id) {
|
|
221 |
if (s.getOriginalId() == subedgeInfo.getOriginalId()) {
|
|
229 | 222 |
return true; |
230 | 223 |
} |
231 | 224 |
} |
Také k dispozici: Unified diff
Resolved backend tests