Improve snapshot testing (#5856)

* Improve snapshot testing

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* A snapshot a day keeps the bugs away! 📷🐛

* A snapshot a day keeps the bugs away! 📷🐛

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This commit is contained in:
Nick Cameron
2025-03-20 11:06:27 +13:00
committed by GitHub
parent 4b6166dc4f
commit a7e09a89ef
551 changed files with 115788 additions and 275855 deletions

View File

@ -5,11 +5,7 @@ description: Artifact commands angled_line.kcl
[
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "edge_lines_visible",
"hidden": false
@ -17,11 +13,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "set_scene_units",
"unit": "mm"
@ -29,11 +21,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "object_visible",
"object_id": "[uuid]",
@ -42,11 +30,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "object_visible",
"object_id": "[uuid]",
@ -55,11 +39,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
10,
29,
0
],
"range": [],
"command": {
"type": "make_plane",
"origin": {
@ -84,11 +64,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
67,
0
],
"range": [],
"command": {
"type": "enable_sketch_mode",
"entity_id": "[uuid]",
@ -104,22 +80,14 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
67,
0
],
"range": [],
"command": {
"type": "start_path"
}
},
{
"cmdId": "[uuid]",
"range": [
35,
67,
0
],
"range": [],
"command": {
"type": "move_path_pen",
"path": "[uuid]",
@ -132,22 +100,14 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
67,
0
],
"range": [],
"command": {
"type": "sketch_mode_disable"
}
},
{
"cmdId": "[uuid]",
"range": [
73,
97,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -164,11 +124,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
103,
142,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -185,11 +141,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
148,
174,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -206,11 +158,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
180,
217,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -227,11 +175,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
223,
250,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -248,11 +192,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
256,
264,
0
],
"range": [],
"command": {
"type": "close_path",
"path_id": "[uuid]"
@ -260,11 +200,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "enable_sketch_mode",
"entity_id": "[uuid]",
@ -280,11 +216,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "extrude",
"target": "[uuid]",
@ -294,22 +226,14 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "sketch_mode_disable"
}
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "object_bring_to_front",
"object_id": "[uuid]"
@ -317,11 +241,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_extrusion_face_info",
"object_id": "[uuid]",
@ -330,11 +250,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -344,11 +260,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -358,11 +270,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -372,11 +280,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -386,11 +290,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -400,11 +300,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -414,11 +310,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -428,11 +320,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -442,11 +330,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -456,11 +340,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -470,11 +350,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -484,11 +360,7 @@ description: Artifact commands angled_line.kcl
},
{
"cmdId": "[uuid]",
"range": [
270,
289,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",

View File

@ -7,9 +7,9 @@ description: Result of parsing angled_line.kcl
"body": [
{
"declaration": {
"end": 289,
"end": 0,
"id": {
"end": 7,
"end": 0,
"name": "part001",
"start": 0,
"type": "Identifier"
@ -19,22 +19,22 @@ description: Result of parsing angled_line.kcl
{
"arguments": [
{
"end": 28,
"end": 0,
"raw": "'XY'",
"start": 24,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": "XY"
}
],
"callee": {
"end": 23,
"end": 0,
"name": "startSketchOn",
"start": 10,
"start": 0,
"type": "Identifier"
},
"end": 29,
"start": 10,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -43,9 +43,9 @@ description: Result of parsing angled_line.kcl
{
"elements": [
{
"end": 55,
"end": 0,
"raw": "4.83",
"start": 51,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -54,9 +54,9 @@ description: Result of parsing angled_line.kcl
}
},
{
"end": 62,
"end": 0,
"raw": "12.56",
"start": 57,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -65,26 +65,26 @@ description: Result of parsing angled_line.kcl
}
}
],
"end": 63,
"start": 50,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 66,
"start": 65,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 49,
"end": 0,
"name": "startProfileAt",
"start": 35,
"start": 0,
"type": "Identifier"
},
"end": 67,
"start": 35,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -93,17 +93,17 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 81,
"end": 0,
"name": "end",
"start": 78,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 89,
"end": 0,
"raw": "15.1",
"start": 85,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -112,9 +112,9 @@ description: Result of parsing angled_line.kcl
}
},
{
"end": 95,
"end": 0,
"raw": "2.48",
"start": 91,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -123,21 +123,21 @@ description: Result of parsing angled_line.kcl
}
}
],
"end": 96,
"start": 84,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 77,
"end": 0,
"name": "line",
"start": 73,
"start": 0,
"type": "Identifier"
},
"end": 97,
"start": 73,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -147,17 +147,17 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 111,
"end": 0,
"name": "end",
"start": 108,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 119,
"end": 0,
"raw": "3.15",
"start": 115,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -167,9 +167,9 @@ description: Result of parsing angled_line.kcl
},
{
"argument": {
"end": 126,
"end": 0,
"raw": "9.85",
"start": 122,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -177,15 +177,15 @@ description: Result of parsing angled_line.kcl
"suffix": "None"
}
},
"end": 126,
"end": 0,
"operator": "-",
"start": 121,
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 127,
"start": 114,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
@ -193,14 +193,14 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 132,
"end": 0,
"name": "tag",
"start": 129,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 141,
"start": 135,
"end": 0,
"start": 0,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "seg01"
@ -208,13 +208,13 @@ description: Result of parsing angled_line.kcl
}
],
"callee": {
"end": 107,
"end": 0,
"name": "line",
"start": 103,
"start": 0,
"type": "Identifier"
},
"end": 142,
"start": 103,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -224,18 +224,18 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 156,
"end": 0,
"name": "end",
"start": 153,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 166,
"end": 0,
"raw": "15.17",
"start": 161,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -243,17 +243,17 @@ description: Result of parsing angled_line.kcl
"suffix": "None"
}
},
"end": 166,
"end": 0,
"operator": "-",
"start": 160,
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"argument": {
"end": 172,
"end": 0,
"raw": "4.1",
"start": 169,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -261,28 +261,28 @@ description: Result of parsing angled_line.kcl
"suffix": "None"
}
},
"end": 172,
"end": 0,
"operator": "-",
"start": 168,
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 173,
"start": 159,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 152,
"end": 0,
"name": "line",
"start": 148,
"start": 0,
"type": "Identifier"
},
"end": 174,
"start": 148,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -294,28 +294,28 @@ description: Result of parsing angled_line.kcl
{
"arguments": [
{
"end": 204,
"end": 0,
"name": "seg01",
"start": 199,
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 198,
"end": 0,
"name": "segAng",
"start": 192,
"start": 0,
"type": "Identifier"
},
"end": 205,
"start": 192,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"end": 212,
"end": 0,
"raw": "12.35",
"start": 207,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -324,26 +324,26 @@ description: Result of parsing angled_line.kcl
}
}
],
"end": 213,
"start": 191,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 216,
"start": 215,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 190,
"end": 0,
"name": "angledLine",
"start": 180,
"start": 0,
"type": "Identifier"
},
"end": 217,
"start": 180,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -352,18 +352,18 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 231,
"end": 0,
"name": "end",
"start": 228,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 241,
"end": 0,
"raw": "13.02",
"start": 236,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -371,16 +371,16 @@ description: Result of parsing angled_line.kcl
"suffix": "None"
}
},
"end": 241,
"end": 0,
"operator": "-",
"start": 235,
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 248,
"end": 0,
"raw": "10.03",
"start": 243,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -389,21 +389,21 @@ description: Result of parsing angled_line.kcl
}
}
],
"end": 249,
"start": 234,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 227,
"end": 0,
"name": "line",
"start": 223,
"start": 0,
"type": "Identifier"
},
"end": 250,
"start": 223,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -411,20 +411,20 @@ description: Result of parsing angled_line.kcl
{
"arguments": [
{
"end": 263,
"start": 262,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 261,
"end": 0,
"name": "close",
"start": 256,
"start": 0,
"type": "Identifier"
},
"end": 264,
"start": 256,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -433,15 +433,15 @@ description: Result of parsing angled_line.kcl
{
"type": "LabeledArg",
"label": {
"end": 284,
"end": 0,
"name": "length",
"start": 278,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 288,
"end": 0,
"raw": "4",
"start": 287,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -452,34 +452,34 @@ description: Result of parsing angled_line.kcl
}
],
"callee": {
"end": 277,
"end": 0,
"name": "extrude",
"start": 270,
"start": 0,
"type": "Identifier"
},
"end": 289,
"start": 270,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 289,
"start": 10,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 289,
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"end": 290,
"end": 0,
"start": 0
}
}

