diff options
author | nagilooh <ficsorattila96@gmail.com> | 2023-08-02 14:07:35 +0200 |
---|---|---|
committer | nagilooh <ficsorattila96@gmail.com> | 2023-08-02 14:07:35 +0200 |
commit | c93d455d2459c2fbe0cfce7693d592986f65d44c (patch) | |
tree | cd29acd462c7934ed26ba1a7370b721033841e63 | |
parent | Merge remote-tracking branch 'origin/main' into design-space-exploration (diff) | |
download | refinery-c93d455d2459c2fbe0cfce7693d592986f65d44c.tar.gz refinery-c93d455d2459c2fbe0cfce7693d592986f65d44c.tar.zst refinery-c93d455d2459c2fbe0cfce7693d592986f65d44c.zip |
Move DSE to new subproject
-rw-r--r-- | settings.gradle.kts | 1 | ||||
-rw-r--r-- | subprojects/store-dse/build.gradle.kts | 16 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/ActionFactory.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/ActionFactory.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationAdapter.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationAdapter.java) | 10 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationBuilder.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationBuilder.java) | 7 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationStoreAdapter.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationStoreAdapter.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/Strategy.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/Strategy.java) | 18 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/Activation.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/Activation.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationAdapterImpl.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationAdapterImpl.java) | 14 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationBuilderImpl.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationBuilderImpl.java) | 8 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java) | 8 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/TransformationRule.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/TransformationRule.java) | 4 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/AlwaysSatisfiedDummyHardObjective.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/AlwaysSatisfiedDummyHardObjective.java) | 4 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/BaseObjective.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/BaseObjective.java) | 4 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Comparators.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Comparators.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Fitness.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Fitness.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Objective.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Objective.java) | 4 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/ObjectiveComparatorHelper.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/ObjectiveComparatorHelper.java) | 2 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/BestFirstStrategy.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/BestFirstStrategy.java) | 12 | ||||
-rw-r--r-- | subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/DepthFirstStrategy.java (renamed from subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/DepthFirstStrategy.java) | 10 | ||||
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/CRAExamplesTest.java (renamed from subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/CRAExamplesTest.java) | 8 | ||||
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java (renamed from subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DebugTest.java) | 8 | ||||
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/DesignSpaceExplorationTest.java (renamed from subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DesignSpaceExplorationTest.java) | 8 | ||||
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/TransformationRuleTest.java (renamed from subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/TransformationRuleTest.java) | 6 | ||||
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/tests/QueryAssertions.java | 57 |
25 files changed, 145 insertions, 74 deletions
diff --git a/settings.gradle.kts b/settings.gradle.kts index 8b53e7f7..0eae2800 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts | |||
@@ -14,6 +14,7 @@ include( | |||
14 | "language-semantics", | 14 | "language-semantics", |
15 | "language-web", | 15 | "language-web", |
16 | "store", | 16 | "store", |
17 | "store-dse", | ||
17 | "store-query", | 18 | "store-query", |
18 | "store-query-viatra", | 19 | "store-query-viatra", |
19 | "store-reasoning", | 20 | "store-reasoning", |
diff --git a/subprojects/store-dse/build.gradle.kts b/subprojects/store-dse/build.gradle.kts new file mode 100644 index 00000000..bb1dee7d --- /dev/null +++ b/subprojects/store-dse/build.gradle.kts | |||
@@ -0,0 +1,16 @@ | |||
1 | /* | ||
2 | * SPDX-FileCopyrightText: 2021-2023 The Refinery Authors <https://refinery.tools/> | ||
3 | * | ||
4 | * SPDX-License-Identifier: EPL-2.0 | ||
5 | */ | ||
6 | |||
7 | plugins { | ||
8 | id("tools.refinery.gradle.java-library") | ||
9 | } | ||
10 | |||
11 | dependencies { | ||
12 | api(project(":refinery-store-query")) | ||
13 | api(project(":refinery-store-query-viatra")) | ||
14 | api(project(":refinery-store-reasoning")) | ||
15 | api(project(":refinery-visualization")) | ||
16 | } | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/ActionFactory.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/ActionFactory.java index e2f452c3..2af22963 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/ActionFactory.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/ActionFactory.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import org.eclipse.collections.api.block.procedure.Procedure; | 3 | import org.eclipse.collections.api.block.procedure.Procedure; |
4 | import tools.refinery.store.model.Model; | 4 | import tools.refinery.store.model.Model; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationAdapter.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationAdapter.java index ca780855..729a6fc9 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationAdapter.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationAdapter.java | |||
@@ -1,11 +1,11 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.ModelAdapter; | 3 | import tools.refinery.store.adapter.ModelAdapter; |
4 | import tools.refinery.store.map.Version; | 4 | import tools.refinery.store.map.Version; |
5 | import tools.refinery.store.query.dse.internal.Activation; | 5 | import tools.refinery.store.dse.internal.Activation; |
6 | import tools.refinery.store.query.dse.internal.DesignSpaceExplorationBuilderImpl; | 6 | import tools.refinery.store.dse.internal.DesignSpaceExplorationBuilderImpl; |
7 | import tools.refinery.store.query.dse.objectives.Fitness; | 7 | import tools.refinery.store.dse.objectives.Fitness; |
8 | import tools.refinery.store.query.dse.objectives.ObjectiveComparatorHelper; | 8 | import tools.refinery.store.dse.objectives.ObjectiveComparatorHelper; |
9 | import tools.refinery.store.tuple.Tuple; | 9 | import tools.refinery.store.tuple.Tuple; |
10 | import tools.refinery.store.tuple.Tuple1; | 10 | import tools.refinery.store.tuple.Tuple1; |
11 | 11 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationBuilder.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationBuilder.java index 58eac681..8ca0037d 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationBuilder.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationBuilder.java | |||
@@ -1,10 +1,9 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.ModelAdapterBuilder; | 3 | import tools.refinery.store.adapter.ModelAdapterBuilder; |
4 | import tools.refinery.store.query.dnf.AnyQuery; | ||
5 | import tools.refinery.store.query.dnf.RelationalQuery; | 4 | import tools.refinery.store.query.dnf.RelationalQuery; |
6 | import tools.refinery.store.query.dse.internal.TransformationRule; | 5 | import tools.refinery.store.dse.internal.TransformationRule; |
7 | import tools.refinery.store.query.dse.objectives.Objective; | 6 | import tools.refinery.store.dse.objectives.Objective; |
8 | 7 | ||
9 | import java.util.Collection; | 8 | import java.util.Collection; |
10 | import java.util.List; | 9 | import java.util.List; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationStoreAdapter.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationStoreAdapter.java index 21b10f0e..5964cd82 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/DesignSpaceExplorationStoreAdapter.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/DesignSpaceExplorationStoreAdapter.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.ModelStoreAdapter; | 3 | import tools.refinery.store.adapter.ModelStoreAdapter; |
4 | 4 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/Strategy.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/Strategy.java index 0aeea818..cef43386 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/Strategy.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/Strategy.java | |||
@@ -1,10 +1,8 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import tools.refinery.store.model.Model; | 3 | public interface Strategy { |
4 | 4 | ||
5 | public interface Strategy { | 5 | public void initStrategy(DesignSpaceExplorationAdapter designSpaceExplorationAdapter); |
6 | 6 | ||
7 | public void initStrategy(DesignSpaceExplorationAdapter designSpaceExplorationAdapter); | 7 | public void explore(); |
8 | 8 | } | |
9 | public void explore(); | ||
10 | } | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/Activation.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/Activation.java index 82a4c978..f1de00e6 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/Activation.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/Activation.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.query.dse.internal; | 1 | package tools.refinery.store.dse.internal; |
2 | 2 | ||
3 | import tools.refinery.store.tuple.Tuple; | 3 | import tools.refinery.store.tuple.Tuple; |
4 | 4 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationAdapterImpl.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationAdapterImpl.java index d2a8e6fa..5fb54da9 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationAdapterImpl.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationAdapterImpl.java | |||
@@ -1,16 +1,16 @@ | |||
1 | package tools.refinery.store.query.dse.internal; | 1 | package tools.refinery.store.dse.internal; |
2 | 2 | ||
3 | import tools.refinery.store.map.Version; | 3 | import tools.refinery.store.map.Version; |
4 | import tools.refinery.store.model.Interpretation; | 4 | import tools.refinery.store.model.Interpretation; |
5 | import tools.refinery.store.model.Model; | 5 | import tools.refinery.store.model.Model; |
6 | import tools.refinery.store.query.ModelQueryAdapter; | 6 | import tools.refinery.store.query.ModelQueryAdapter; |
7 | import tools.refinery.store.query.dnf.RelationalQuery; | 7 | import tools.refinery.store.query.dnf.RelationalQuery; |
8 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 8 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
9 | import tools.refinery.store.query.dse.DesignSpaceExplorationStoreAdapter; | 9 | import tools.refinery.store.dse.DesignSpaceExplorationStoreAdapter; |
10 | import tools.refinery.store.query.dse.Strategy; | 10 | import tools.refinery.store.dse.Strategy; |
11 | import tools.refinery.store.query.dse.objectives.Fitness; | 11 | import tools.refinery.store.dse.objectives.Fitness; |
12 | import tools.refinery.store.query.dse.objectives.Objective; | 12 | import tools.refinery.store.dse.objectives.Objective; |
13 | import tools.refinery.store.query.dse.objectives.ObjectiveComparatorHelper; | 13 | import tools.refinery.store.dse.objectives.ObjectiveComparatorHelper; |
14 | import tools.refinery.store.query.resultset.ResultSet; | 14 | import tools.refinery.store.query.resultset.ResultSet; |
15 | import tools.refinery.store.representation.Symbol; | 15 | import tools.refinery.store.representation.Symbol; |
16 | import tools.refinery.store.tuple.Tuple; | 16 | import tools.refinery.store.tuple.Tuple; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationBuilderImpl.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationBuilderImpl.java index 638ec641..03508adc 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationBuilderImpl.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationBuilderImpl.java | |||
@@ -1,12 +1,12 @@ | |||
1 | package tools.refinery.store.query.dse.internal; | 1 | package tools.refinery.store.dse.internal; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.AbstractModelAdapterBuilder; | 3 | import tools.refinery.store.adapter.AbstractModelAdapterBuilder; |
4 | import tools.refinery.store.model.ModelStore; | 4 | import tools.refinery.store.model.ModelStore; |
5 | import tools.refinery.store.model.ModelStoreBuilder; | 5 | import tools.refinery.store.model.ModelStoreBuilder; |
6 | import tools.refinery.store.query.dnf.RelationalQuery; | 6 | import tools.refinery.store.query.dnf.RelationalQuery; |
7 | import tools.refinery.store.query.dse.DesignSpaceExplorationBuilder; | 7 | import tools.refinery.store.dse.DesignSpaceExplorationBuilder; |
8 | import tools.refinery.store.query.dse.Strategy; | 8 | import tools.refinery.store.dse.Strategy; |
9 | import tools.refinery.store.query.dse.objectives.Objective; | 9 | import tools.refinery.store.dse.objectives.Objective; |
10 | 10 | ||
11 | import java.util.LinkedHashSet; | 11 | import java.util.LinkedHashSet; |
12 | import java.util.LinkedList; | 12 | import java.util.LinkedList; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java index f58715b7..b06462ce 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/DesignSpaceExplorationStoreAdapterImpl.java | |||
@@ -1,12 +1,12 @@ | |||
1 | package tools.refinery.store.query.dse.internal; | 1 | package tools.refinery.store.dse.internal; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.ModelAdapter; | 3 | import tools.refinery.store.adapter.ModelAdapter; |
4 | import tools.refinery.store.model.Model; | 4 | import tools.refinery.store.model.Model; |
5 | import tools.refinery.store.model.ModelStore; | 5 | import tools.refinery.store.model.ModelStore; |
6 | import tools.refinery.store.query.dnf.RelationalQuery; | 6 | import tools.refinery.store.query.dnf.RelationalQuery; |
7 | import tools.refinery.store.query.dse.DesignSpaceExplorationStoreAdapter; | 7 | import tools.refinery.store.dse.DesignSpaceExplorationStoreAdapter; |
8 | import tools.refinery.store.query.dse.Strategy; | 8 | import tools.refinery.store.dse.Strategy; |
9 | import tools.refinery.store.query.dse.objectives.Objective; | 9 | import tools.refinery.store.dse.objectives.Objective; |
10 | 10 | ||
11 | import java.util.LinkedHashSet; | 11 | import java.util.LinkedHashSet; |
12 | import java.util.List; | 12 | import java.util.List; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/TransformationRule.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/TransformationRule.java index 950ca930..ed2e77f1 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/internal/TransformationRule.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/internal/TransformationRule.java | |||
@@ -1,10 +1,10 @@ | |||
1 | package tools.refinery.store.query.dse.internal; | 1 | package tools.refinery.store.dse.internal; |
2 | 2 | ||
3 | import org.eclipse.collections.api.block.procedure.Procedure; | 3 | import org.eclipse.collections.api.block.procedure.Procedure; |
4 | import tools.refinery.store.model.Model; | 4 | import tools.refinery.store.model.Model; |
5 | import tools.refinery.store.query.ModelQueryAdapter; | 5 | import tools.refinery.store.query.ModelQueryAdapter; |
6 | import tools.refinery.store.query.dnf.RelationalQuery; | 6 | import tools.refinery.store.query.dnf.RelationalQuery; |
7 | import tools.refinery.store.query.dse.ActionFactory; | 7 | import tools.refinery.store.dse.ActionFactory; |
8 | import tools.refinery.store.query.resultset.OrderedResultSet; | 8 | import tools.refinery.store.query.resultset.OrderedResultSet; |
9 | import tools.refinery.store.query.resultset.ResultSet; | 9 | import tools.refinery.store.query.resultset.ResultSet; |
10 | import tools.refinery.store.tuple.Tuple; | 10 | import tools.refinery.store.tuple.Tuple; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/AlwaysSatisfiedDummyHardObjective.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/AlwaysSatisfiedDummyHardObjective.java index 26744d94..82695704 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/AlwaysSatisfiedDummyHardObjective.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/AlwaysSatisfiedDummyHardObjective.java | |||
@@ -6,9 +6,9 @@ | |||
6 | * | 6 | * |
7 | * SPDX-License-Identifier: EPL-2.0 | 7 | * SPDX-License-Identifier: EPL-2.0 |
8 | *******************************************************************************/ | 8 | *******************************************************************************/ |
9 | package tools.refinery.store.query.dse.objectives; | 9 | package tools.refinery.store.dse.objectives; |
10 | 10 | ||
11 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 11 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
12 | 12 | ||
13 | /** | 13 | /** |
14 | * This hard objective is fulfilled in any circumstances. Use it if all states should be regarded as a valid solution. | 14 | * This hard objective is fulfilled in any circumstances. Use it if all states should be regarded as a valid solution. |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/BaseObjective.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/BaseObjective.java index db8d5d7e..24e3280d 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/BaseObjective.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/BaseObjective.java | |||
@@ -6,9 +6,9 @@ | |||
6 | * | 6 | * |
7 | * SPDX-License-Identifier: EPL-2.0 | 7 | * SPDX-License-Identifier: EPL-2.0 |
8 | *******************************************************************************/ | 8 | *******************************************************************************/ |
9 | package tools.refinery.store.query.dse.objectives; | 9 | package tools.refinery.store.dse.objectives; |
10 | 10 | ||
11 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 11 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
12 | 12 | ||
13 | import java.util.Comparator; | 13 | import java.util.Comparator; |
14 | import java.util.Objects; | 14 | import java.util.Objects; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Comparators.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Comparators.java index 7fba6736..e64e04e8 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Comparators.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Comparators.java | |||
@@ -6,7 +6,7 @@ | |||
6 | * | 6 | * |
7 | * SPDX-License-Identifier: EPL-2.0 | 7 | * SPDX-License-Identifier: EPL-2.0 |
8 | *******************************************************************************/ | 8 | *******************************************************************************/ |
9 | package tools.refinery.store.query.dse.objectives; | 9 | package tools.refinery.store.dse.objectives; |
10 | 10 | ||
11 | import java.util.Comparator; | 11 | import java.util.Comparator; |
12 | 12 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Fitness.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Fitness.java index ea80ed55..16caed85 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Fitness.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Fitness.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.query.dse.objectives; | 1 | package tools.refinery.store.dse.objectives; |
2 | 2 | ||
3 | import java.util.HashMap; | 3 | import java.util.HashMap; |
4 | 4 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Objective.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Objective.java index df86f36a..4e14c9a3 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/Objective.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/Objective.java | |||
@@ -6,9 +6,9 @@ | |||
6 | * | 6 | * |
7 | * SPDX-License-Identifier: EPL-2.0 | 7 | * SPDX-License-Identifier: EPL-2.0 |
8 | *******************************************************************************/ | 8 | *******************************************************************************/ |
9 | package tools.refinery.store.query.dse.objectives; | 9 | package tools.refinery.store.dse.objectives; |
10 | 10 | ||
11 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 11 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
12 | 12 | ||
13 | import java.util.Comparator; | 13 | import java.util.Comparator; |
14 | 14 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/ObjectiveComparatorHelper.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/ObjectiveComparatorHelper.java index 0c925096..3184b8c4 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/objectives/ObjectiveComparatorHelper.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/objectives/ObjectiveComparatorHelper.java | |||
@@ -6,7 +6,7 @@ | |||
6 | * | 6 | * |
7 | * SPDX-License-Identifier: EPL-2.0 | 7 | * SPDX-License-Identifier: EPL-2.0 |
8 | *******************************************************************************/ | 8 | *******************************************************************************/ |
9 | package tools.refinery.store.query.dse.objectives; | 9 | package tools.refinery.store.dse.objectives; |
10 | 10 | ||
11 | import java.util.List; | 11 | import java.util.List; |
12 | 12 | ||
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/BestFirstStrategy.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/BestFirstStrategy.java index 6264c502..05cc5bac 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/BestFirstStrategy.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/BestFirstStrategy.java | |||
@@ -1,11 +1,11 @@ | |||
1 | package tools.refinery.store.query.dse.strategy; | 1 | package tools.refinery.store.dse.strategy; |
2 | 2 | ||
3 | import tools.refinery.store.map.Version; | 3 | import tools.refinery.store.map.Version; |
4 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 4 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
5 | import tools.refinery.store.query.dse.Strategy; | 5 | import tools.refinery.store.dse.Strategy; |
6 | import tools.refinery.store.query.dse.internal.Activation; | 6 | import tools.refinery.store.dse.internal.Activation; |
7 | import tools.refinery.store.query.dse.objectives.Fitness; | 7 | import tools.refinery.store.dse.objectives.Fitness; |
8 | import tools.refinery.store.query.dse.objectives.ObjectiveComparatorHelper; | 8 | import tools.refinery.store.dse.objectives.ObjectiveComparatorHelper; |
9 | 9 | ||
10 | import java.util.Collection; | 10 | import java.util.Collection; |
11 | import java.util.Iterator; | 11 | import java.util.Iterator; |
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/DepthFirstStrategy.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/DepthFirstStrategy.java index 8192048a..42985013 100644 --- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/dse/strategy/DepthFirstStrategy.java +++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/strategy/DepthFirstStrategy.java | |||
@@ -1,9 +1,9 @@ | |||
1 | package tools.refinery.store.query.dse.strategy; | 1 | package tools.refinery.store.dse.strategy; |
2 | 2 | ||
3 | import tools.refinery.store.query.dse.DesignSpaceExplorationAdapter; | 3 | import tools.refinery.store.dse.DesignSpaceExplorationAdapter; |
4 | import tools.refinery.store.query.dse.Strategy; | 4 | import tools.refinery.store.dse.Strategy; |
5 | import tools.refinery.store.query.dse.internal.Activation; | 5 | import tools.refinery.store.dse.internal.Activation; |
6 | import tools.refinery.store.query.dse.objectives.Fitness; | 6 | import tools.refinery.store.dse.objectives.Fitness; |
7 | 7 | ||
8 | import java.util.Collection; | 8 | import java.util.Collection; |
9 | 9 | ||
diff --git a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/CRAExamplesTest.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/CRAExamplesTest.java index 2effb353..e7cc60d6 100644 --- a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/CRAExamplesTest.java +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/CRAExamplesTest.java | |||
@@ -1,13 +1,13 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.model.ModelStore; | 4 | import tools.refinery.store.model.ModelStore; |
5 | import tools.refinery.store.query.ModelQueryAdapter; | 5 | import tools.refinery.store.query.ModelQueryAdapter; |
6 | import tools.refinery.store.query.dnf.Query; | 6 | import tools.refinery.store.query.dnf.Query; |
7 | import tools.refinery.store.query.dnf.RelationalQuery; | 7 | import tools.refinery.store.query.dnf.RelationalQuery; |
8 | import tools.refinery.store.query.dse.internal.TransformationRule; | 8 | import tools.refinery.store.dse.internal.TransformationRule; |
9 | import tools.refinery.store.query.dse.strategy.BestFirstStrategy; | 9 | import tools.refinery.store.dse.strategy.BestFirstStrategy; |
10 | import tools.refinery.store.query.dse.strategy.DepthFirstStrategy; | 10 | import tools.refinery.store.dse.strategy.DepthFirstStrategy; |
11 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; | 11 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; |
12 | import tools.refinery.store.query.view.AnySymbolView; | 12 | import tools.refinery.store.query.view.AnySymbolView; |
13 | import tools.refinery.store.query.view.KeyOnlyView; | 13 | import tools.refinery.store.query.view.KeyOnlyView; |
diff --git a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DebugTest.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java index 821be7e6..911c0661 100644 --- a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DebugTest.java +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java | |||
@@ -1,12 +1,12 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.model.ModelStore; | 4 | import tools.refinery.store.model.ModelStore; |
5 | import tools.refinery.store.query.ModelQueryAdapter; | 5 | import tools.refinery.store.query.ModelQueryAdapter; |
6 | import tools.refinery.store.query.dnf.Query; | 6 | import tools.refinery.store.query.dnf.Query; |
7 | import tools.refinery.store.query.dse.internal.TransformationRule; | 7 | import tools.refinery.store.dse.internal.TransformationRule; |
8 | import tools.refinery.store.query.dse.strategy.BestFirstStrategy; | 8 | import tools.refinery.store.dse.strategy.BestFirstStrategy; |
9 | import tools.refinery.store.query.dse.strategy.DepthFirstStrategy; | 9 | import tools.refinery.store.dse.strategy.DepthFirstStrategy; |
10 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; | 10 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; |
11 | import tools.refinery.store.query.view.AnySymbolView; | 11 | import tools.refinery.store.query.view.AnySymbolView; |
12 | import tools.refinery.store.query.view.KeyOnlyView; | 12 | import tools.refinery.store.query.view.KeyOnlyView; |
diff --git a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DesignSpaceExplorationTest.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DesignSpaceExplorationTest.java index 59775b43..c454f4ec 100644 --- a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/DesignSpaceExplorationTest.java +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DesignSpaceExplorationTest.java | |||
@@ -1,12 +1,12 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.model.ModelStore; | 4 | import tools.refinery.store.model.ModelStore; |
5 | import tools.refinery.store.query.ModelQueryAdapter; | 5 | import tools.refinery.store.query.ModelQueryAdapter; |
6 | import tools.refinery.store.query.dnf.Query; | 6 | import tools.refinery.store.query.dnf.Query; |
7 | import tools.refinery.store.query.dse.internal.TransformationRule; | 7 | import tools.refinery.store.dse.internal.TransformationRule; |
8 | import tools.refinery.store.query.dse.strategy.BestFirstStrategy; | 8 | import tools.refinery.store.dse.strategy.BestFirstStrategy; |
9 | import tools.refinery.store.query.dse.strategy.DepthFirstStrategy; | 9 | import tools.refinery.store.dse.strategy.DepthFirstStrategy; |
10 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; | 10 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; |
11 | import tools.refinery.store.query.view.AnySymbolView; | 11 | import tools.refinery.store.query.view.AnySymbolView; |
12 | import tools.refinery.store.query.view.KeyOnlyView; | 12 | import tools.refinery.store.query.view.KeyOnlyView; |
diff --git a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/TransformationRuleTest.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/TransformationRuleTest.java index 1fb3421b..a32d392b 100644 --- a/subprojects/store-query-viatra/src/test/java/tools/refinery/store/query/dse/TransformationRuleTest.java +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/TransformationRuleTest.java | |||
@@ -1,10 +1,10 @@ | |||
1 | package tools.refinery.store.query.dse; | 1 | package tools.refinery.store.dse; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.model.ModelStore; | 4 | import tools.refinery.store.model.ModelStore; |
5 | import tools.refinery.store.query.ModelQueryAdapter; | 5 | import tools.refinery.store.query.ModelQueryAdapter; |
6 | import tools.refinery.store.query.dnf.Query; | 6 | import tools.refinery.store.query.dnf.Query; |
7 | import tools.refinery.store.query.dse.internal.TransformationRule; | 7 | import tools.refinery.store.dse.internal.TransformationRule; |
8 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; | 8 | import tools.refinery.store.query.viatra.ViatraModelQueryAdapter; |
9 | import tools.refinery.store.query.view.AnySymbolView; | 9 | import tools.refinery.store.query.view.AnySymbolView; |
10 | import tools.refinery.store.query.view.KeyOnlyView; | 10 | import tools.refinery.store.query.view.KeyOnlyView; |
@@ -16,7 +16,7 @@ import java.util.Map; | |||
16 | 16 | ||
17 | import static org.junit.jupiter.api.Assertions.assertEquals; | 17 | import static org.junit.jupiter.api.Assertions.assertEquals; |
18 | import static tools.refinery.store.query.literal.Literals.not; | 18 | import static tools.refinery.store.query.literal.Literals.not; |
19 | import static tools.refinery.store.query.viatra.tests.QueryAssertions.assertResults; | 19 | import static tools.refinery.store.dse.tests.QueryAssertions.assertResults; |
20 | 20 | ||
21 | public class TransformationRuleTest { | 21 | public class TransformationRuleTest { |
22 | 22 | ||
diff --git a/subprojects/store-dse/src/test/java/tools/refinery/store/dse/tests/QueryAssertions.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/tests/QueryAssertions.java new file mode 100644 index 00000000..be514eaf --- /dev/null +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/tests/QueryAssertions.java | |||
@@ -0,0 +1,57 @@ | |||
1 | /* | ||
2 | * SPDX-FileCopyrightText: 2021-2023 The Refinery Authors <https://refinery.tools/> | ||
3 | * | ||
4 | * SPDX-License-Identifier: EPL-2.0 | ||
5 | */ | ||
6 | package tools.refinery.store.dse.tests; | ||
7 | |||
8 | import org.junit.jupiter.api.function.Executable; | ||
9 | import tools.refinery.store.query.resultset.ResultSet; | ||
10 | import tools.refinery.store.tuple.Tuple; | ||
11 | |||
12 | import java.util.*; | ||
13 | |||
14 | import static org.hamcrest.MatcherAssert.assertThat; | ||
15 | import static org.hamcrest.Matchers.is; | ||
16 | import static org.hamcrest.Matchers.nullValue; | ||
17 | import static org.junit.jupiter.api.Assertions.assertAll; | ||
18 | |||
19 | public final class QueryAssertions { | ||
20 | private QueryAssertions() { | ||
21 | throw new IllegalStateException("This is a static utility class and should not be instantiated directly"); | ||
22 | } | ||
23 | |||
24 | public static <T> void assertNullableResults(Map<Tuple, Optional<T>> expected, ResultSet<T> resultSet) { | ||
25 | var nullableValuesMap = new LinkedHashMap<Tuple, T>(expected.size()); | ||
26 | for (var entry : expected.entrySet()) { | ||
27 | nullableValuesMap.put(entry.getKey(), entry.getValue().orElse(null)); | ||
28 | } | ||
29 | assertResults(nullableValuesMap, resultSet); | ||
30 | } | ||
31 | |||
32 | public static <T> void assertResults(Map<Tuple, T> expected, ResultSet<T> resultSet) { | ||
33 | var defaultValue = resultSet.getQuery().defaultValue(); | ||
34 | var filteredExpected = new LinkedHashMap<Tuple, T>(); | ||
35 | var executables = new ArrayList<Executable>(); | ||
36 | for (var entry : expected.entrySet()) { | ||
37 | var key = entry.getKey(); | ||
38 | var value = entry.getValue(); | ||
39 | if (!Objects.equals(value, defaultValue)) { | ||
40 | filteredExpected.put(key, value); | ||
41 | } | ||
42 | executables.add(() -> assertThat("value for key " + key,resultSet.get(key), is(value))); | ||
43 | } | ||
44 | executables.add(() -> assertThat("results size", resultSet.size(), is(filteredExpected.size()))); | ||
45 | |||
46 | var actual = new LinkedHashMap<Tuple, T>(); | ||
47 | var cursor = resultSet.getAll(); | ||
48 | while (cursor.move()) { | ||
49 | var key = cursor.getKey(); | ||
50 | var previous = actual.put(key, cursor.getValue()); | ||
51 | assertThat("duplicate value for key " + key, previous, nullValue()); | ||
52 | } | ||
53 | executables.add(() -> assertThat("results cursor", actual, is(filteredExpected))); | ||
54 | |||
55 | assertAll(executables); | ||
56 | } | ||
57 | } | ||