aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/language/src/test
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-12-22 02:19:38 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2023-12-24 17:32:54 +0100
commitc65275be9fce0fbba70094c754690a8bd9228ab4 (patch)
tree8ba97d3668229482f8e25272ebfe62c2d27cca12 /subprojects/language/src/test
parentrefactor(language): use file extension provider (diff)
downloadrefinery-c65275be9fce0fbba70094c754690a8bd9228ab4.tar.gz
refinery-c65275be9fce0fbba70094c754690a8bd9228ab4.tar.zst
refinery-c65275be9fce0fbba70094c754690a8bd9228ab4.zip
feat: solution serializer
Diffstat (limited to 'subprojects/language/src/test')
-rw-r--r--subprojects/language/src/test/java/tools/refinery/language/tests/serializer/ProblemSerializerTest.java32
1 files changed, 11 insertions, 21 deletions
diff --git a/subprojects/language/src/test/java/tools/refinery/language/tests/serializer/ProblemSerializerTest.java b/subprojects/language/src/test/java/tools/refinery/language/tests/serializer/ProblemSerializerTest.java
index 9f4f2bbf..4a3a9ac2 100644
--- a/subprojects/language/src/test/java/tools/refinery/language/tests/serializer/ProblemSerializerTest.java
+++ b/subprojects/language/src/test/java/tools/refinery/language/tests/serializer/ProblemSerializerTest.java
@@ -74,8 +74,8 @@ class ProblemSerializerTest {
74 } 74 }
75 75
76 @ParameterizedTest 76 @ParameterizedTest
77 @MethodSource 77 @MethodSource("assertionTest")
78 void defaultAssertionTest(LogicValue value, String valueAsString) { 78 void defaultAssertionTest(LogicValue value, String serializedAssertion) {
79 var pred = createPred(); 79 var pred = createPred();
80 var node = ProblemFactory.eINSTANCE.createNode(); 80 var node = ProblemFactory.eINSTANCE.createNode();
81 node.setName("a"); 81 node.setName("a");
@@ -88,12 +88,7 @@ class ProblemSerializerTest {
88 pred foo(node p). 88 pred foo(node p).
89 89
90 indiv a. 90 indiv a.
91 default foo(a):\040""" + valueAsString + ".\n"); 91 default\040""" + serializedAssertion + "\n");
92 }
93
94 static Stream<Arguments> defaultAssertionTest() {
95 return Stream.of(Arguments.of(LogicValue.TRUE, "true"), Arguments.of(LogicValue.FALSE, "false"),
96 Arguments.of(LogicValue.UNKNOWN, "unknown"), Arguments.of(LogicValue.ERROR, "error"));
97 } 92 }
98 93
99 @Test 94 @Test
@@ -233,19 +228,14 @@ class ProblemSerializerTest {
233 } 228 }
234 229
235 private void assertSerializedResult(String expected) { 230 private void assertSerializedResult(String expected) {
236 var outputStream = new ByteArrayOutputStream(); 231 String problemString;
237 try { 232 try (var outputStream = new ByteArrayOutputStream()) {
238 resource.save(outputStream, Map.of()); 233 resource.save(outputStream, Map.of());
239 } catch (IOException e) { 234 problemString = outputStream.toString();
240 throw new AssertionError("Failed to serialize problem", e); 235 } catch (IOException e) {
241 } finally { 236 throw new AssertionError("Failed to serialize problem", e);
242 try { 237 }
243 outputStream.close(); 238 // Nothing to handle in a test.
244 } catch (IOException e) {
245 // Nothing to handle in a test.
246 }
247 }
248 var problemString = outputStream.toString();
249 239
250 assertThat(problemString.replace("\r\n", "\n"), equalTo(expected.replace("\r\n", "\n"))); 240 assertThat(problemString.replace("\r\n", "\n"), equalTo(expected.replace("\r\n", "\n")));
251 } 241 }