diff options
author | Kristóf Marussy <kristof@marussy.com> | 2023-04-10 19:18:29 +0200 |
---|---|---|
committer | Kristóf Marussy <kristof@marussy.com> | 2023-04-15 17:15:50 +0200 |
commit | 7c15c0e6e6a035458bdd89a939aacdf4a207e1cd (patch) | |
tree | e9318d8f1c326c05ee981e4ec966fb3fcffd6afa /subprojects/store-query/src/test | |
parent | build: add workflow for REUSE compliance check (diff) | |
download | refinery-7c15c0e6e6a035458bdd89a939aacdf4a207e1cd.tar.gz refinery-7c15c0e6e6a035458bdd89a939aacdf4a207e1cd.tar.zst refinery-7c15c0e6e6a035458bdd89a939aacdf4a207e1cd.zip |
refactor: rename RelationView to SymbolView
* Add NodeFunctionView for symbols that hold function-like (single
associated object for each key) relations as integer values for performance.
Diffstat (limited to 'subprojects/store-query/src/test')
3 files changed, 28 insertions, 28 deletions
diff --git a/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfBuilderTest.java b/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfBuilderTest.java index 70cd386b..152840f8 100644 --- a/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfBuilderTest.java +++ b/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfBuilderTest.java | |||
@@ -9,7 +9,7 @@ import org.junit.jupiter.api.Test; | |||
9 | import tools.refinery.store.query.dnf.Dnf; | 9 | import tools.refinery.store.query.dnf.Dnf; |
10 | import tools.refinery.store.query.literal.BooleanLiteral; | 10 | import tools.refinery.store.query.literal.BooleanLiteral; |
11 | import tools.refinery.store.query.term.Variable; | 11 | import tools.refinery.store.query.term.Variable; |
12 | import tools.refinery.store.query.view.KeyOnlyRelationView; | 12 | import tools.refinery.store.query.view.KeyOnlyView; |
13 | import tools.refinery.store.representation.Symbol; | 13 | import tools.refinery.store.representation.Symbol; |
14 | 14 | ||
15 | import static org.hamcrest.MatcherAssert.assertThat; | 15 | import static org.hamcrest.MatcherAssert.assertThat; |
@@ -22,7 +22,7 @@ class DnfBuilderTest { | |||
22 | var p = Variable.of("p"); | 22 | var p = Variable.of("p"); |
23 | var q = Variable.of("q"); | 23 | var q = Variable.of("q"); |
24 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 24 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
25 | var friendView = new KeyOnlyRelationView<>(friend); | 25 | var friendView = new KeyOnlyView<>(friend); |
26 | 26 | ||
27 | var actual = Dnf.builder() | 27 | var actual = Dnf.builder() |
28 | .parameters(p, q) | 28 | .parameters(p, q) |
@@ -38,7 +38,7 @@ class DnfBuilderTest { | |||
38 | var p = Variable.of("p"); | 38 | var p = Variable.of("p"); |
39 | var q = Variable.of("q"); | 39 | var q = Variable.of("q"); |
40 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 40 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
41 | var friendView = new KeyOnlyRelationView<>(friend); | 41 | var friendView = new KeyOnlyView<>(friend); |
42 | 42 | ||
43 | var actual = Dnf.builder() | 43 | var actual = Dnf.builder() |
44 | .parameters(p, q) | 44 | .parameters(p, q) |
@@ -55,7 +55,7 @@ class DnfBuilderTest { | |||
55 | var p = Variable.of("p"); | 55 | var p = Variable.of("p"); |
56 | var q = Variable.of("q"); | 56 | var q = Variable.of("q"); |
57 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 57 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
58 | var friendView = new KeyOnlyRelationView<>(friend); | 58 | var friendView = new KeyOnlyView<>(friend); |
59 | 59 | ||
60 | var actual = Dnf.builder() | 60 | var actual = Dnf.builder() |
61 | .parameters(p, q) | 61 | .parameters(p, q) |
@@ -72,7 +72,7 @@ class DnfBuilderTest { | |||
72 | var p = Variable.of("p"); | 72 | var p = Variable.of("p"); |
73 | var q = Variable.of("q"); | 73 | var q = Variable.of("q"); |
74 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 74 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
75 | var friendView = new KeyOnlyRelationView<>(friend); | 75 | var friendView = new KeyOnlyView<>(friend); |
76 | 76 | ||
77 | var actual = Dnf.builder() | 77 | var actual = Dnf.builder() |
78 | .parameters(p, q) | 78 | .parameters(p, q) |
@@ -88,7 +88,7 @@ class DnfBuilderTest { | |||
88 | var p = Variable.of("p"); | 88 | var p = Variable.of("p"); |
89 | var q = Variable.of("q"); | 89 | var q = Variable.of("q"); |
90 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 90 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
91 | var friendView = new KeyOnlyRelationView<>(friend); | 91 | var friendView = new KeyOnlyView<>(friend); |
92 | var trueDnf = Dnf.builder().parameter(p).clause().build(); | 92 | var trueDnf = Dnf.builder().parameter(p).clause().build(); |
93 | 93 | ||
94 | var actual = Dnf.builder() | 94 | var actual = Dnf.builder() |
@@ -105,7 +105,7 @@ class DnfBuilderTest { | |||
105 | var p = Variable.of("p"); | 105 | var p = Variable.of("p"); |
106 | var q = Variable.of("q"); | 106 | var q = Variable.of("q"); |
107 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 107 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
108 | var friendView = new KeyOnlyRelationView<>(friend); | 108 | var friendView = new KeyOnlyView<>(friend); |
109 | var falseDnf = Dnf.builder().parameter(p).build(); | 109 | var falseDnf = Dnf.builder().parameter(p).build(); |
110 | 110 | ||
111 | var actual = Dnf.builder() | 111 | var actual = Dnf.builder() |
@@ -123,7 +123,7 @@ class DnfBuilderTest { | |||
123 | var p = Variable.of("p"); | 123 | var p = Variable.of("p"); |
124 | var q = Variable.of("q"); | 124 | var q = Variable.of("q"); |
125 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 125 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
126 | var friendView = new KeyOnlyRelationView<>(friend); | 126 | var friendView = new KeyOnlyView<>(friend); |
127 | var trueDnf = Dnf.builder().parameter(p).clause().build(); | 127 | var trueDnf = Dnf.builder().parameter(p).clause().build(); |
128 | 128 | ||
129 | var actual = Dnf.builder() | 129 | var actual = Dnf.builder() |
@@ -141,7 +141,7 @@ class DnfBuilderTest { | |||
141 | var p = Variable.of("p"); | 141 | var p = Variable.of("p"); |
142 | var q = Variable.of("q"); | 142 | var q = Variable.of("q"); |
143 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 143 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
144 | var friendView = new KeyOnlyRelationView<>(friend); | 144 | var friendView = new KeyOnlyView<>(friend); |
145 | var falseDnf = Dnf.builder().parameter(p).build(); | 145 | var falseDnf = Dnf.builder().parameter(p).build(); |
146 | 146 | ||
147 | var actual = Dnf.builder() | 147 | var actual = Dnf.builder() |
@@ -158,7 +158,7 @@ class DnfBuilderTest { | |||
158 | var p = Variable.of("p"); | 158 | var p = Variable.of("p"); |
159 | var q = Variable.of("q"); | 159 | var q = Variable.of("q"); |
160 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 160 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
161 | var friendView = new KeyOnlyRelationView<>(friend); | 161 | var friendView = new KeyOnlyView<>(friend); |
162 | var falseDnf = Dnf.builder().parameter(p).build(); | 162 | var falseDnf = Dnf.builder().parameter(p).build(); |
163 | 163 | ||
164 | var actual = Dnf.builder() | 164 | var actual = Dnf.builder() |
@@ -175,7 +175,7 @@ class DnfBuilderTest { | |||
175 | var p = Variable.of("p"); | 175 | var p = Variable.of("p"); |
176 | var q = Variable.of("q"); | 176 | var q = Variable.of("q"); |
177 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 177 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
178 | var friendView = new KeyOnlyRelationView<>(friend); | 178 | var friendView = new KeyOnlyView<>(friend); |
179 | var trueDnf = Dnf.builder().parameter(p).clause().build(); | 179 | var trueDnf = Dnf.builder().parameter(p).clause().build(); |
180 | 180 | ||
181 | var actual = Dnf.builder() | 181 | var actual = Dnf.builder() |
@@ -193,7 +193,7 @@ class DnfBuilderTest { | |||
193 | var p = Variable.of("p"); | 193 | var p = Variable.of("p"); |
194 | var q = Variable.of("q"); | 194 | var q = Variable.of("q"); |
195 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 195 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
196 | var friendView = new KeyOnlyRelationView<>(friend); | 196 | var friendView = new KeyOnlyView<>(friend); |
197 | var falseDnf = Dnf.builder().parameter(p).build(); | 197 | var falseDnf = Dnf.builder().parameter(p).build(); |
198 | 198 | ||
199 | var actual = Dnf.builder() | 199 | var actual = Dnf.builder() |
@@ -211,7 +211,7 @@ class DnfBuilderTest { | |||
211 | var p = Variable.of("p"); | 211 | var p = Variable.of("p"); |
212 | var q = Variable.of("q"); | 212 | var q = Variable.of("q"); |
213 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 213 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
214 | var friendView = new KeyOnlyRelationView<>(friend); | 214 | var friendView = new KeyOnlyView<>(friend); |
215 | var trueDnf = Dnf.builder().parameter(p).clause().build(); | 215 | var trueDnf = Dnf.builder().parameter(p).clause().build(); |
216 | 216 | ||
217 | var actual = Dnf.builder() | 217 | var actual = Dnf.builder() |
diff --git a/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfToDefinitionStringTest.java b/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfToDefinitionStringTest.java index 7be57745..e89ab682 100644 --- a/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfToDefinitionStringTest.java +++ b/subprojects/store-query/src/test/java/tools/refinery/store/query/DnfToDefinitionStringTest.java | |||
@@ -8,7 +8,7 @@ package tools.refinery.store.query; | |||
8 | import org.junit.jupiter.api.Test; | 8 | import org.junit.jupiter.api.Test; |
9 | import tools.refinery.store.query.dnf.Dnf; | 9 | import tools.refinery.store.query.dnf.Dnf; |
10 | import tools.refinery.store.query.term.Variable; | 10 | import tools.refinery.store.query.term.Variable; |
11 | import tools.refinery.store.query.view.KeyOnlyRelationView; | 11 | import tools.refinery.store.query.view.KeyOnlyView; |
12 | import tools.refinery.store.representation.Symbol; | 12 | import tools.refinery.store.representation.Symbol; |
13 | 13 | ||
14 | import static org.hamcrest.MatcherAssert.assertThat; | 14 | import static org.hamcrest.MatcherAssert.assertThat; |
@@ -53,7 +53,7 @@ class DnfToDefinitionStringTest { | |||
53 | var p = Variable.of("p"); | 53 | var p = Variable.of("p"); |
54 | var q = Variable.of("q"); | 54 | var q = Variable.of("q"); |
55 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 55 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
56 | var friendView = new KeyOnlyRelationView<>(friend); | 56 | var friendView = new KeyOnlyView<>(friend); |
57 | var dnf = Dnf.builder("Example").parameter(p).clause(friendView.call(p, q)).build(); | 57 | var dnf = Dnf.builder("Example").parameter(p).clause(friendView.call(p, q)).build(); |
58 | 58 | ||
59 | assertThat(dnf.toDefinitionString(), is(""" | 59 | assertThat(dnf.toDefinitionString(), is(""" |
@@ -67,7 +67,7 @@ class DnfToDefinitionStringTest { | |||
67 | var p = Variable.of("p"); | 67 | var p = Variable.of("p"); |
68 | var q = Variable.of("q"); | 68 | var q = Variable.of("q"); |
69 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 69 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
70 | var friendView = new KeyOnlyRelationView<>(friend); | 70 | var friendView = new KeyOnlyView<>(friend); |
71 | var dnf = Dnf.builder("Example").parameter(p).clause(not(friendView.call(p, q))).build(); | 71 | var dnf = Dnf.builder("Example").parameter(p).clause(not(friendView.call(p, q))).build(); |
72 | 72 | ||
73 | assertThat(dnf.toDefinitionString(), is(""" | 73 | assertThat(dnf.toDefinitionString(), is(""" |
@@ -81,7 +81,7 @@ class DnfToDefinitionStringTest { | |||
81 | var p = Variable.of("p"); | 81 | var p = Variable.of("p"); |
82 | var q = Variable.of("q"); | 82 | var q = Variable.of("q"); |
83 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 83 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
84 | var friendView = new KeyOnlyRelationView<>(friend); | 84 | var friendView = new KeyOnlyView<>(friend); |
85 | var dnf = Dnf.builder("Example").parameter(p).clause(friendView.callTransitive(p, q)).build(); | 85 | var dnf = Dnf.builder("Example").parameter(p).clause(friendView.callTransitive(p, q)).build(); |
86 | 86 | ||
87 | assertThat(dnf.toDefinitionString(), is(""" | 87 | assertThat(dnf.toDefinitionString(), is(""" |
@@ -95,7 +95,7 @@ class DnfToDefinitionStringTest { | |||
95 | var p = Variable.of("p"); | 95 | var p = Variable.of("p"); |
96 | var q = Variable.of("q"); | 96 | var q = Variable.of("q"); |
97 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 97 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
98 | var friendView = new KeyOnlyRelationView<>(friend); | 98 | var friendView = new KeyOnlyView<>(friend); |
99 | var dnf = Dnf.builder("Example").parameters(p, q).clause(friendView.call(p, q)).build(); | 99 | var dnf = Dnf.builder("Example").parameters(p, q).clause(friendView.call(p, q)).build(); |
100 | 100 | ||
101 | assertThat(dnf.toDefinitionString(), is(""" | 101 | assertThat(dnf.toDefinitionString(), is(""" |
@@ -109,9 +109,9 @@ class DnfToDefinitionStringTest { | |||
109 | var p = Variable.of("p"); | 109 | var p = Variable.of("p"); |
110 | var q = Variable.of("q"); | 110 | var q = Variable.of("q"); |
111 | var person = new Symbol<>("person", 1, Boolean.class, false); | 111 | var person = new Symbol<>("person", 1, Boolean.class, false); |
112 | var personView = new KeyOnlyRelationView<>(person); | 112 | var personView = new KeyOnlyView<>(person); |
113 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 113 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
114 | var friendView = new KeyOnlyRelationView<>(friend); | 114 | var friendView = new KeyOnlyView<>(friend); |
115 | var dnf = Dnf.builder("Example") | 115 | var dnf = Dnf.builder("Example") |
116 | .parameter(p) | 116 | .parameter(p) |
117 | .clause( | 117 | .clause( |
@@ -134,7 +134,7 @@ class DnfToDefinitionStringTest { | |||
134 | var p = Variable.of("p"); | 134 | var p = Variable.of("p"); |
135 | var q = Variable.of("q"); | 135 | var q = Variable.of("q"); |
136 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 136 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
137 | var friendView = new KeyOnlyRelationView<>(friend); | 137 | var friendView = new KeyOnlyView<>(friend); |
138 | var dnf = Dnf.builder("Example") | 138 | var dnf = Dnf.builder("Example") |
139 | .parameter(p) | 139 | .parameter(p) |
140 | .clause(friendView.call(p, q)) | 140 | .clause(friendView.call(p, q)) |
@@ -156,9 +156,9 @@ class DnfToDefinitionStringTest { | |||
156 | var r = Variable.of("r"); | 156 | var r = Variable.of("r"); |
157 | var s = Variable.of("s"); | 157 | var s = Variable.of("s"); |
158 | var person = new Symbol<>("person", 1, Boolean.class, false); | 158 | var person = new Symbol<>("person", 1, Boolean.class, false); |
159 | var personView = new KeyOnlyRelationView<>(person); | 159 | var personView = new KeyOnlyView<>(person); |
160 | var friend = new Symbol<>("friend", 2, Boolean.class, false); | 160 | var friend = new Symbol<>("friend", 2, Boolean.class, false); |
161 | var friendView = new KeyOnlyRelationView<>(friend); | 161 | var friendView = new KeyOnlyView<>(friend); |
162 | var called = Dnf.builder("Called").parameters(r, s).clause(friendView.call(r, s)).build(); | 162 | var called = Dnf.builder("Called").parameters(r, s).clause(friendView.call(r, s)).build(); |
163 | var dnf = Dnf.builder("Example") | 163 | var dnf = Dnf.builder("Example") |
164 | .parameter(p) | 164 | .parameter(p) |
diff --git a/subprojects/store-query/src/test/java/tools/refinery/store/query/tests/StructurallyEqualToTest.java b/subprojects/store-query/src/test/java/tools/refinery/store/query/tests/StructurallyEqualToTest.java index e292b3ab..a1407288 100644 --- a/subprojects/store-query/src/test/java/tools/refinery/store/query/tests/StructurallyEqualToTest.java +++ b/subprojects/store-query/src/test/java/tools/refinery/store/query/tests/StructurallyEqualToTest.java | |||
@@ -8,7 +8,7 @@ package tools.refinery.store.query.tests; | |||
8 | import org.junit.jupiter.api.Test; | 8 | import org.junit.jupiter.api.Test; |
9 | import tools.refinery.store.query.dnf.Dnf; | 9 | import tools.refinery.store.query.dnf.Dnf; |
10 | import tools.refinery.store.query.term.Variable; | 10 | import tools.refinery.store.query.term.Variable; |
11 | import tools.refinery.store.query.view.KeyOnlyRelationView; | 11 | import tools.refinery.store.query.view.KeyOnlyView; |
12 | import tools.refinery.store.representation.Symbol; | 12 | import tools.refinery.store.representation.Symbol; |
13 | 13 | ||
14 | import static org.hamcrest.CoreMatchers.containsString; | 14 | import static org.hamcrest.CoreMatchers.containsString; |
@@ -22,7 +22,7 @@ class StructurallyEqualToTest { | |||
22 | var p = Variable.of("p"); | 22 | var p = Variable.of("p"); |
23 | var q = Variable.of("q"); | 23 | var q = Variable.of("q"); |
24 | var person = new Symbol<>("Person", 1, Boolean.class, false); | 24 | var person = new Symbol<>("Person", 1, Boolean.class, false); |
25 | var personView = new KeyOnlyRelationView<>(person); | 25 | var personView = new KeyOnlyView<>(person); |
26 | 26 | ||
27 | var expected = Dnf.builder("Expected").parameters(q).clause(personView.call(q)).build(); | 27 | var expected = Dnf.builder("Expected").parameters(q).clause(personView.call(q)).build(); |
28 | var actual = Dnf.builder("Actual").parameters(p).clause(personView.call(p)).build(); | 28 | var actual = Dnf.builder("Actual").parameters(p).clause(personView.call(p)).build(); |
@@ -35,7 +35,7 @@ class StructurallyEqualToTest { | |||
35 | var p = Variable.of("p"); | 35 | var p = Variable.of("p"); |
36 | var q = Variable.of("q"); | 36 | var q = Variable.of("q"); |
37 | var person = new Symbol<>("Person", 1, Boolean.class, false); | 37 | var person = new Symbol<>("Person", 1, Boolean.class, false); |
38 | var personView = new KeyOnlyRelationView<>(person); | 38 | var personView = new KeyOnlyView<>(person); |
39 | 39 | ||
40 | var expected = Dnf.builder("Expected").parameters(q).clause(personView.call(q)).build(); | 40 | var expected = Dnf.builder("Expected").parameters(q).clause(personView.call(q)).build(); |
41 | var actual = Dnf.builder("Actual").parameters(p).clause(personView.call(q)).build(); | 41 | var actual = Dnf.builder("Actual").parameters(p).clause(personView.call(q)).build(); |
@@ -49,7 +49,7 @@ class StructurallyEqualToTest { | |||
49 | var p = Variable.of("p"); | 49 | var p = Variable.of("p"); |
50 | var q = Variable.of("q"); | 50 | var q = Variable.of("q"); |
51 | var person = new Symbol<>("Person", 1, Boolean.class, false); | 51 | var person = new Symbol<>("Person", 1, Boolean.class, false); |
52 | var personView = new KeyOnlyRelationView<>(person); | 52 | var personView = new KeyOnlyView<>(person); |
53 | 53 | ||
54 | var expected = Dnf.builder("Expected").parameters(q).clause( | 54 | var expected = Dnf.builder("Expected").parameters(q).clause( |
55 | Dnf.builder("Expected2").parameters(p).clause(personView.call(p)).build().call(q) | 55 | Dnf.builder("Expected2").parameters(p).clause(personView.call(p)).build().call(q) |
@@ -66,7 +66,7 @@ class StructurallyEqualToTest { | |||
66 | var p = Variable.of("p"); | 66 | var p = Variable.of("p"); |
67 | var q = Variable.of("q"); | 67 | var q = Variable.of("q"); |
68 | var person = new Symbol<>("Person", 1, Boolean.class, false); | 68 | var person = new Symbol<>("Person", 1, Boolean.class, false); |
69 | var personView = new KeyOnlyRelationView<>(person); | 69 | var personView = new KeyOnlyView<>(person); |
70 | 70 | ||
71 | var expected = Dnf.builder("Expected").parameters(q).clause( | 71 | var expected = Dnf.builder("Expected").parameters(q).clause( |
72 | Dnf.builder("Expected2").parameters(p).clause(personView.call(p)).build().call(q) | 72 | Dnf.builder("Expected2").parameters(p).clause(personView.call(p)).build().call(q) |