diff options
author | 2019-04-11 16:59:48 -0400 | |
---|---|---|
committer | 2019-04-11 16:59:48 -0400 | |
commit | 77f583cd433f3ed0fed3a1f240c0677e41cb4d31 (patch) | |
tree | 13103d95d81bf7f799394ab204f8f78cfcfc0d3e /Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java | |
parent | Implement containment circularity avoidance #20 (diff) | |
download | VIATRA-Generator-77f583cd433f3ed0fed3a1f240c0677e41cb4d31.tar.gz VIATRA-Generator-77f583cd433f3ed0fed3a1f240c0677e41cb4d31.tar.zst VIATRA-Generator-77f583cd433f3ed0fed3a1f240c0677e41cb4d31.zip |
VAMPIRE: #39 Reorganise tests, working yakindu test, need debugging
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java')
-rw-r--r-- | Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java | 102 |
1 files changed, 82 insertions, 20 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java index 5994b4b4..eedec995 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FileSystemTest.java | |||
@@ -1,38 +1,100 @@ | |||
1 | package ca.mcgill.ecse.dslreasoner.vampire.icse; | 1 | package ca.mcgill.ecse.dslreasoner.vampire.icse; |
2 | 2 | ||
3 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
3 | import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest; | 4 | import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest; |
4 | import functionalarchitecture.FunctionalarchitecturePackage; | 5 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver; |
5 | import hu.bme.mit.inf.dslreasoner.domains.transima.fam.FamPatterns; | 6 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration; |
7 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic; | ||
8 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration; | ||
9 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace; | ||
6 | import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; | 10 | import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; |
7 | import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor; | 11 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel; |
12 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicReasoner; | ||
13 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput; | ||
14 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type; | ||
15 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem; | ||
16 | import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult; | ||
17 | import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic; | ||
18 | import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic; | ||
8 | import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; | 19 | import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; |
20 | import java.util.HashMap; | ||
9 | import java.util.Map; | 21 | import java.util.Map; |
10 | import org.eclipse.emf.common.util.EList; | 22 | import org.eclipse.emf.common.util.EList; |
11 | import org.eclipse.emf.ecore.EObject; | 23 | import org.eclipse.emf.ecore.EObject; |
12 | import org.eclipse.emf.ecore.resource.Resource; | 24 | import org.eclipse.emf.ecore.resource.Resource; |
13 | import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; | 25 | import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; |
14 | import org.eclipse.xtend2.lib.StringConcatenation; | 26 | import org.eclipse.xtend2.lib.StringConcatenation; |
27 | import org.eclipse.xtext.xbase.lib.Exceptions; | ||
15 | import org.eclipse.xtext.xbase.lib.InputOutput; | 28 | import org.eclipse.xtext.xbase.lib.InputOutput; |
29 | import org.eclipse.xtext.xbase.lib.ObjectExtensions; | ||
30 | import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; | ||
16 | 31 | ||
17 | @SuppressWarnings("all") | 32 | @SuppressWarnings("all") |
18 | public class FileSystemTest { | 33 | public class FileSystemTest { |
19 | public static void main(final String[] args) { | 34 | public static void main(final String[] args) { |
20 | StringConcatenation _builder = new StringConcatenation(); | 35 | try { |
21 | _builder.append("initialModels/"); | 36 | final Ecore2Logic ecore2Logic = new Ecore2Logic(); |
22 | final FileSystemWorkspace inputs = new FileSystemWorkspace(_builder.toString(), ""); | 37 | final Viatra2Logic viatra2Logic = new Viatra2Logic(ecore2Logic); |
23 | StringConcatenation _builder_1 = new StringConcatenation(); | 38 | final InstanceModel2Logic instanceModel2Logic = new InstanceModel2Logic(); |
24 | _builder_1.append("output/FAMTest/"); | 39 | StringConcatenation _builder = new StringConcatenation(); |
25 | final FileSystemWorkspace workspace = new FileSystemWorkspace(_builder_1.toString(), ""); | 40 | _builder.append("initialModels/"); |
26 | workspace.initAndClear(); | 41 | final FileSystemWorkspace inputs = new FileSystemWorkspace(_builder.toString(), ""); |
27 | final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE; | 42 | StringConcatenation _builder_1 = new StringConcatenation(); |
28 | final Map<String, Object> map = reg.getExtensionToFactoryMap(); | 43 | _builder_1.append("output/FAMTest/"); |
29 | XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); | 44 | final FileSystemWorkspace workspace = new FileSystemWorkspace(_builder_1.toString(), ""); |
30 | map.put("logicproblem", _xMIResourceFactoryImpl); | 45 | workspace.initAndClear(); |
31 | InputOutput.<String>println("Input and output workspaces are created"); | 46 | final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE; |
32 | final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(FunctionalarchitecturePackage.eINSTANCE); | 47 | final Map<String, Object> map = reg.getExtensionToFactoryMap(); |
33 | final EList<EObject> partialModel = GeneralTest.loadPartialModel(inputs, "FunctionalArchitectureModel.xmi"); | 48 | XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); |
34 | final ViatraQuerySetDescriptor queries = GeneralTest.loadQueries(metamodel, FamPatterns.instance()); | 49 | map.put("logicproblem", _xMIResourceFactoryImpl); |
35 | InputOutput.<String>println("DSL loaded"); | 50 | InputOutput.<String>println("Input and output workspaces are created"); |
36 | GeneralTest.createAndSolveProblem(metamodel, partialModel, queries, workspace); | 51 | final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(filesystemPackage.eINSTANCE); |
52 | final EList<EObject> partialModel = GeneralTest.loadPartialModel(inputs, "fs/filesystemInstance.xmi"); | ||
53 | InputOutput.<String>println("DSL loaded"); | ||
54 | Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); | ||
55 | final TracedOutput<LogicProblem, Ecore2Logic_Trace> modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); | ||
56 | LogicProblem problem = modelGenerationProblem.getOutput(); | ||
57 | workspace.writeModel(problem, "Fam.logicproblem"); | ||
58 | InputOutput.<String>println("Problem created"); | ||
59 | long startTime = System.currentTimeMillis(); | ||
60 | LogicReasoner reasoner = null; | ||
61 | VampireSolver _vampireSolver = new VampireSolver(); | ||
62 | reasoner = _vampireSolver; | ||
63 | final HashMap<Class, Integer> classMapMin = new HashMap<Class, Integer>(); | ||
64 | final Map<Type, Integer> typeMapMin = GeneralTest.getTypeMap(classMapMin, metamodel, ecore2Logic, modelGenerationProblem.getTrace()); | ||
65 | final HashMap<Class, Integer> classMapMax = new HashMap<Class, Integer>(); | ||
66 | final Map<Type, Integer> typeMapMax = GeneralTest.getTypeMap(classMapMax, metamodel, ecore2Logic, modelGenerationProblem.getTrace()); | ||
67 | VampireSolverConfiguration _vampireSolverConfiguration = new VampireSolverConfiguration(); | ||
68 | final Procedure1<VampireSolverConfiguration> _function = (VampireSolverConfiguration it) -> { | ||
69 | it.documentationLevel = DocumentationLevel.FULL; | ||
70 | it.typeScopes.minNewElements = 4; | ||
71 | it.typeScopes.maxNewElements = 5; | ||
72 | int _size = typeMapMin.size(); | ||
73 | boolean _notEquals = (_size != 0); | ||
74 | if (_notEquals) { | ||
75 | it.typeScopes.minNewElementsByType = typeMapMin; | ||
76 | } | ||
77 | int _size_1 = typeMapMin.size(); | ||
78 | boolean _notEquals_1 = (_size_1 != 0); | ||
79 | if (_notEquals_1) { | ||
80 | it.typeScopes.maxNewElementsByType = typeMapMax; | ||
81 | } | ||
82 | it.contCycleLevel = 5; | ||
83 | it.uniquenessDuplicates = false; | ||
84 | }; | ||
85 | final VampireSolverConfiguration vampireConfig = ObjectExtensions.<VampireSolverConfiguration>operator_doubleArrow(_vampireSolverConfiguration, _function); | ||
86 | LogicResult solution = reasoner.solve(problem, vampireConfig, workspace); | ||
87 | long _currentTimeMillis = System.currentTimeMillis(); | ||
88 | long _minus = (_currentTimeMillis - startTime); | ||
89 | long totalTimeMin = (_minus / 60000); | ||
90 | long _currentTimeMillis_1 = System.currentTimeMillis(); | ||
91 | long _minus_1 = (_currentTimeMillis_1 - startTime); | ||
92 | long _divide = (_minus_1 / 1000); | ||
93 | long totalTimeSec = (_divide % 60); | ||
94 | InputOutput.<String>println("Problem solved"); | ||
95 | InputOutput.<String>println(((("Time was: " + Long.valueOf(totalTimeMin)) + ":") + Long.valueOf(totalTimeSec))); | ||
96 | } catch (Throwable _e) { | ||
97 | throw Exceptions.sneakyThrow(_e); | ||
98 | } | ||
37 | } | 99 | } |
38 | } | 100 | } |