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 basic_fillet_cube_end.kcl
[
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "edge_lines_visible",
"hidden": false
@ -17,11 +13,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "set_scene_units",
"unit": "mm"
@ -29,11 +21,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "object_visible",
"object_id": "[uuid]",
@ -42,11 +30,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
0,
0,
0
],
"range": [],
"command": {
"type": "object_visible",
"object_id": "[uuid]",
@ -55,11 +39,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
10,
29,
0
],
"range": [],
"command": {
"type": "make_plane",
"origin": {
@ -84,11 +64,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
60,
0
],
"range": [],
"command": {
"type": "enable_sketch_mode",
"entity_id": "[uuid]",
@ -104,22 +80,14 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
60,
0
],
"range": [],
"command": {
"type": "start_path"
}
},
{
"cmdId": "[uuid]",
"range": [
35,
60,
0
],
"range": [],
"command": {
"type": "move_path_pen",
"path": "[uuid]",
@ -132,22 +100,14 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
35,
60,
0
],
"range": [],
"command": {
"type": "sketch_mode_disable"
}
},
{
"cmdId": "[uuid]",
"range": [
66,
99,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -164,11 +124,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
105,
124,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -185,11 +141,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
130,
165,
0
],
"range": [],
"command": {
"type": "extend_path",
"path": "[uuid]",
@ -206,11 +158,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
171,
179,
0
],
"range": [],
"command": {
"type": "close_path",
"path_id": "[uuid]"
@ -218,11 +166,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "enable_sketch_mode",
"entity_id": "[uuid]",
@ -238,11 +182,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "extrude",
"target": "[uuid]",
@ -252,22 +192,14 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "sketch_mode_disable"
}
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "object_bring_to_front",
"object_id": "[uuid]"
@ -275,11 +207,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_extrusion_face_info",
"object_id": "[uuid]",
@ -288,11 +216,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -302,11 +226,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -316,11 +236,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -330,11 +246,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -344,11 +256,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -358,11 +266,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -372,11 +276,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -386,11 +286,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
185,
205,
0
],
"range": [],
"command": {
"type": "solid3d_get_next_adjacent_edge",
"object_id": "[uuid]",
@ -400,11 +296,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
245,
267,
0
],
"range": [],
"command": {
"type": "solid3d_get_opposite_edge",
"object_id": "[uuid]",
@ -414,11 +306,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
211,
269,
0
],
"range": [],
"command": {
"type": "solid3d_fillet_edge",
"object_id": "[uuid]",
@ -430,11 +318,7 @@ description: Artifact commands basic_fillet_cube_end.kcl
},
{
"cmdId": "[uuid]",
"range": [
211,
269,
0
],
"range": [],
"command": {
"type": "solid3d_fillet_edge",
"object_id": "[uuid]",

View File

@ -7,9 +7,9 @@ description: Result of parsing basic_fillet_cube_end.kcl
"body": [
{
"declaration": {
"end": 269,
"end": 0,
"id": {
"end": 7,
"end": 0,
"name": "part001",
"start": 0,
"type": "Identifier"
@ -19,22 +19,22 @@ description: Result of parsing basic_fillet_cube_end.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 basic_fillet_cube_end.kcl
{
"elements": [
{
"end": 52,
"end": 0,
"raw": "0",
"start": 51,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -54,9 +54,9 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
},
{
"end": 55,
"end": 0,
"raw": "0",
"start": 54,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -65,26 +65,26 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
}
],
"end": 56,
"start": 50,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 59,
"start": 58,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 49,
"end": 0,
"name": "startProfileAt",
"start": 35,
"start": 0,
"type": "Identifier"
},
"end": 60,
"start": 35,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -93,17 +93,17 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 74,
"end": 0,
"name": "end",
"start": 71,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 79,
"end": 0,
"raw": "0",
"start": 78,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -112,9 +112,9 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
},
{
"end": 83,
"end": 0,
"raw": "10",
"start": 81,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -123,8 +123,8 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
}
],
"end": 84,
"start": 77,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
@ -132,14 +132,14 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 89,
"end": 0,
"name": "tag",
"start": 86,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 98,
"start": 92,
"end": 0,
"start": 0,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "thing"
@ -147,13 +147,13 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
],
"callee": {
"end": 70,
"end": 0,
"name": "line",
"start": 66,
"start": 0,
"type": "Identifier"
},
"end": 99,
"start": 66,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -163,17 +163,17 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 113,
"end": 0,
"name": "end",
"start": 110,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 119,
"end": 0,
"raw": "10",
"start": 117,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -182,9 +182,9 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
},
{
"end": 122,
"end": 0,
"raw": "0",
"start": 121,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -193,21 +193,21 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
}
],
"end": 123,
"start": 116,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 109,
"end": 0,
"name": "line",
"start": 105,
"start": 0,
"type": "Identifier"
},
"end": 124,
"start": 105,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -217,17 +217,17 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 138,
"end": 0,
"name": "end",
"start": 135,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 143,
"end": 0,
"raw": "0",
"start": 142,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -237,9 +237,9 @@ description: Result of parsing basic_fillet_cube_end.kcl
},
{
"argument": {
"end": 148,
"end": 0,
"raw": "10",
"start": 146,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -247,15 +247,15 @@ description: Result of parsing basic_fillet_cube_end.kcl
"suffix": "None"
}
},
"end": 148,
"end": 0,
"operator": "-",
"start": 145,
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 149,
"start": 141,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
@ -263,14 +263,14 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 154,
"end": 0,
"name": "tag",
"start": 151,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 164,
"start": 157,
"end": 0,
"start": 0,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "thing2"
@ -278,13 +278,13 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
],
"callee": {
"end": 134,
"end": 0,
"name": "line",
"start": 130,
"start": 0,
"type": "Identifier"
},
"end": 165,
"start": 130,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -292,20 +292,20 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"arguments": [
{
"end": 178,
"start": 177,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 176,
"end": 0,
"name": "close",
"start": 171,
"start": 0,
"type": "Identifier"
},
"end": 179,
"start": 171,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
@ -314,15 +314,15 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 199,
"end": 0,
"name": "length",
"start": 193,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 204,
"end": 0,
"raw": "10",
"start": 202,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -333,13 +333,13 @@ description: Result of parsing basic_fillet_cube_end.kcl
}
],
"callee": {
"end": 192,
"end": 0,
"name": "extrude",
"start": 185,
"start": 0,
"type": "Identifier"
},
"end": 205,
"start": 185,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
@ -349,15 +349,15 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 224,
"end": 0,
"name": "radius",
"start": 218,
"start": 0,
"type": "Identifier"
},
"arg": {
"end": 228,
"end": 0,
"raw": "2",
"start": 227,
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
@ -369,78 +369,78 @@ description: Result of parsing basic_fillet_cube_end.kcl
{
"type": "LabeledArg",
"label": {
"end": 234,
"end": 0,
"name": "tags",
"start": 230,
"start": 0,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 243,
"end": 0,
"name": "thing",
"start": 238,
"start": 0,
"type": "Identifier",
"type": "Identifier"
},
{
"arguments": [
{
"end": 266,
"end": 0,
"name": "thing",
"start": 261,
"start": 0,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 260,
"end": 0,
"name": "getOppositeEdge",
"start": 245,
"start": 0,
"type": "Identifier"
},
"end": 267,
"start": 245,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 268,
"start": 237,
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 217,
"end": 0,
"name": "fillet",
"start": 211,
"start": 0,
"type": "Identifier"
},
"end": 269,
"start": 211,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 269,
"start": 10,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 269,
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"end": 270,
"end": 0,
"start": 0
}
}

View File

@ -10,19 +10,11 @@ description: Operations executed basic_fillet_cube_end.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 basic_fillet_cube_end.kcl
}
}
},
"sourceRange": [
202,
204,
0
]
"sourceRange": []
}
},
"name": "extrude",
"sourceRange": [
185,
205,
0
],
"sourceRange": [],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
@ -63,11 +47,7 @@ description: Operations executed basic_fillet_cube_end.kcl
"artifactId": "[uuid]"
}
},
"sourceRange": [
185,
205,
0
]
"sourceRange": []
}
},
{
@ -86,11 +66,7 @@ description: Operations executed basic_fillet_cube_end.kcl
}
}
},
"sourceRange": [
227,
228,
0
]
"sourceRange": []
},
"tags": {
"value": {
@ -107,19 +83,11 @@ description: Operations executed basic_fillet_cube_end.kcl
}
]
},
"sourceRange": [
237,
268,
0
]
"sourceRange": []
}
},
"name": "fillet",
"sourceRange": [
211,
269,
0
],
"sourceRange": [],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
@ -128,11 +96,7 @@ description: Operations executed basic_fillet_cube_end.kcl
"artifactId": "[uuid]"
}
},
"sourceRange": [
211,
269,
0
]
"sourceRange": []
}
}
]

