diff options
Diffstat (limited to 'subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java')
-rw-r--r-- | subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java index 101a5362..c6da896c 100644 --- a/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java +++ b/subprojects/store-dse/src/test/java/tools/refinery/store/dse/DebugTest.java | |||
@@ -5,7 +5,9 @@ | |||
5 | */ | 5 | */ |
6 | package tools.refinery.store.dse; | 6 | package tools.refinery.store.dse; |
7 | 7 | ||
8 | import org.junit.jupiter.api.Disabled; | ||
8 | import org.junit.jupiter.api.Test; | 9 | import org.junit.jupiter.api.Test; |
10 | import tools.refinery.store.dse.objectives.AlwaysSatisfiedRandomHardObjective; | ||
9 | import tools.refinery.store.model.ModelStore; | 11 | import tools.refinery.store.model.ModelStore; |
10 | import tools.refinery.store.query.ModelQueryAdapter; | 12 | import tools.refinery.store.query.ModelQueryAdapter; |
11 | import tools.refinery.store.query.dnf.Query; | 13 | import tools.refinery.store.query.dnf.Query; |
@@ -20,7 +22,7 @@ import tools.refinery.store.tuple.Tuple; | |||
20 | import tools.refinery.visualization.ModelVisualizerAdapter; | 22 | import tools.refinery.visualization.ModelVisualizerAdapter; |
21 | import tools.refinery.visualization.internal.FileFormat; | 23 | import tools.refinery.visualization.internal.FileFormat; |
22 | 24 | ||
23 | public class DebugTest { | 25 | class DebugTest { |
24 | private static final Symbol<Boolean> classModel = Symbol.of("ClassModel", 1); | 26 | private static final Symbol<Boolean> classModel = Symbol.of("ClassModel", 1); |
25 | private static final Symbol<Boolean> classElement = Symbol.of("ClassElement", 1); | 27 | private static final Symbol<Boolean> classElement = Symbol.of("ClassElement", 1); |
26 | private static final Symbol<Boolean> feature = Symbol.of("Feature", 1); | 28 | private static final Symbol<Boolean> feature = Symbol.of("Feature", 1); |
@@ -41,6 +43,7 @@ public class DebugTest { | |||
41 | 43 | ||
42 | 44 | ||
43 | @Test | 45 | @Test |
46 | @Disabled("This test is only for debugging purposes") | ||
44 | void BFSTest() { | 47 | void BFSTest() { |
45 | var createClassPrecondition = Query.of("CreateClassPrecondition", | 48 | var createClassPrecondition = Query.of("CreateClassPrecondition", |
46 | (builder, model) -> builder.clause( | 49 | (builder, model) -> builder.clause( |
@@ -90,11 +93,18 @@ public class DebugTest { | |||
90 | .symbols(classModel, classElement, feature, isEncapsulatedBy, encapsulates, classes, features) | 93 | .symbols(classModel, classElement, feature, isEncapsulatedBy, encapsulates, classes, features) |
91 | .with(ViatraModelQueryAdapter.builder() | 94 | .with(ViatraModelQueryAdapter.builder() |
92 | .queries(createClassPrecondition, createFeaturePrecondition)) | 95 | .queries(createClassPrecondition, createFeaturePrecondition)) |
93 | .with(ModelVisualizerAdapter.builder()) | 96 | .with(ModelVisualizerAdapter.builder() |
97 | .withOutputpath("test_output") | ||
98 | .withFormat(FileFormat.DOT) | ||
99 | .withFormat(FileFormat.SVG) | ||
100 | .saveStates() | ||
101 | .saveDesignSpace() | ||
102 | ) | ||
94 | .with(DesignSpaceExplorationAdapter.builder() | 103 | .with(DesignSpaceExplorationAdapter.builder() |
95 | .transformations(createClassRule, createFeatureRule) | 104 | .transformations(createClassRule, createFeatureRule) |
96 | .strategy(new DepthFirstStrategy(4).continueIfHardObjectivesFulfilled() | 105 | .objectives(new AlwaysSatisfiedRandomHardObjective()) |
97 | // .strategy(new BestFirstStrategy(4).continueIfHardObjectivesFulfilled() | 106 | .strategy(new DepthFirstStrategy().withDepthLimit(4).continueIfHardObjectivesFulfilled() |
107 | // .strategy(new BestFirstStrategy().withDepthLimit(4).continueIfHardObjectivesFulfilled() | ||
98 | // .goOnOnlyIfFitnessIsBetter() | 108 | // .goOnOnlyIfFitnessIsBetter() |
99 | )) | 109 | )) |
100 | .build(); | 110 | .build(); |
@@ -113,10 +123,7 @@ public class DebugTest { | |||
113 | 123 | ||
114 | 124 | ||
115 | var states = dseAdapter.explore(); | 125 | var states = dseAdapter.explore(); |
116 | var visualizer = model.getAdapter(ModelVisualizerAdapter.class); | ||
117 | visualizer.renderDesignSpace("test_output", FileFormat.SVG); | ||
118 | System.out.println("states size: " + states.size()); | 126 | System.out.println("states size: " + states.size()); |
119 | System.out.println("states: " + states); | ||
120 | 127 | ||
121 | } | 128 | } |
122 | } | 129 | } |