1use crate::parity::{
2 ParityCapability, ParityFixture, ParityTransformExpectation, ParityVerificationExpectation,
3};
4
5mod wave_two;
6
7pub const PARITY_FIXTURES: &[ParityFixture] = &[
8 ParityFixture {
10 target_name: "tree-sitter",
11 name: "readme grammar expression cst",
12 language: "JavaScript",
13 source: "a + b * c\n",
14 expected_reconstruction: "a + b * c\n",
15 provenance: "tree-sitter/tree-sitter test/fixtures/test_grammars/readme_grammar/corpus.txt; license: MIT",
16 verification_expectation: ParityVerificationExpectation::Clean,
17 transform_expectation: None,
18 capabilities: &[ParityCapability::LosslessParsing],
19 },
20 ParityFixture {
22 target_name: "tree-sitter",
23 name: "extras and comment trivia",
24 language: "JavaScript",
25 source: "const a = 1; /* one */\n// e\nconst b = 2;\n",
26 expected_reconstruction: "const a = 1; /* one */\n// e\nconst b = 2;\n",
27 provenance: "tree-sitter/tree-sitter test/fixtures/test_grammars/extra_non_terminals/corpus.txt; license: MIT",
28 verification_expectation: ParityVerificationExpectation::Clean,
29 transform_expectation: None,
30 capabilities: &[
31 ParityCapability::LosslessParsing,
32 ParityCapability::TriviaPreservation,
33 ],
34 },
35 ParityFixture {
37 target_name: "tree-sitter",
38 name: "javascript error corpus extra identifiers",
39 language: "JavaScript",
40 source: "if (a b) {\n c d;\n}\ne f;\n",
41 expected_reconstruction: "if (a b) {\n c d;\n}\ne f;\n",
42 provenance: "tree-sitter/tree-sitter test/fixtures/error_corpus/javascript_errors.txt; license: MIT",
43 verification_expectation: ParityVerificationExpectation::Recoverable,
44 transform_expectation: None,
45 capabilities: &[
46 ParityCapability::LosslessParsing,
47 ParityCapability::ErrorRecovery,
48 ],
49 },
50 ParityFixture {
52 target_name: "tree-sitter",
53 name: "class identifier query source",
54 language: "JavaScript",
55 source: "class Person {\n getName() { return name; }\n}\n",
56 expected_reconstruction: "class Person {\n getName() { return name; }\n}\n",
57 provenance: "tree-sitter/tree-sitter docs/src/using-parsers/queries/1-syntax.md; license: MIT",
58 verification_expectation: ParityVerificationExpectation::Clean,
59 transform_expectation: None,
60 capabilities: &[ParityCapability::QueryMatching],
61 },
62 ParityFixture {
64 target_name: "tree-sitter",
65 name: "markdown fenced rust with queryable tokens",
66 language: "Markdown",
67 source: "Intro\n```rust\nfn main() {}\n```\n",
68 expected_reconstruction: "Intro\n```rust\nfn main() {}\n```\n",
69 provenance: "tree-sitter/tree-sitter docs/src/3-syntax-highlighting.md; license: MIT",
70 verification_expectation: ParityVerificationExpectation::Clean,
71 transform_expectation: None,
72 capabilities: &[
73 ParityCapability::LosslessParsing,
74 ParityCapability::ErrorRecovery,
75 ParityCapability::MixedLanguageRegions,
76 ParityCapability::QueryMatching,
77 ],
78 },
79 ParityFixture {
81 target_name: "LibCST",
82 name: "python round trip with indentation and comments",
83 language: "Python",
84 source: "x = 1\n\n# Some comment before a function.\ndef function(default=None):\n return default\n",
85 expected_reconstruction: "x = 1\n\n# Some comment before a function.\ndef function(default=None):\n return default\n",
86 provenance: "Instagram/LibCST native/libcst/tests/fixtures/comments.py; license: MIT",
87 verification_expectation: ParityVerificationExpectation::Clean,
88 transform_expectation: None,
89 capabilities: &[
90 ParityCapability::LosslessParsing,
91 ParityCapability::TriviaPreservation,
92 ParityCapability::SameLanguageReconstruction,
93 ],
94 },
95 ParityFixture {
97 target_name: "LibCST",
98 name: "empty line comment trivia",
99 language: "Python",
100 source: "# comment\n\nvalue = 1\n",
101 expected_reconstruction: "# comment\n\nvalue = 1\n",
102 provenance: "Instagram/LibCST libcst/_nodes/tests/test_empty_line.py; license: MIT",
103 verification_expectation: ParityVerificationExpectation::Clean,
104 transform_expectation: None,
105 capabilities: &[
106 ParityCapability::LosslessParsing,
107 ParityCapability::TriviaPreservation,
108 ],
109 },
110 ParityFixture {
112 target_name: "LibCST",
113 name: "mismatched brace parse error",
114 language: "Python",
115 source: "abcd)",
116 expected_reconstruction: "abcd)",
117 provenance: "Instagram/LibCST libcst/_parser/tests/test_parse_errors.py; license: MIT",
118 verification_expectation: ParityVerificationExpectation::Recoverable,
119 transform_expectation: None,
120 capabilities: &[
121 ParityCapability::LosslessParsing,
122 ParityCapability::ErrorRecovery,
123 ],
124 },
125 ParityFixture {
127 target_name: "LibCST",
128 name: "python captured identifier transform",
129 language: "Python",
130 source: "old_name = call(old_name)\n",
131 expected_reconstruction: "old_name = call(old_name)\n",
132 provenance: "Instagram/LibCST libcst/_nodes/tests/test_removal_behavior.py; license: MIT",
133 verification_expectation: ParityVerificationExpectation::Clean,
134 transform_expectation: Some(ParityTransformExpectation {
135 query: r#"
136 (identifier) @target
137 (#eq? @target "old_name")
138 "#,
139 capture_name: "target",
140 replacement: "renamed",
141 expected_output: "renamed = call(renamed)\n",
142 }),
143 capabilities: &[
144 ParityCapability::QueryMatching,
145 ParityCapability::TransformBySubstitution,
146 ParityCapability::SameLanguageReconstruction,
147 ],
148 },
149 ParityFixture {
151 target_name: "Recast",
152 name: "javascript comment preservation",
153 language: "JavaScript",
154 source: "const value = 1; // keep trivia\n",
155 expected_reconstruction: "const value = 1; // keep trivia\n",
156 provenance: "benjamn/recast test/identity.ts and test/data/regexp-props.js; license: MIT",
157 verification_expectation: ParityVerificationExpectation::Clean,
158 transform_expectation: None,
159 capabilities: &[
160 ParityCapability::LosslessParsing,
161 ParityCapability::TriviaPreservation,
162 ParityCapability::SameLanguageReconstruction,
163 ],
164 },
165 ParityFixture {
167 target_name: "Recast",
168 name: "regexp properties identity fixture",
169 language: "JavaScript",
170 source: "_.templateSettings = {\n evaluate : /<%([\\s\\S]+?)%>/g,\n interpolate : /<%=([\\s\\S]+?)%>/g,\n escape : /<%-([\\s\\S]+?)%>/g // this line parsed oddly\n};\n",
171 expected_reconstruction: "_.templateSettings = {\n evaluate : /<%([\\s\\S]+?)%>/g,\n interpolate : /<%=([\\s\\S]+?)%>/g,\n escape : /<%-([\\s\\S]+?)%>/g // this line parsed oddly\n};\n",
172 provenance: "benjamn/recast test/data/regexp-props.js; license: MIT",
173 verification_expectation: ParityVerificationExpectation::Clean,
174 transform_expectation: None,
175 capabilities: &[
176 ParityCapability::LosslessParsing,
177 ParityCapability::TriviaPreservation,
178 ParityCapability::SameLanguageReconstruction,
179 ],
180 },
181 ParityFixture {
183 target_name: "Recast",
184 name: "empty program identity fixture",
185 language: "JavaScript",
186 source: "",
187 expected_reconstruction: "",
188 provenance: "benjamn/recast test/data/empty.js; license: MIT",
189 verification_expectation: ParityVerificationExpectation::Clean,
190 transform_expectation: None,
191 capabilities: &[
192 ParityCapability::LosslessParsing,
193 ParityCapability::SameLanguageReconstruction,
194 ],
195 },
196 ParityFixture {
198 target_name: "jscodeshift",
199 name: "javascript transform input",
200 language: "JavaScript",
201 source: "const oldName = call(oldName);\n",
202 expected_reconstruction: "const oldName = call(oldName);\n",
203 provenance: "facebook/jscodeshift README.md __testfixtures__ example; license: MIT",
204 verification_expectation: ParityVerificationExpectation::Clean,
205 transform_expectation: Some(ParityTransformExpectation {
206 query: r#"
207 (identifier) @target
208 (#eq? @target "oldName")
209 "#,
210 capture_name: "target",
211 replacement: "newName",
212 expected_output: "const newName = call(newName);\n",
213 }),
214 capabilities: &[
215 ParityCapability::QueryMatching,
216 ParityCapability::TransformBySubstitution,
217 ParityCapability::SameLanguageReconstruction,
218 ],
219 },
220 ParityFixture {
222 target_name: "jscodeshift",
223 name: "reverse identifiers input fixture",
224 language: "JavaScript",
225 source: "var firstWord = 'Hello ';\nvar secondWord = 'world';\nvar message = firstWord + secondWord;\n",
226 expected_reconstruction: "var firstWord = 'Hello ';\nvar secondWord = 'world';\nvar message = firstWord + secondWord;\n",
227 provenance: "facebook/jscodeshift sample/__testfixtures__/reverse-identifiers.input.js; license: MIT",
228 verification_expectation: ParityVerificationExpectation::Clean,
229 transform_expectation: Some(ParityTransformExpectation {
230 query: r#"
231 (identifier) @target
232 (#eq? @target "firstWord")
233 "#,
234 capture_name: "target",
235 replacement: "droWtsrif",
236 expected_output: "var droWtsrif = 'Hello ';\nvar secondWord = 'world';\nvar message = droWtsrif + secondWord;\n",
237 }),
238 capabilities: &[
239 ParityCapability::QueryMatching,
240 ParityCapability::TransformBySubstitution,
241 ParityCapability::SameLanguageReconstruction,
242 ],
243 },
244 ParityFixture {
246 target_name: "jscodeshift",
247 name: "reverse identifiers output fixture",
248 language: "JavaScript",
249 source: "var droWtsrif = 'Hello ';\nvar droWdnoces = 'world';\nvar egassem = droWtsrif + droWdnoces;\n",
250 expected_reconstruction: "var droWtsrif = 'Hello ';\nvar droWdnoces = 'world';\nvar egassem = droWtsrif + droWdnoces;\n",
251 provenance: "facebook/jscodeshift sample/__testfixtures__/reverse-identifiers.output.js; license: MIT",
252 verification_expectation: ParityVerificationExpectation::Clean,
253 transform_expectation: None,
254 capabilities: &[ParityCapability::SameLanguageReconstruction],
255 },
256 ParityFixture {
258 target_name: "Rowan",
259 name: "s-expression tutorial input",
260 language: "txt",
261 source: "(+ (* 15 2) 62)\n",
262 expected_reconstruction: "(+ (* 15 2) 62)\n",
263 provenance: "rust-analyzer/rowan examples/s_expressions.rs; license: Apache-2.0 OR MIT",
264 verification_expectation: ParityVerificationExpectation::Clean,
265 transform_expectation: None,
266 capabilities: &[ParityCapability::LosslessParsing],
267 },
268 ParityFixture {
270 target_name: "Rowan",
271 name: "math checkpoint expression",
272 language: "txt",
273 source: "1 + 2 * 3 + 4\n",
274 expected_reconstruction: "1 + 2 * 3 + 4\n",
275 provenance: "rust-analyzer/rowan examples/math.rs; license: Apache-2.0 OR MIT",
276 verification_expectation: ParityVerificationExpectation::Clean,
277 transform_expectation: None,
278 capabilities: &[ParityCapability::LosslessParsing],
279 },
280 ParityFixture {
282 target_name: "Rowan",
283 name: "rust trivia preservation",
284 language: "Rust",
285 source: "fn main() {\n // keep\n}\n",
286 expected_reconstruction: "fn main() {\n // keep\n}\n",
287 provenance: "rust-analyzer/rowan examples/s_expressions.rs; license: Apache-2.0 OR MIT",
288 verification_expectation: ParityVerificationExpectation::Clean,
289 transform_expectation: None,
290 capabilities: &[
291 ParityCapability::LosslessParsing,
292 ParityCapability::TriviaPreservation,
293 ParityCapability::SameLanguageReconstruction,
294 ParityCapability::SnapshotVersioning,
295 ],
296 },
297 ParityFixture {
299 target_name: "cstree",
300 name: "calculator nested expression",
301 language: "txt",
302 source: "1 - (2 + 5)\n",
303 expected_reconstruction: "1 - (2 + 5)\n",
304 provenance: "domenicquirl/cstree cstree/src/getting_started.rs; license: Apache-2.0 OR MIT",
305 verification_expectation: ParityVerificationExpectation::Clean,
306 transform_expectation: None,
307 capabilities: &[ParityCapability::LosslessParsing],
308 },
309 ParityFixture {
311 target_name: "cstree",
312 name: "derive syntax kind fixture",
313 language: "Rust",
314 source: "#[derive(Debug, Clone, Copy, PartialEq, Eq)]\n#[repr(u32)]\nenum SyntaxKind { Int, Plus, Root }\n",
315 expected_reconstruction: "#[derive(Debug, Clone, Copy, PartialEq, Eq)]\n#[repr(u32)]\nenum SyntaxKind { Int, Plus, Root }\n",
316 provenance: "domenicquirl/cstree test_suite/tests/derive.rs; license: Apache-2.0 OR MIT",
317 verification_expectation: ParityVerificationExpectation::Clean,
318 transform_expectation: None,
319 capabilities: &[
320 ParityCapability::LosslessParsing,
321 ParityCapability::SameLanguageReconstruction,
322 ],
323 },
324 ParityFixture {
326 target_name: "cstree",
327 name: "rust checkpoint source",
328 language: "Rust",
329 source: "let checkpoint = value + 1;\n",
330 expected_reconstruction: "let checkpoint = value + 1;\n",
331 provenance: "domenicquirl/cstree cstree/src/getting_started.rs; license: Apache-2.0 OR MIT",
332 verification_expectation: ParityVerificationExpectation::Clean,
333 transform_expectation: None,
334 capabilities: &[
335 ParityCapability::LosslessParsing,
336 ParityCapability::TriviaPreservation,
337 ParityCapability::SameLanguageReconstruction,
338 ParityCapability::SnapshotVersioning,
339 ],
340 },
341 ParityFixture {
343 target_name: "Roslyn",
344 name: "csharp diagnostic recovery source",
345 language: "C#",
346 source: "class C { void M() { Console.WriteLine(1); } }\n",
347 expected_reconstruction: "class C { void M() { Console.WriteLine(1); } }\n",
348 provenance: "dotnet/roslyn src/Compilers/CSharp/Test/Syntax/Syntax/SyntaxNodeTests.cs; license: MIT",
349 verification_expectation: ParityVerificationExpectation::Clean,
350 transform_expectation: None,
351 capabilities: &[
352 ParityCapability::LosslessParsing,
353 ParityCapability::TriviaPreservation,
354 ParityCapability::ErrorRecovery,
355 ParityCapability::SameLanguageReconstruction,
356 ],
357 },
358 ParityFixture {
360 target_name: "Roslyn",
361 name: "skipped token recovery round trip",
362 language: "C#",
363 source: "garbage\nusing goo.bar;\n",
364 expected_reconstruction: "garbage\nusing goo.bar;\n",
365 provenance: "dotnet/roslyn src/Compilers/CSharp/Test/Syntax/Syntax/SyntaxNodeTests.cs; license: MIT",
366 verification_expectation: ParityVerificationExpectation::Recoverable,
367 transform_expectation: None,
368 capabilities: &[
369 ParityCapability::LosslessParsing,
370 ParityCapability::ErrorRecovery,
371 ],
372 },
373 ParityFixture {
375 target_name: "Roslyn",
376 name: "leading trivia preservation",
377 language: "C#",
378 source: "/* c */ class C { }\n",
379 expected_reconstruction: "/* c */ class C { }\n",
380 provenance: "dotnet/roslyn src/Compilers/CSharp/Test/Syntax/Syntax/SyntaxRewriterTests.cs; license: MIT",
381 verification_expectation: ParityVerificationExpectation::Clean,
382 transform_expectation: None,
383 capabilities: &[
384 ParityCapability::LosslessParsing,
385 ParityCapability::TriviaPreservation,
386 ],
387 },
388 ParityFixture {
390 target_name: "Roslyn",
391 name: "class identifier transform",
392 language: "C#",
393 source: "private class C { }\n",
394 expected_reconstruction: "private class C { }\n",
395 provenance: "dotnet/roslyn src/Compilers/CSharp/Test/Syntax/Syntax/SyntaxNodeTests.cs; license: MIT",
396 verification_expectation: ParityVerificationExpectation::Clean,
397 transform_expectation: Some(ParityTransformExpectation {
398 query: r#"
399 (identifier) @target
400 (#eq? @target "C")
401 "#,
402 capture_name: "target",
403 replacement: "D",
404 expected_output: "private class D { }\n",
405 }),
406 capabilities: &[
407 ParityCapability::QueryMatching,
408 ParityCapability::TransformBySubstitution,
409 ParityCapability::SameLanguageReconstruction,
410 ],
411 },
412 ParityFixture {
414 target_name: "Roslyn",
415 name: "missing token diagnostic recovery",
416 language: "C#",
417 source: "class C { void M() { if ( }",
418 expected_reconstruction: "class C { void M() { if ( }",
419 provenance: "dotnet/roslyn src/Compilers/CSharp/Test/Syntax/Syntax/SyntaxNodeTests.cs; license: MIT",
420 verification_expectation: ParityVerificationExpectation::Recoverable,
421 transform_expectation: None,
422 capabilities: &[
423 ParityCapability::LosslessParsing,
424 ParityCapability::ErrorRecovery,
425 ],
426 },
427 ParityFixture {
429 target_name: "links-notation",
430 name: "doublet link fixture",
431 language: "LiNo",
432 source: "(papa mama)\n",
433 expected_reconstruction: "(papa mama)\n",
434 provenance: "link-foundation/links-notation csharp/Link.Foundation.Links.Notation.Tests/SingleLineParserTests.cs and TEST_CASE_COMPARISON.md 137/138/138/140 tests; license: Unlicense",
435 verification_expectation: ParityVerificationExpectation::Clean,
436 transform_expectation: None,
437 capabilities: &[ParityCapability::LosslessParsing],
438 },
439 ParityFixture {
441 target_name: "links-notation",
442 name: "triplet single link fixture",
443 language: "LiNo",
444 source: "(papa loves mama)\n",
445 expected_reconstruction: "(papa loves mama)\n",
446 provenance: "link-foundation/links-notation csharp/Link.Foundation.Links.Notation.Tests/SingleLineParserTests.cs; license: Unlicense",
447 verification_expectation: ParityVerificationExpectation::Clean,
448 transform_expectation: None,
449 capabilities: &[ParityCapability::LosslessParsing],
450 },
451 ParityFixture {
453 target_name: "links-notation",
454 name: "n-tuple tuple fixture",
455 language: "LiNo",
456 source: "(papa (lovesMama: loves mama))\n(son lovesMama)\n(daughter lovesMama)\n(all (love mama))\n",
457 expected_reconstruction: "(papa (lovesMama: loves mama))\n(son lovesMama)\n(daughter lovesMama)\n(all (love mama))\n",
458 provenance: "link-foundation/links-notation csharp/Link.Foundation.Links.Notation.Tests/TupleTests.cs; license: Unlicense",
459 verification_expectation: ParityVerificationExpectation::Clean,
460 transform_expectation: None,
461 capabilities: &[
462 ParityCapability::LosslessParsing,
463 ParityCapability::SelfDescription,
464 ],
465 },
466 ParityFixture {
468 target_name: "links-notation",
469 name: "indented id fixture",
470 language: "LiNo",
471 source: "greeting:\n hello\n",
472 expected_reconstruction: "greeting:\n hello\n",
473 provenance: "link-foundation/links-notation csharp/Link.Foundation.Links.Notation.Tests/IndentedIdSyntaxTests.cs; license: Unlicense",
474 verification_expectation: ParityVerificationExpectation::Clean,
475 transform_expectation: None,
476 capabilities: &[ParityCapability::LosslessParsing],
477 },
478 ParityFixture {
480 target_name: "links-notation",
481 name: "self reference object fixture",
482 language: "LiNo",
483 source: "(obj_0: list (int 1) (int 2) (obj_1: list (int 3) (int 4) obj_0))\n",
484 expected_reconstruction: "(obj_0: list (int 1) (int 2) (obj_1: list (int 3) (int 4) obj_0))\n",
485 provenance: "link-foundation/links-notation csharp/Link.Foundation.Links.Notation.Tests/NestedSelfReferenceTests.cs; license: Unlicense",
486 verification_expectation: ParityVerificationExpectation::Clean,
487 transform_expectation: None,
488 capabilities: &[
489 ParityCapability::LosslessParsing,
490 ParityCapability::ObjectRoundTrip,
491 ],
492 },
493 ParityFixture {
495 target_name: "links-notation",
496 name: "whole network serialization fixture",
497 language: "LiNo",
498 source: "(papa loves mama)\n",
499 expected_reconstruction: "(papa loves mama)\n",
500 provenance: "link-foundation/links-notation README parse_lino_to_links/format_links round-trip API; license: Unlicense",
501 verification_expectation: ParityVerificationExpectation::Clean,
502 transform_expectation: None,
503 capabilities: &[
504 ParityCapability::LosslessParsing,
505 ParityCapability::LinoSerialization,
506 ],
507 },
508 ParityFixture {
510 target_name: "link-cli",
511 name: "create substitution fixture",
512 language: "LiNo",
513 source: "(() ((1 1)))\n",
514 expected_reconstruction: "(() ((1 1)))\n",
515 provenance: "link-foundation/link-cli csharp/Foundation.Data.Doublets.Cli.Tests/BasicQueryProcessor.cs Foundation.Data.Doublets.Cli.Tests; license: Unlicense",
516 verification_expectation: ParityVerificationExpectation::Clean,
517 transform_expectation: None,
518 capabilities: &[ParityCapability::TransformBySubstitution],
519 },
520 ParityFixture {
522 target_name: "link-cli",
523 name: "update substitution fixture",
524 language: "LiNo",
525 source: "(((1: 1 1)) ((1: 1 2)))\n",
526 expected_reconstruction: "(((1: 1 1)) ((1: 1 2)))\n",
527 provenance: "link-foundation/link-cli csharp/Foundation.Data.Doublets.Cli.Tests/BasicQueryProcessor.cs Foundation.Data.Doublets.Cli.Tests; license: Unlicense",
528 verification_expectation: ParityVerificationExpectation::Clean,
529 transform_expectation: None,
530 capabilities: &[ParityCapability::TransformBySubstitution],
531 },
532 ParityFixture {
534 target_name: "link-cli",
535 name: "delete substitution fixture",
536 language: "LiNo",
537 source: "(((1 1)) ())\n",
538 expected_reconstruction: "(((1 1)) ())\n",
539 provenance: "link-foundation/link-cli csharp/Foundation.Data.Doublets.Cli.Tests/BasicQueryProcessor.cs Foundation.Data.Doublets.Cli.Tests; license: Unlicense",
540 verification_expectation: ParityVerificationExpectation::Clean,
541 transform_expectation: None,
542 capabilities: &[ParityCapability::TransformBySubstitution],
543 },
544 ParityFixture {
546 target_name: "link-cli",
547 name: "swap substitution fixture",
548 language: "LiNo",
549 source: "((($index: $source $target)) (($index: $target $source)))\n",
550 expected_reconstruction: "((($index: $source $target)) (($index: $target $source)))\n",
551 provenance: "link-foundation/link-cli csharp/Foundation.Data.Doublets.Cli.Tests/AdvancedMixedQueryProcessor.cs Foundation.Data.Doublets.Cli.Tests; license: Unlicense",
552 verification_expectation: ParityVerificationExpectation::Clean,
553 transform_expectation: None,
554 capabilities: &[ParityCapability::TransformBySubstitution],
555 },
556 ParityFixture {
558 target_name: "lino-objects-codec",
559 name: "roundtrip primitive object fixture",
560 language: "LiNo",
561 source: "(int 42)\n(str aGVsbG8=)\n",
562 expected_reconstruction: "(int 42)\n(str aGVsbG8=)\n",
563 provenance: "link-foundation/lino-objects-codec csharp/tests/Lino.Objects.Codec.Tests/BasicTypesTests.cs; license: Unlicense",
564 verification_expectation: ParityVerificationExpectation::Clean,
565 transform_expectation: None,
566 capabilities: &[ParityCapability::ObjectRoundTrip],
567 },
568 ParityFixture {
570 target_name: "lino-objects-codec",
571 name: "shared reference object fixture",
572 language: "LiNo",
573 source: "(obj_0: list obj_1 obj_1 obj_1)\n(obj_1: dict ((str c2hhcmVk) (str dmFsdWU=)))\n",
574 expected_reconstruction: "(obj_0: list obj_1 obj_1 obj_1)\n(obj_1: dict ((str c2hhcmVk) (str dmFsdWU=)))\n",
575 provenance: "link-foundation/lino-objects-codec csharp/tests/Lino.Objects.Codec.Tests/CircularReferencesTests.cs; license: Unlicense",
576 verification_expectation: ParityVerificationExpectation::Clean,
577 transform_expectation: None,
578 capabilities: &[ParityCapability::ObjectRoundTrip],
579 },
580 ParityFixture {
582 target_name: "lino-objects-codec",
583 name: "circular reference object fixture",
584 language: "LiNo",
585 source: "(obj_0: list obj_0)\n",
586 expected_reconstruction: "(obj_0: list obj_0)\n",
587 provenance: "link-foundation/lino-objects-codec csharp/tests/Lino.Objects.Codec.Tests/CircularReferencesTests.cs; license: Unlicense",
588 verification_expectation: ParityVerificationExpectation::Clean,
589 transform_expectation: None,
590 capabilities: &[ParityCapability::ObjectRoundTrip],
591 },
592 ParityFixture {
594 target_name: "relative-meta-logic",
595 name: "dependent type fixture",
596 language: "RML",
597 source: "(Type: Type Type)\n(Natural: Type Natural)\n(? (Type of Type))\n",
598 expected_reconstruction: "(Type: Type Type)\n(Natural: Type Natural)\n(? (Type of Type))\n",
599 provenance: "link-foundation/relative-meta-logic examples/dependent-types.lino; license: Unlicense",
600 verification_expectation: ParityVerificationExpectation::Clean,
601 transform_expectation: None,
602 capabilities: &[
603 ParityCapability::SemanticEvaluation,
604 ParityCapability::SelfDescription,
605 ],
606 },
607 ParityFixture {
609 target_name: "relative-meta-logic",
610 name: "many-valued truth fixture",
611 language: "RML",
612 source: "(and: min)\n(or: max)\n(? (both true and false))\n(? (neither true nor false))\n",
613 expected_reconstruction: "(and: min)\n(or: max)\n(? (both true and false))\n(? (neither true nor false))\n",
614 provenance: "link-foundation/relative-meta-logic examples/belnap-four-valued.lino and examples/ternary-kleene.lino; license: Unlicense",
615 verification_expectation: ParityVerificationExpectation::Clean,
616 transform_expectation: None,
617 capabilities: &[ParityCapability::SemanticEvaluation],
618 },
619 ParityFixture {
621 target_name: "relative-meta-logic",
622 name: "probabilistic liar paradox fixture",
623 language: "RML",
624 source: "(s: s is s)\n((s = false) has probability 0.5)\n(? (s = false))\n(? (not (s = false)))\n",
625 expected_reconstruction: "(s: s is s)\n((s = false) has probability 0.5)\n(? (s = false))\n(? (not (s = false)))\n",
626 provenance: "link-foundation/relative-meta-logic examples/liar-paradox.lino; license: Unlicense",
627 verification_expectation: ParityVerificationExpectation::Clean,
628 transform_expectation: None,
629 capabilities: &[ParityCapability::SemanticEvaluation],
630 },
631 ParityFixture {
633 target_name: "formal-ai",
634 name: "seed concepts corpus fixture",
635 language: "LiNo",
636 source: "concept_links_notation\n term \"Links Notation\"\n intent \"concept_lookup\"\n category \"data-format\"\n source \"https://github.com/linksplatform/Documentation\"\n source_kind \"project-docs\"\n",
637 expected_reconstruction: "concept_links_notation\n term \"Links Notation\"\n intent \"concept_lookup\"\n category \"data-format\"\n source \"https://github.com/linksplatform/Documentation\"\n source_kind \"project-docs\"\n",
638 provenance: "link-assistant/formal-ai data/seed/concepts.lino; license: Unlicense",
639 verification_expectation: ParityVerificationExpectation::Clean,
640 transform_expectation: None,
641 capabilities: &[
642 ParityCapability::FormalizationRoundTrip,
643 ParityCapability::SemanticEvaluation,
644 ],
645 },
646 ParityFixture {
648 target_name: "formal-ai",
649 name: "seed translation meanings corpus fixture",
650 language: "LiNo",
651 source: "meanings\n meaning \"translate\"\n role \"translation_action\"\n lexeme \"en\"\n word \"translate\"\n",
652 expected_reconstruction: "meanings\n meaning \"translate\"\n role \"translation_action\"\n lexeme \"en\"\n word \"translate\"\n",
653 provenance: "link-assistant/formal-ai data/seed/meanings-translation.lino; license: Unlicense",
654 verification_expectation: ParityVerificationExpectation::Clean,
655 transform_expectation: None,
656 capabilities: &[
657 ParityCapability::FormalizationRoundTrip,
658 ParityCapability::CrossLanguageReconstruction,
659 ],
660 },
661 ParityFixture {
663 target_name: "formal-ai",
664 name: "industry benchmark corpus fixture",
665 language: "LiNo",
666 source: "benchmark_suite_issue_304_industry_permissive_slice\n record_type \"benchmark_suite\"\n id \"issue_304_industry_permissive_slice\"\n title \"Permissive industry benchmark slice\"\n minimum_pass_count \"10\"\n",
667 expected_reconstruction: "benchmark_suite_issue_304_industry_permissive_slice\n record_type \"benchmark_suite\"\n id \"issue_304_industry_permissive_slice\"\n title \"Permissive industry benchmark slice\"\n minimum_pass_count \"10\"\n",
668 provenance: "link-assistant/formal-ai data/benchmarks/industry-suite.lino; license: Unlicense",
669 verification_expectation: ParityVerificationExpectation::Clean,
670 transform_expectation: None,
671 capabilities: &[ParityCapability::SemanticEvaluation],
672 },
673 ParityFixture {
675 target_name: "formal-ai",
676 name: "coding modification benchmark corpus fixture",
677 language: "LiNo",
678 source: "coding_modification_case_en_reverse_sort\n record_type \"coding_modification_case\"\n id \"en_reverse_sort\"\n expected_intent \"write_program\"\n expected_answer_contains \"names.sort_by(|a, b| b.cmp(a))\"\n",
679 expected_reconstruction: "coding_modification_case_en_reverse_sort\n record_type \"coding_modification_case\"\n id \"en_reverse_sort\"\n expected_intent \"write_program\"\n expected_answer_contains \"names.sort_by(|a, b| b.cmp(a))\"\n",
680 provenance: "link-assistant/formal-ai data/benchmarks/coding-modification-suite.lino; license: Unlicense",
681 verification_expectation: ParityVerificationExpectation::Clean,
682 transform_expectation: None,
683 capabilities: &[
684 ParityCapability::FormalizationRoundTrip,
685 ParityCapability::SemanticEvaluation,
686 ],
687 },
688 ParityFixture {
690 target_name: "meta-expression",
691 name: "Hawaii naturalization fixture",
692 language: "English",
693 source: "Hawaii is a state.\n",
694 expected_reconstruction: "Hawaii is a state.\n",
695 provenance: "link-assistant/meta-expression docs/FORMALIZE.md and js/data/semantic-lexicon.json 351 concepts; license: Unlicense",
696 verification_expectation: ParityVerificationExpectation::Clean,
697 transform_expectation: None,
698 capabilities: &[
699 ParityCapability::FormalizationRoundTrip,
700 ParityCapability::TriviaPreservation,
701 ParityCapability::CrossLanguageReconstruction,
702 ],
703 },
704 ParityFixture {
706 target_name: "meta-expression",
707 name: "1 + 1 formalization fixture",
708 language: "English",
709 source: "1 + 1 = 2\n",
710 expected_reconstruction: "1 + 1 = 2\n",
711 provenance: "link-assistant/meta-expression docs/FORMALIZE.md; license: Unlicense",
712 verification_expectation: ParityVerificationExpectation::Clean,
713 transform_expectation: None,
714 capabilities: &[
715 ParityCapability::FormalizationRoundTrip,
716 ParityCapability::TriviaPreservation,
717 ],
718 },
719 ParityFixture {
721 target_name: "meta-expression",
722 name: "this statement is false fixture",
723 language: "English",
724 source: "this statement is false\n",
725 expected_reconstruction: "this statement is false\n",
726 provenance: "link-assistant/meta-expression docs/FORMAL_AI_COMPATIBILITY.md; license: Unlicense",
727 verification_expectation: ParityVerificationExpectation::Clean,
728 transform_expectation: None,
729 capabilities: &[
730 ParityCapability::FormalizationRoundTrip,
731 ParityCapability::TriviaPreservation,
732 ],
733 },
734 wave_two::AST_GREP_FIXTURE,
735 wave_two::SEMGREP_FIXTURE,
736 wave_two::COMBY_FIXTURE,
737 wave_two::GRITQL_FIXTURE,
738 wave_two::SRCML_FIXTURE,
739 wave_two::DIFFTASTIC_FIXTURE,
740 wave_two::BABEL_FIXTURE,
741 wave_two::SWC_FIXTURE,
742 wave_two::OPENREWRITE_FIXTURE,
743 wave_two::SPOON_FIXTURE,
744 wave_two::JAVAPARSER_FIXTURE,
745 wave_two::RASCAL_FIXTURE,
746 wave_two::STRATEGO_SPOOFAX_FIXTURE,
747 wave_two::TXL_FIXTURE,
748 wave_two::MPS_FIXTURE,
749 wave_two::COCCINELLE_FIXTURE,
750 wave_two::GF_FIXTURE,
751 wave_two::UNIVERSAL_DEPENDENCIES_FIXTURE,
752 wave_two::LANGUAGETOOL_FIXTURE,
753 wave_two::DOUBLETS_RS_FIXTURE,
754];