-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest_uml2er.py
82 lines (64 loc) · 2.12 KB
/
test_uml2er.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# autogenerated from MPS
from util.parser import load_parser
from util.test_script_base import Test
class ProverTest(Test):
def __init__(self, args):
Test.__init__(self)
#============TRANSFORMATION=================
self.full_transformation = []
self.full_transformation.append(['H02Package2ERModel',]) #L1
self.full_transformation.append(['H03Class2EntityType',]) #L2
self.full_transformation.append(['H05aProperty2AttributeNoType','H05bProperty2AttributeType',]) #L3
self.full_transformation.append(['H07Property2WeakReference','H08Property2StrongReference',]) #L5
self.full_transformation.append(['H09ConnectClass',]) #L7
self.full_transformation.append(['H10ConnectProperty',]) #L8
self.full_transformation.append(['H11ConnectReference',]) #L9
self.artifact_directory = "~/Projects/SyVOLT/"
self.transformation_directory = "UML2ER/transformation/"
#=====METAMODELS=================
self.inputMM = "~/Projects/SyVOLT/UML2ER/UML.ecore"
self.outputMM = "~/Projects/SyVOLT/UML2ER/ER.ecore"
#====CONTRACTS==================
if not hasattr(args, "integration_contracts") or args.integration_contracts:
self.contract_directory = "UML2ER/contracts/"
self.atomic_contracts = [
"Contract02",
"Contract03",
"Contract05",
"Contract06",
"Contract07",
"Contract08",
"Contract09",
"Contract10",
"Contract12a",
"Contract12b",
# "Contract13Then",
# "Contract13If",
# "Contract14Then",
# "Contract14If",
]
self.if_then_contracts = [
[["Contract13If"], ["Contract13Then"]],
[["Contract14If"], ["Contract14Then"]],
]
else:
self.contract_directory = "UML2ER/contracts/unit"
self.atomic_contracts = [
"ContractUnitR02",
"ContractUnitR03",
"ContractUnitR05a",
"ContractUnitR05b",
"ContractUnitR07",
"ContractUnitR08",
"ContractUnitR09",
"ContractUnitR10",
"ContractUnitR14",
]
self.if_then_contracts = []
#=========PC SAVE LOCATION
self.pc_save_filename = "pcs_UML2ER.txt"
if __name__ == "__main__":
parser = load_parser()
args = parser.parse_args()
test = ProverTest(args)
test.test_correct(args)