Move tests into simulation (#4487)

Replace wasm-lib integration tests with KCL simulation tests.
This commit is contained in:
Adam Chalmers
2024-11-18 16:20:32 -06:00
committed by GitHub
parent 79e06b3a00
commit 34f019305b
207 changed files with 360969 additions and 233 deletions

View File

@ -0,0 +1,588 @@
---
source: kcl/src/simulation_tests.rs
description: Result of parsing linear_pattern3d_a_pattern.kcl
snapshot_kind: text
---
{
"Ok": {
"body": [
{
"declarations": [
{
"end": 163,
"id": {
"end": 13,
"name": "exampleSketch",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 34,
"raw": "'XZ'",
"start": 30,
"type": "Literal",
"type": "Literal",
"value": "XZ"
}
],
"callee": {
"end": 29,
"name": "startSketchOn",
"start": 16,
"type": "Identifier"
},
"end": 35,
"optional": false,
"start": 16,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 58,
"raw": "0",
"start": 57,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"end": 61,
"raw": "0",
"start": 60,
"type": "Literal",
"type": "Literal",
"value": 0
}
],
"end": 62,
"start": 56,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 65,
"start": 64,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 55,
"name": "startProfileAt",
"start": 41,
"type": "Identifier"
},
"end": 66,
"optional": false,
"start": 41,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 79,
"raw": "0",
"start": 78,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"end": 82,
"raw": "2",
"start": 81,
"type": "Literal",
"type": "Literal",
"value": 2
}
],
"end": 83,
"start": 77,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 86,
"start": 85,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 76,
"name": "line",
"start": 72,
"type": "Identifier"
},
"end": 87,
"optional": false,
"start": 72,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 100,
"raw": "3",
"start": 99,
"type": "Literal",
"type": "Literal",
"value": 3
},
{
"end": 103,
"raw": "1",
"start": 102,
"type": "Literal",
"type": "Literal",
"value": 1
}
],
"end": 104,
"start": 98,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 107,
"start": 106,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 97,
"name": "line",
"start": 93,
"type": "Identifier"
},
"end": 108,
"optional": false,
"start": 93,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 121,
"raw": "0",
"start": 120,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"argument": {
"end": 125,
"raw": "4",
"start": 124,
"type": "Literal",
"type": "Literal",
"value": 4
},
"end": 125,
"operator": "-",
"start": 123,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 126,
"start": 119,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 129,
"start": 128,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 118,
"name": "line",
"start": 114,
"type": "Identifier"
},
"end": 130,
"optional": false,
"start": 114,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 143,
"start": 142,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 141,
"name": "close",
"start": 136,
"type": "Identifier"
},
"end": 144,
"optional": false,
"start": 136,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 159,
"raw": "1",
"start": 158,
"type": "Literal",
"type": "Literal",
"value": 1
},
{
"end": 162,
"start": 161,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 157,
"name": "extrude",
"start": 150,
"type": "Identifier"
},
"end": 163,
"optional": false,
"start": 150,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 163,
"start": 16,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
}
],
"end": 163,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declarations": [
{
"end": 258,
"id": {
"end": 171,
"name": "pattn1",
"start": 165,
"type": "Identifier"
},
"init": {
"arguments": [
{
"end": 242,
"properties": [
{
"end": 209,
"key": {
"end": 198,
"name": "axis",
"start": 194,
"type": "Identifier"
},
"start": 194,
"type": "ObjectProperty",
"value": {
"elements": [
{
"end": 202,
"raw": "1",
"start": 201,
"type": "Literal",
"type": "Literal",
"value": 1
},
{
"end": 205,
"raw": "0",
"start": 204,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"end": 208,
"raw": "0",
"start": 207,
"type": "Literal",
"type": "Literal",
"value": 0
}
],
"end": 209,
"start": 200,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"end": 225,
"key": {
"end": 222,
"name": "instances",
"start": 213,
"type": "Identifier"
},
"start": 213,
"type": "ObjectProperty",
"value": {
"end": 225,
"raw": "7",
"start": 224,
"type": "Literal",
"type": "Literal",
"value": 7
}
},
{
"end": 240,
"key": {
"end": 237,
"name": "distance",
"start": 229,
"type": "Identifier"
},
"start": 229,
"type": "ObjectProperty",
"value": {
"end": 240,
"raw": "6",
"start": 239,
"type": "Literal",
"type": "Literal",
"value": 6
}
}
],
"start": 190,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
{
"end": 257,
"name": "exampleSketch",
"start": 244,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 189,
"name": "patternLinear3d",
"start": 174,
"type": "Identifier"
},
"end": 258,
"optional": false,
"start": 174,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 165,
"type": "VariableDeclarator"
}
],
"end": 258,
"kind": "const",
"start": 165,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declarations": [
{
"end": 346,
"id": {
"end": 266,
"name": "pattn2",
"start": 260,
"type": "Identifier"
},
"init": {
"arguments": [
{
"end": 337,
"properties": [
{
"end": 304,
"key": {
"end": 293,
"name": "axis",
"start": 289,
"type": "Identifier"
},
"start": 289,
"type": "ObjectProperty",
"value": {
"elements": [
{
"end": 297,
"raw": "0",
"start": 296,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"end": 300,
"raw": "0",
"start": 299,
"type": "Literal",
"type": "Literal",
"value": 0
},
{
"end": 303,
"raw": "1",
"start": 302,
"type": "Literal",
"type": "Literal",
"value": 1
}
],
"end": 304,
"start": 295,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"end": 319,
"key": {
"end": 316,
"name": "distance",
"start": 308,
"type": "Identifier"
},
"start": 308,
"type": "ObjectProperty",
"value": {
"end": 319,
"raw": "1",
"start": 318,
"type": "Literal",
"type": "Literal",
"value": 1
}
},
{
"end": 335,
"key": {
"end": 332,
"name": "instances",
"start": 323,
"type": "Identifier"
},
"start": 323,
"type": "ObjectProperty",
"value": {
"end": 335,
"raw": "7",
"start": 334,
"type": "Literal",
"type": "Literal",
"value": 7
}
}
],
"start": 285,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
{
"end": 345,
"name": "pattn1",
"start": 339,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 284,
"name": "patternLinear3d",
"start": 269,
"type": "Identifier"
},
"end": 346,
"optional": false,
"start": 269,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 260,
"type": "VariableDeclarator"
}
],
"end": 346,
"kind": "const",
"start": 260,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"end": 347,
"nonCodeMeta": {
"nonCodeNodes": {
"0": [
{
"end": 165,
"start": 163,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
],
"1": [
{
"end": 260,
"start": 258,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"startNodes": []
},
"start": 0
}
}

View File

@ -0,0 +1,19 @@
exampleSketch = startSketchOn('XZ')
|> startProfileAt([0, 0], %)
|> line([0, 2], %)
|> line([3, 1], %)
|> line([0, -4], %)
|> close(%)
|> extrude(1, %)
pattn1 = patternLinear3d({
axis: [1, 0, 0],
instances: 7,
distance: 6
}, exampleSketch)
pattn2 = patternLinear3d({
axis: [0, 0, 1],
distance: 1,
instances: 7
}, pattn1)

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -0,0 +1,999 @@
---
source: kcl/src/simulation_tests.rs
description: Result of tokenizing linear_pattern3d_a_pattern.kcl
snapshot_kind: text
---
{
"Ok": [
{
"type": "word",
"start": 0,
"end": 13,
"value": "exampleSketch"
},
{
"type": "whitespace",
"start": 13,
"end": 14,
"value": " "
},
{
"type": "operator",
"start": 14,
"end": 15,
"value": "="
},
{
"type": "whitespace",
"start": 15,
"end": 16,
"value": " "
},
{
"type": "word",
"start": 16,
"end": 29,
"value": "startSketchOn"
},
{
"type": "brace",
"start": 29,
"end": 30,
"value": "("
},
{
"type": "string",
"start": 30,
"end": 34,
"value": "'XZ'"
},
{
"type": "brace",
"start": 34,
"end": 35,
"value": ")"
},
{
"type": "whitespace",
"start": 35,
"end": 38,
"value": "\n "
},
{
"type": "operator",
"start": 38,
"end": 40,
"value": "|>"
},
{
"type": "whitespace",
"start": 40,
"end": 41,
"value": " "
},
{
"type": "word",
"start": 41,
"end": 55,
"value": "startProfileAt"
},
{
"type": "brace",
"start": 55,
"end": 56,
"value": "("
},
{
"type": "brace",
"start": 56,
"end": 57,
"value": "["
},
{
"type": "number",
"start": 57,
"end": 58,
"value": "0"
},
{
"type": "comma",
"start": 58,
"end": 59,
"value": ","
},
{
"type": "whitespace",
"start": 59,
"end": 60,
"value": " "
},
{
"type": "number",
"start": 60,
"end": 61,
"value": "0"
},
{
"type": "brace",
"start": 61,
"end": 62,
"value": "]"
},
{
"type": "comma",
"start": 62,
"end": 63,
"value": ","
},
{
"type": "whitespace",
"start": 63,
"end": 64,
"value": " "
},
{
"type": "operator",
"start": 64,
"end": 65,
"value": "%"
},
{
"type": "brace",
"start": 65,
"end": 66,
"value": ")"
},
{
"type": "whitespace",
"start": 66,
"end": 69,
"value": "\n "
},
{
"type": "operator",
"start": 69,
"end": 71,
"value": "|>"
},
{
"type": "whitespace",
"start": 71,
"end": 72,
"value": " "
},
{
"type": "word",
"start": 72,
"end": 76,
"value": "line"
},
{
"type": "brace",
"start": 76,
"end": 77,
"value": "("
},
{
"type": "brace",
"start": 77,
"end": 78,
"value": "["
},
{
"type": "number",
"start": 78,
"end": 79,
"value": "0"
},
{
"type": "comma",
"start": 79,
"end": 80,
"value": ","
},
{
"type": "whitespace",
"start": 80,
"end": 81,
"value": " "
},
{
"type": "number",
"start": 81,
"end": 82,
"value": "2"
},
{
"type": "brace",
"start": 82,
"end": 83,
"value": "]"
},
{
"type": "comma",
"start": 83,
"end": 84,
"value": ","
},
{
"type": "whitespace",
"start": 84,
"end": 85,
"value": " "
},
{
"type": "operator",
"start": 85,
"end": 86,
"value": "%"
},
{
"type": "brace",
"start": 86,
"end": 87,
"value": ")"
},
{
"type": "whitespace",
"start": 87,
"end": 90,
"value": "\n "
},
{
"type": "operator",
"start": 90,
"end": 92,
"value": "|>"
},
{
"type": "whitespace",
"start": 92,
"end": 93,
"value": " "
},
{
"type": "word",
"start": 93,
"end": 97,
"value": "line"
},
{
"type": "brace",
"start": 97,
"end": 98,
"value": "("
},
{
"type": "brace",
"start": 98,
"end": 99,
"value": "["
},
{
"type": "number",
"start": 99,
"end": 100,
"value": "3"
},
{
"type": "comma",
"start": 100,
"end": 101,
"value": ","
},
{
"type": "whitespace",
"start": 101,
"end": 102,
"value": " "
},
{
"type": "number",
"start": 102,
"end": 103,
"value": "1"
},
{
"type": "brace",
"start": 103,
"end": 104,
"value": "]"
},
{
"type": "comma",
"start": 104,
"end": 105,
"value": ","
},
{
"type": "whitespace",
"start": 105,
"end": 106,
"value": " "
},
{
"type": "operator",
"start": 106,
"end": 107,
"value": "%"
},
{
"type": "brace",
"start": 107,
"end": 108,
"value": ")"
},
{
"type": "whitespace",
"start": 108,
"end": 111,
"value": "\n "
},
{
"type": "operator",
"start": 111,
"end": 113,
"value": "|>"
},
{
"type": "whitespace",
"start": 113,
"end": 114,
"value": " "
},
{
"type": "word",
"start": 114,
"end": 118,
"value": "line"
},
{
"type": "brace",
"start": 118,
"end": 119,
"value": "("
},
{
"type": "brace",
"start": 119,
"end": 120,
"value": "["
},
{
"type": "number",
"start": 120,
"end": 121,
"value": "0"
},
{
"type": "comma",
"start": 121,
"end": 122,
"value": ","
},
{
"type": "whitespace",
"start": 122,
"end": 123,
"value": " "
},
{
"type": "operator",
"start": 123,
"end": 124,
"value": "-"
},
{
"type": "number",
"start": 124,
"end": 125,
"value": "4"
},
{
"type": "brace",
"start": 125,
"end": 126,
"value": "]"
},
{
"type": "comma",
"start": 126,
"end": 127,
"value": ","
},
{
"type": "whitespace",
"start": 127,
"end": 128,
"value": " "
},
{
"type": "operator",
"start": 128,
"end": 129,
"value": "%"
},
{
"type": "brace",
"start": 129,
"end": 130,
"value": ")"
},
{
"type": "whitespace",
"start": 130,
"end": 133,
"value": "\n "
},
{
"type": "operator",
"start": 133,
"end": 135,
"value": "|>"
},
{
"type": "whitespace",
"start": 135,
"end": 136,
"value": " "
},
{
"type": "word",
"start": 136,
"end": 141,
"value": "close"
},
{
"type": "brace",
"start": 141,
"end": 142,
"value": "("
},
{
"type": "operator",
"start": 142,
"end": 143,
"value": "%"
},
{
"type": "brace",
"start": 143,
"end": 144,
"value": ")"
},
{
"type": "whitespace",
"start": 144,
"end": 147,
"value": "\n "
},
{
"type": "operator",
"start": 147,
"end": 149,
"value": "|>"
},
{
"type": "whitespace",
"start": 149,
"end": 150,
"value": " "
},
{
"type": "word",
"start": 150,
"end": 157,
"value": "extrude"
},
{
"type": "brace",
"start": 157,
"end": 158,
"value": "("
},
{
"type": "number",
"start": 158,
"end": 159,
"value": "1"
},
{
"type": "comma",
"start": 159,
"end": 160,
"value": ","
},
{
"type": "whitespace",
"start": 160,
"end": 161,
"value": " "
},
{
"type": "operator",
"start": 161,
"end": 162,
"value": "%"
},
{
"type": "brace",
"start": 162,
"end": 163,
"value": ")"
},
{
"type": "whitespace",
"start": 163,
"end": 165,
"value": "\n\n"
},
{
"type": "word",
"start": 165,
"end": 171,
"value": "pattn1"
},
{
"type": "whitespace",
"start": 171,
"end": 172,
"value": " "
},
{
"type": "operator",
"start": 172,
"end": 173,
"value": "="
},
{
"type": "whitespace",
"start": 173,
"end": 174,
"value": " "
},
{
"type": "word",
"start": 174,
"end": 189,
"value": "patternLinear3d"
},
{
"type": "brace",
"start": 189,
"end": 190,
"value": "("
},
{
"type": "brace",
"start": 190,
"end": 191,
"value": "{"
},
{
"type": "whitespace",
"start": 191,
"end": 194,
"value": "\n "
},
{
"type": "word",
"start": 194,
"end": 198,
"value": "axis"
},
{
"type": "colon",
"start": 198,
"end": 199,
"value": ":"
},
{
"type": "whitespace",
"start": 199,
"end": 200,
"value": " "
},
{
"type": "brace",
"start": 200,
"end": 201,
"value": "["
},
{
"type": "number",
"start": 201,
"end": 202,
"value": "1"
},
{
"type": "comma",
"start": 202,
"end": 203,
"value": ","
},
{
"type": "whitespace",
"start": 203,
"end": 204,
"value": " "
},
{
"type": "number",
"start": 204,
"end": 205,
"value": "0"
},
{
"type": "comma",
"start": 205,
"end": 206,
"value": ","
},
{
"type": "whitespace",
"start": 206,
"end": 207,
"value": " "
},
{
"type": "number",
"start": 207,
"end": 208,
"value": "0"
},
{
"type": "brace",
"start": 208,
"end": 209,
"value": "]"
},
{
"type": "comma",
"start": 209,
"end": 210,
"value": ","
},
{
"type": "whitespace",
"start": 210,
"end": 213,
"value": "\n "
},
{
"type": "word",
"start": 213,
"end": 222,
"value": "instances"
},
{
"type": "colon",
"start": 222,
"end": 223,
"value": ":"
},
{
"type": "whitespace",
"start": 223,
"end": 224,
"value": " "
},
{
"type": "number",
"start": 224,
"end": 225,
"value": "7"
},
{
"type": "comma",
"start": 225,
"end": 226,
"value": ","
},
{
"type": "whitespace",
"start": 226,
"end": 229,
"value": "\n "
},
{
"type": "word",
"start": 229,
"end": 237,
"value": "distance"
},
{
"type": "colon",
"start": 237,
"end": 238,
"value": ":"
},
{
"type": "whitespace",
"start": 238,
"end": 239,
"value": " "
},
{
"type": "number",
"start": 239,
"end": 240,
"value": "6"
},
{
"type": "whitespace",
"start": 240,
"end": 241,
"value": "\n"
},
{
"type": "brace",
"start": 241,
"end": 242,
"value": "}"
},
{
"type": "comma",
"start": 242,
"end": 243,
"value": ","
},
{
"type": "whitespace",
"start": 243,
"end": 244,
"value": " "
},
{
"type": "word",
"start": 244,
"end": 257,
"value": "exampleSketch"
},
{
"type": "brace",
"start": 257,
"end": 258,
"value": ")"
},
{
"type": "whitespace",
"start": 258,
"end": 260,
"value": "\n\n"
},
{
"type": "word",
"start": 260,
"end": 266,
"value": "pattn2"
},
{
"type": "whitespace",
"start": 266,
"end": 267,
"value": " "
},
{
"type": "operator",
"start": 267,
"end": 268,
"value": "="
},
{
"type": "whitespace",
"start": 268,
"end": 269,
"value": " "
},
{
"type": "word",
"start": 269,
"end": 284,
"value": "patternLinear3d"
},
{
"type": "brace",
"start": 284,
"end": 285,
"value": "("
},
{
"type": "brace",
"start": 285,
"end": 286,
"value": "{"
},
{
"type": "whitespace",
"start": 286,
"end": 289,
"value": "\n "
},
{
"type": "word",
"start": 289,
"end": 293,
"value": "axis"
},
{
"type": "colon",
"start": 293,
"end": 294,
"value": ":"
},
{
"type": "whitespace",
"start": 294,
"end": 295,
"value": " "
},
{
"type": "brace",
"start": 295,
"end": 296,
"value": "["
},
{
"type": "number",
"start": 296,
"end": 297,
"value": "0"
},
{
"type": "comma",
"start": 297,
"end": 298,
"value": ","
},
{
"type": "whitespace",
"start": 298,
"end": 299,
"value": " "
},
{
"type": "number",
"start": 299,
"end": 300,
"value": "0"
},
{
"type": "comma",
"start": 300,
"end": 301,
"value": ","
},
{
"type": "whitespace",
"start": 301,
"end": 302,
"value": " "
},
{
"type": "number",
"start": 302,
"end": 303,
"value": "1"
},
{
"type": "brace",
"start": 303,
"end": 304,
"value": "]"
},
{
"type": "comma",
"start": 304,
"end": 305,
"value": ","
},
{
"type": "whitespace",
"start": 305,
"end": 308,
"value": "\n "
},
{
"type": "word",
"start": 308,
"end": 316,
"value": "distance"
},
{
"type": "colon",
"start": 316,
"end": 317,
"value": ":"
},
{
"type": "whitespace",
"start": 317,
"end": 318,
"value": " "
},
{
"type": "number",
"start": 318,
"end": 319,
"value": "1"
},
{
"type": "comma",
"start": 319,
"end": 320,
"value": ","
},
{
"type": "whitespace",
"start": 320,
"end": 323,
"value": "\n "
},
{
"type": "word",
"start": 323,
"end": 332,
"value": "instances"
},
{
"type": "colon",
"start": 332,
"end": 333,
"value": ":"
},
{
"type": "whitespace",
"start": 333,
"end": 334,
"value": " "
},
{
"type": "number",
"start": 334,
"end": 335,
"value": "7"
},
{
"type": "whitespace",
"start": 335,
"end": 336,
"value": "\n"
},
{
"type": "brace",
"start": 336,
"end": 337,
"value": "}"
},
{
"type": "comma",
"start": 337,
"end": 338,
"value": ","
},
{
"type": "whitespace",
"start": 338,
"end": 339,
"value": " "
},
{
"type": "word",
"start": 339,
"end": 345,
"value": "pattn1"
},
{
"type": "brace",
"start": 345,
"end": 346,
"value": ")"
},
{
"type": "whitespace",
"start": 346,
"end": 347,
"value": "\n"
}
]
}