@@ -2,75 +2,31 @@ package org.modelix.model.sync.gradle.test
2
2
3
3
import org.junit.jupiter.api.Test
4
4
import java.io.File
5
- import kotlin.test.assertEquals
6
5
7
6
class PullTest {
8
7
9
8
@Test
10
9
fun `nodes were synced to local` () {
11
- val localModelFile = File (" build/test-repo/solutions/GraphSolution/models/GraphSolution.example.mps" )
12
- val expected = """
13
- <?xml version="1.0" encoding="UTF-8"?>
14
- <model ref="r:64fb7a52-94bd-43f1-a6e6-395dcf17eaae(GraphSolution.example)">
15
- <persistence version="9" />
16
- <languages>
17
- <use id="d5dabe27-fe41-4a5d-92bb-aede71707287" name="GraphLang" version="0" />
18
- </languages>
19
- <imports />
20
- <registry>
21
- <language id="d5dabe27-fe41-4a5d-92bb-aede71707287" name="GraphLang">
22
- <concept id="466301921131629394" name="GraphLang.structure.Graph" flags="ng" index="1DmExM">
23
- <child id="466301921131663001" name="nodes" index="1DmyQT" />
24
- <child id="466301921131630381" name="edges" index="1DmEKd" />
25
- </concept>
26
- <concept id="466301921131629396" name="GraphLang.structure.Node" flags="ng" index="1DmExO" />
27
- <concept id="466301921131629399" name="GraphLang.structure.Edge" flags="ng" index="1DmExR">
28
- <reference id="466301921131663029" name="source" index="1DmyQl" />
29
- <reference id="466301921131663030" name="target" index="1DmyQm" />
30
- </concept>
31
- </language>
32
- <language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
33
- <concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
34
- <property id="1169194664001" name="name" index="TrG5h" />
35
- </concept>
36
- </language>
37
- </registry>
38
- <node concept="1DmExM" id="pSCM1J8y9y">
39
- <node concept="1DmExR" id="pSCM1J8Fg1" role="1DmEKd">
40
- <ref role="1DmyQl" node="pSCM1J8FfW" resolve="X" />
41
- <ref role="1DmyQm" node="pSCM1J8FfX" resolve="Y" />
42
- </node>
43
- <node concept="1DmExR" id="pSCM1J8Fg2" role="1DmEKd">
44
- <ref role="1DmyQl" node="pSCM1J8FfX" resolve="Y" />
45
- <ref role="1DmyQm" node="pSCM1J8FfY" resolve="Z" />
46
- </node>
47
- <node concept="1DmExR" id="pSCM1J8Fg3" role="1DmEKd">
48
- <ref role="1DmyQl" node="pSCM1J8FfZ" resolve="D" />
49
- <ref role="1DmyQm" node="pSCM1J8FfY" resolve="Z" />
50
- </node>
51
- <node concept="1DmExR" id="pSCM1J8Fg4" role="1DmEKd">
52
- <ref role="1DmyQl" node="pSCM1J8Fg0" resolve="E" />
53
- <ref role="1DmyQm" node="pSCM1J8FfZ" resolve="D" />
54
- </node>
55
- <node concept="1DmExO" id="pSCM1J8FfW" role="1DmyQT">
56
- <property role="TrG5h" value="X" />
57
- </node>
58
- <node concept="1DmExO" id="pSCM1J8FfX" role="1DmyQT">
59
- <property role="TrG5h" value="Y" />
60
- </node>
61
- <node concept="1DmExO" id="pSCM1J8FfY" role="1DmyQT">
62
- <property role="TrG5h" value="Z" />
63
- </node>
64
- <node concept="1DmExO" id="pSCM1J8FfZ" role="1DmyQT">
65
- <property role="TrG5h" value="D" />
66
- </node>
67
- <node concept="1DmExO" id="pSCM1J8Fg0" role="1DmyQT">
68
- <property role="TrG5h" value="E" />
69
- </node>
70
- </node>
71
- </model>
72
- """ .trimIndent()
10
+ val localModel = File (" build/test-repo/solutions/GraphSolution/models/GraphSolution.example.mps" ).readText()
73
11
74
- assertEquals(expected, localModelFile.readText().trim())
12
+ val expectedNodesRegex = """
13
+ |\s*<node concept="1DmExO" id="pSCM1J8FfW" role="1DmyQT">
14
+ |\s*<property role="TrG5h" value="X" />
15
+ |\s*</node>
16
+ |\s*<node concept="1DmExO" id="pSCM1J8FfX" role="1DmyQT">
17
+ |\s*<property role="TrG5h" value="Y" />
18
+ |\s*</node>
19
+ |\s*<node concept="1DmExO" id="pSCM1J8FfY" role="1DmyQT">
20
+ |\s*<property role="TrG5h" value="Z" />
21
+ |\s*</node>
22
+ |\s*<node concept="1DmExO" id="pSCM1J8FfZ" role="1DmyQT">
23
+ |\s*<property role="TrG5h" value="D" />
24
+ |\s*</node>
25
+ |\s*<node concept="1DmExO" id="pSCM1J8Fg0" role="1DmyQT">
26
+ |\s*<property role="TrG5h" value="E" />
27
+ |\s*</node>
28
+ """ .trimMargin().toRegex()
29
+
30
+ assert (expectedNodesRegex.containsMatchIn(localModel))
75
31
}
76
32
}
0 commit comments