aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/store-query/src/test
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-04-10 19:18:29 +0200
committerLibravatar Kristóf Marussy <kristof@marussy.com>2023-04-15 17:15:50 +0200
commit7c15c0e6e6a035458bdd89a939aacdf4a207e1cd (patch)
treee9318d8f1c326c05ee981e4ec966fb3fcffd6afa /subprojects/store-query/src/test
parentbuild: add workflow for REUSE compliance check (diff)
downloadrefinery-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')
-rw-r--r--subprojects/store-query/src/test/java/tools/refinery/store/query/DnfBuilderTest.java26
-rw-r--r--subprojects/store-query/src/test/java/tools/refinery/store/query/DnfToDefinitionStringTest.java20
-rw-r--r--subprojects/store-query/src/test/java/tools/refinery/store/query/tests/StructurallyEqualToTest.java10
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;
9import tools.refinery.store.query.dnf.Dnf; 9import tools.refinery.store.query.dnf.Dnf;
10import tools.refinery.store.query.literal.BooleanLiteral; 10import tools.refinery.store.query.literal.BooleanLiteral;
11import tools.refinery.store.query.term.Variable; 11import tools.refinery.store.query.term.Variable;
12import tools.refinery.store.query.view.KeyOnlyRelationView; 12import tools.refinery.store.query.view.KeyOnlyView;
13import tools.refinery.store.representation.Symbol; 13import tools.refinery.store.representation.Symbol;
14 14
15import static org.hamcrest.MatcherAssert.assertThat; 15import 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;
8import org.junit.jupiter.api.Test; 8import org.junit.jupiter.api.Test;
9import tools.refinery.store.query.dnf.Dnf; 9import tools.refinery.store.query.dnf.Dnf;
10import tools.refinery.store.query.term.Variable; 10import tools.refinery.store.query.term.Variable;
11import tools.refinery.store.query.view.KeyOnlyRelationView; 11import tools.refinery.store.query.view.KeyOnlyView;
12import tools.refinery.store.representation.Symbol; 12import tools.refinery.store.representation.Symbol;
13 13
14import static org.hamcrest.MatcherAssert.assertThat; 14import 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;
8import org.junit.jupiter.api.Test; 8import org.junit.jupiter.api.Test;
9import tools.refinery.store.query.dnf.Dnf; 9import tools.refinery.store.query.dnf.Dnf;
10import tools.refinery.store.query.term.Variable; 10import tools.refinery.store.query.term.Variable;
11import tools.refinery.store.query.view.KeyOnlyRelationView; 11import tools.refinery.store.query.view.KeyOnlyView;
12import tools.refinery.store.representation.Symbol; 12import tools.refinery.store.representation.Symbol;
13 13
14import static org.hamcrest.CoreMatchers.containsString; 14import 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)