View File

@ -10,19 +10,11 @@ description: Operations executed angled_line.kcl
"type": "String",
"value": "XY"
},
"sourceRange": [
24,
28,
0
]
"sourceRange": []
}
},
"name": "startSketchOn",
"sourceRange": [
10,
29,
0
],
"sourceRange": [],
"type": "StdLibCall",
"unlabeledArg": null
},
@ -42,19 +34,11 @@ description: Operations executed angled_line.kcl
}
}
},
"sourceRange": [
287,
288,
0
]
"sourceRange": []
}
},
"name": "extrude",
"sourceRange": [
270,
289,
0
],
"sourceRange": [],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
@ -63,11 +47,7 @@ description: Operations executed angled_line.kcl
"artifactId": "[uuid]"
}
},
"sourceRange": [
270,
289,
0
]
"sourceRange": []
}
}
]

View File

@ -13,22 +13,14 @@ description: Variables in memory after executing angled_line.kcl
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
73,
97,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
},
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
103,
142,
0
],
"sourceRange": [],
"tag": {
"end": 141,
"start": 135,
@ -40,44 +32,28 @@ description: Variables in memory after executing angled_line.kcl
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
148,
174,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
},
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
180,
217,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
},
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
223,
250,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
},
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
256,
264,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
}
@ -89,11 +65,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
73,
97,
0
]
"sourceRange": []
},
"from": [
4.83,
@ -112,11 +84,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
103,
142,
0
]
"sourceRange": []
},
"from": [
19.93,
@ -140,11 +108,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
148,
174,
0
]
"sourceRange": []
},
"from": [
23.08,
@ -163,11 +127,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
180,
217,
0
]
"sourceRange": []
},
"from": [
7.91,
@ -186,11 +146,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
223,
250,
0
]
"sourceRange": []
},
"from": [
11.6718,
@ -209,11 +165,7 @@ description: Variables in memory after executing angled_line.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
256,
264,
0
]
"sourceRange": []
},
"from": [
-1.3482,
@ -274,11 +226,7 @@ description: Variables in memory after executing angled_line.kcl
"tag": null,
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
35,
67,
0
]
"sourceRange": []
}
},
"tags": {

View File

@ -0,0 +1,13 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Result of unparsing angled_line.kcl
---
part001 = startSketchOn('XY')
|> startProfileAt([4.83, 12.56], %)
|> line(end = [15.1, 2.48])
|> line(end = [3.15, -9.85], tag = $seg01)
|> line(end = [-15.17, -4.1])
|> angledLine([segAng(seg01), 12.35], %)
|> line(end = [-13.02, 10.03])
|> close(%)
|> extrude(length = 4)