View File

@ -13,11 +13,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
66,
99,
0
],
"sourceRange": [],
"tag": {
"end": 98,
"start": 92,
@ -29,22 +25,14 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
105,
124,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
},
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
130,
165,
0
],
"sourceRange": [],
"tag": {
"end": 164,
"start": 157,
@ -56,11 +44,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
171,
179,
0
],
"sourceRange": [],
"tag": null,
"type": "extrudePlane"
}
@ -72,11 +56,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
66,
99,
0
]
"sourceRange": []
},
"from": [
0.0,
@ -100,11 +80,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
105,
124,
0
]
"sourceRange": []
},
"from": [
0.0,
@ -123,11 +99,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
130,
165,
0
]
"sourceRange": []
},
"from": [
10.0,
@ -151,11 +123,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
171,
179,
0
]
"sourceRange": []
},
"from": [
10.0,
@ -216,11 +184,7 @@ description: Variables in memory after executing basic_fillet_cube_end.kcl
"tag": null,
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
35,
60,
0
]
"sourceRange": []
}
},
"tags": {

View File

@ -0,0 +1,12 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Result of unparsing basic_fillet_cube_end.kcl
---
part001 = startSketchOn('XY')
|> startProfileAt([0, 0], %)
|> line(end = [0, 10], tag = $thing)
|> line(end = [10, 0])
|> line(end = [0, -10], tag = $thing2)
|> close(%)
|> extrude(length = 10)
|> fillet(radius = 2, tags = [thing, getOppositeEdge(thing)])