1
1
mirror of https://github.com/github/semantic.git synced 2024-12-25 07:55:12 +03:00
Commit Graph

471 Commits

Author SHA1 Message Date
Rob Rix
9c1dce7ab9 🔥 the Context/Empty Listable instances. 2017-10-23 11:53:42 -04:00
Rob Rix
c0d833f361 🔥 the Context/Empty tests of the Mergeable laws. 2017-10-23 11:53:36 -04:00
Rob Rix
6a0321c401 Test the Mergeable laws against a Union. 2017-10-23 10:40:33 -04:00
Rob Rix
8245e337ce Define a Listable instance for Union. 2017-10-23 10:36:53 -04:00
Rob Rix
395678bcb3 Test the Mergeable laws against Context & Empty. 2017-10-23 10:32:48 -04:00
Rob Rix
0184f57713 Define Listable instances for Context & Empty. 2017-10-23 10:32:32 -04:00
joshvera
2f26a09905 fix tests 2017-10-19 21:32:27 -04:00
Rick Winfrey
2dad14e33e Add Listable instance for CyclomaticComplexity 2017-10-16 14:24:49 -07:00
Rob Rix
ed8e08ef26 Migrate a bunch of the tests away from Syntax. 2017-10-10 13:18:11 -04:00
Rob Rix
44fafdbd9a Define a Listable instance for Unions. 2017-10-10 13:10:57 -04:00
Rob Rix
ac5e0b3e9f 🔥 the Listable instances for Category & Syntax. 2017-10-10 13:00:26 -04:00
Rob Rix
27758821e8 Use the comparableTerms relation in the RWS tests. 2017-10-03 15:10:11 -04:00
Rob Rix
b85aa53af9 Spacing. 2017-10-03 09:29:15 -04:00
Rob Rix
ac3646f925 Test that genericLiftCompare gives equivalent behaviour to compare for recursive types. 2017-10-03 09:29:06 -04:00
Rob Rix
5a024b40f7 Test that genericLiftCompare gives equivalent behaviour to compare for sum types. 2017-10-03 09:25:39 -04:00
Rob Rix
7e034fa4c1 Test that genericLiftCompare gives equivalent behaviour to compare for product types. 2017-10-03 09:23:44 -04:00
Rob Rix
6f4539cdce Stub in a module for generically-implemented Ord1 specs. 2017-10-03 09:15:45 -04:00
joshvera
b3667104fb Merge remote-tracking branch 'origin/master' into typescript-assignment 2017-09-28 14:24:57 -07:00
Rob Rix
26d44ae2f0 Merge the Decorators module into Data.Syntax.Algebra. 2017-09-27 12:54:01 -04:00
Rob Rix
b31043a3eb Rename the Diff module to Data.Diff. 2017-09-27 12:41:41 -04:00
Rob Rix
9bd0b02ac9 Rename the Term module to Data.Term. 2017-09-27 12:37:37 -04:00
Rob Rix
e8b7e89dca Rename the Patch module to Data.Patch. 2017-09-27 12:29:07 -04:00
Rob Rix
01e8e1725f Move the listable Syntax synonym into Data.Functor.Listable. 2017-09-26 09:48:59 -04:00
Rob Rix
c9e4968d93 Migrate the RWS tests to à la carte syntax. 2017-09-26 09:44:42 -04:00
Rob Rix
8e674538e3 Define Listable1 instances for Functions & Methods. 2017-09-25 19:25:14 -04:00
Rob Rix
f274a9dd7d Define a Listable1 instance for Context. 2017-09-25 19:20:01 -04:00
Rob Rix
aae77f6e0e Define a Listable1 instance for Comment. 2017-09-25 19:19:51 -04:00
Rob Rix
b0c79efa9b Define a Listable1 instance for NonEmpty. 2017-09-25 19:19:37 -04:00
Rob Rix
b32a911484 Define Listable instances for Return and Empty. 2017-09-25 19:14:00 -04:00
Rob Rix
909e199e72 Define Listable instances for If and Identifier. 2017-09-25 19:12:44 -04:00
Rob Rix
468a874168 Define Listable instances for non-empty Unions. 2017-09-25 19:08:55 -04:00
Timothy Clem
7107aec6db Add a equivalency check for terms 2017-09-19 09:36:12 -07:00
Rob Rix
7789e83875 Correct the RWS tests. 2017-09-14 11:49:57 -04:00
Rob Rix
bfc0b9d0b0 Give Diff a pair of type parameters for the annotation types. 2017-09-14 09:41:52 -04:00
Rob Rix
cf9d752d43 Parameterize Patch by before and after types. 2017-09-13 21:37:23 -04:00
Rob Rix
9de429be45 🔥 the SyntaxTerm, SyntaxTermF, & SyntaxDiff type synonyms. 2017-09-13 19:14:01 -04:00
Rob Rix
20e0943c72 🔥 the Sum inside Patch nodes. 2017-09-13 16:07:22 -04:00
Rob Rix
0ec9584a6d Correct the tests. 2017-09-13 16:03:27 -04:00
Rob Rix
a0eda2396a Correct the tests. 2017-09-13 11:19:06 -04:00
Rob Rix
e36034455c Correct the tests. 2017-09-13 09:45:10 -04:00
Rob Rix
ecb19530d6 Correct most of the tests. 2017-09-12 10:49:45 -04:00
Rob Rix
a140d2f4c4 Correct the Listable1 instance for Diff. 2017-09-12 10:47:50 -04:00
Rob Rix
d0a1d31c68 Correct the Listable2 instance for DiffF. 2017-09-12 10:46:49 -04:00
Rob Rix
b3b81846b3 Define a Listable1 instance for BindingF. 2017-09-12 10:44:19 -04:00
Rob Rix
57f578618c Define Listable1 instances for Sum & Product. 2017-09-12 10:43:31 -04:00
Rob Rix
c2f4ef3572 Merge branch 'relocate-json-fields' into directed-acyclic-diffs 2017-09-11 16:20:57 -04:00
Rob Rix
2c83e7e283 Merge branch 'master' into specialized-terms-and-diffs 2017-09-11 16:01:20 -04:00
Rob Rix
1cd6dd2899 Update the tests. 2017-09-11 15:48:58 -04:00
Rob Rix
110be2449c Update the tests. 2017-09-09 21:44:15 +01:00
Rob Rix
41baef6c9d Listing diffs does not produce metavariables or bindings. 2017-09-09 18:24:05 +01:00
Rob Rix
2a7a937a7e 🔥 a bunch more redundant imports. 2017-09-09 14:58:07 +01:00
Rob Rix
10b262e069 🔥 a stray import. 2017-09-09 14:54:49 +01:00
Rob Rix
24914eeb05 Move the remaining Listable instances into the tests. 2017-09-09 14:51:37 +01:00
Rob Rix
3ad5374b94 Move all the Listable stuff into the tests. 2017-09-09 14:44:57 +01:00
Rob Rix
a1bfea611f Update all the tests. 2017-09-09 14:18:08 +01:00
Rob Rix
e2ffba2401 Rename headF to termAnnotation. 2017-09-09 11:50:29 +01:00
Rob Rix
32b2f90316 🔥 a couple of obsolete tests. 2017-09-01 11:54:45 -04:00
Rob Rix
1270bb41c4 Correct the <|>/distributivity through children rules test. 2017-09-01 11:53:40 -04:00
Rob Rix
bad1c832f0 Correct precedence. 2017-09-01 11:51:18 -04:00
Rob Rix
5366bfff3c 🔥 obsolete tests of catchError/repetitions. 2017-09-01 11:50:48 -04:00
Rob Rix
c2f30feff2 Test that exhaustiveness errors are uncaught. 2017-09-01 11:50:10 -04:00
Rob Rix
2110d7d076 Slight improvement to the unexpected end of branch test. 2017-09-01 11:49:46 -04:00
Rob Rix
a640b48ddc Test that unexpected end of branch errors are uncaught. 2017-09-01 11:47:38 -04:00
Rob Rix
7fc97f6b9d Rename a test. 2017-09-01 11:33:33 -04:00
Rob Rix
6afe2b5ae9 Test that handlers can error. 2017-09-01 11:32:57 -04:00
Rob Rix
eb65bd9622 Test the inverse case. 2017-09-01 11:28:59 -04:00
Rob Rix
99b4d5037a 🔥 unnecessary parens. 2017-09-01 11:28:41 -04:00
Rob Rix
70cfa6e070 Rename & correct a catchError test. 2017-09-01 11:26:46 -04:00
Rob Rix
de318561dd Correct a test’s expectation. 2017-09-01 11:25:30 -04:00
Rob Rix
773644d040 We limit the call stacks now. 2017-08-18 10:41:14 -04:00
Rob Rix
9e2abcaa13 🔥 a redundant import. 2017-08-17 17:57:06 -04:00
Rob Rix
7b4fcec381 Fix the tests up. 2017-08-17 17:56:01 -04:00
Rob Rix
3c7f471607 Test that eof matches before anonymous nodes at the end of branches.
Currently failed.
2017-08-16 08:55:26 -04:00
Rob Rix
8265390933 Test that eof matches at the end of branches. 2017-08-16 08:52:29 -04:00
Rob Rix
f8ab5f2ae3 Update the imports. 2017-08-11 08:02:30 -04:00
Rob Rix
ff9e58c95f Derive a Bounded instance. 2017-08-08 08:43:49 -04:00
Rob Rix
9530b95a37 🔥 the state in error results. 2017-08-07 12:15:02 -04:00
Rob Rix
8faf9f60be Correct the tests. 2017-08-06 19:40:45 -04:00
Rob Rix
6c1e9afbb0 Errors hold Spans now. 2017-08-06 19:32:38 -04:00
Rob Rix
1ab9a13c6d Ignore the state in the error callback spec. 2017-08-06 19:31:44 -04:00
Rob Rix
5129bc5418 We don’t need to qualify these. 2017-08-06 19:31:15 -04:00
Rob Rix
65a134f3c8 Derive Ord & Ix instances for the specs’ Grammar type. 2017-08-06 19:29:43 -04:00
Rob Rix
c1596f942d Assignment errors can be strings. 2017-08-06 18:56:01 -04:00
Rob Rix
59e6fd621c 🔥 stateErrorCounter. 2017-08-06 18:52:35 -04:00
Rob Rix
07e26d03e2 Produce the current state on error. 2017-08-06 18:51:19 -04:00
Rob Rix
35f92f98c3 Fix a test now that we always try the error handler on errors. 2017-08-04 09:21:59 -04:00
Rob Rix
0a8411e534 Disambiguate assignment results. 2017-08-04 09:11:22 -04:00
Rob Rix
68d3a265ae Fix a test with ambiguous results. 2017-08-04 08:58:28 -04:00
Rob Rix
61087b394e Fix a test case which now succeeds. 2017-08-04 08:54:04 -04:00
Rob Rix
71642ae1bd Fix a test case which fails at the end of input. 2017-08-04 08:52:08 -04:00
Rob Rix
9e1aad5032 Fix a test case which fails with the earlier error. 2017-08-04 08:50:56 -04:00
Rob Rix
e9e9c54fa1 Correct a spec. 2017-08-03 21:32:47 -04:00
Rob Rix
47a3f1e713 Correct the tests. 2017-08-03 21:32:11 -04:00
Rob Rix
cabab1f9ed Check advancement using the state offset instead of the counter. 2017-08-03 21:29:22 -04:00
Rob Rix
9bfe67afd9 🔥 stateError. 2017-08-03 21:26:43 -04:00
Rob Rix
030b2967c3 Add a monotonic counter of the number of error handlers invoked. 2017-08-03 20:21:42 -04:00
Rob Rix
766e75c3b6 Correct the tests. 2017-08-03 19:48:24 -04:00
Rob Rix
fa87a249ad Revert "Use the state nodes to indicate that we’ve advanced past nodes.."
This reverts commit b2485da5199703d48d11ccf6b2374712b5067ded.
2017-08-03 15:38:11 -04:00
Rob Rix
adb84e33f4 Use the state nodes to indicate that we’ve advanced past nodes.. 2017-08-03 13:13:37 -04:00
Rob Rix
d041dad599 Fix some missing imports. 2017-08-03 12:06:03 -04:00
Rob Rix
2529288f87 Merge branch 'master' into requiem-for-a-protolude 2017-08-03 11:51:09 -04:00
Rob Rix
c82bf8f033 Test that error call stacks point at the failing assignments. 2017-08-02 12:21:56 -04:00
Rob Rix
19850efea1 Add callstacks to the spec rules. 2017-08-02 12:11:14 -04:00
Rob Rix
8e8d1a1794 🔥 a redundant import. 2017-07-28 14:46:56 -04:00
Rob Rix
7da8799e08 🔥 Prologue & protolude. 2017-07-28 14:37:02 -04:00
Rob Rix
aa15a97d3e Test matching of alternations around pure. 2017-07-27 09:36:13 -04:00
Rob Rix
49449f5be2 Test that alternation distributes through committed choice & is nullable. 2017-07-26 18:42:36 -04:00
Rob Rix
a5236753e0 Test that alternation distributes through committed choice and matches single values. 2017-07-26 18:42:18 -04:00
Rob Rix
4038d4b1a3 Test that alternation distributes through committed choices and matches repeated values. 2017-07-26 18:41:24 -04:00
Rob Rix
2888a0d7f5 Test that committed choices of repetitions are nullable. 2017-07-26 18:40:19 -04:00
Rob Rix
786e6f6e60 Make sure that we match both when alternating repetitions. 2017-07-26 17:43:39 -04:00
Rob Rix
27f6d2ed25 Test that alternation distributes through children rules. 2017-07-26 12:14:12 -04:00
Rob Rix
898e119af9 Test that alternations of repetitions succeed. 2017-07-26 12:02:18 -04:00
Rob Rix
5c0d27c1a2 Test that overlapping choices match the right branch.
This currently fails due to the left-biased nature of how we merge committed choices.
2017-07-26 11:11:15 -04:00
Rob Rix
6e1be163b3 Test that overlapping choices match the left branch. 2017-07-26 11:09:52 -04:00
Rob Rix
d6beb353fa 🔥 unused imports. 2017-07-23 16:08:05 -04:00
Rob Rix
aa8ebfcd73 Remove the leaf type parameter from SyntaxTerm. 2017-07-23 15:56:08 -04:00
Rob Rix
0ba3264f32 Remove the leaf type parameter from Syntax. 2017-07-23 15:46:29 -04:00
Rob Rix
32c03be782 Rename AssignmentState to State. 2017-07-22 16:13:42 -04:00
Rob Rix
09787f5e93 Combine the Error constructors. 2017-07-22 15:43:48 -04:00
Rob Rix
a04a05cf1a Combine ErrorCause into Error. 2017-07-22 15:31:43 -04:00
Rob Rix
83a0d9c60e Swap the order of the source & assignment. 2017-07-22 14:06:07 -04:00
Rob Rix
455f912941 Swap the order of the projection & source. 2017-07-22 14:04:52 -04:00
Rob Rix
d464da8089 runAssignment is exhaustive. 2017-07-22 13:59:45 -04:00
Timothy Clem
9f20e57740 Spacing 2017-07-21 09:08:57 -07:00
Timothy Clem
2f9f9f5752 Merge remote-tracking branch 'origin/master' into remove-sourceState 2017-07-21 09:07:33 -07:00
Timothy Clem
b934b97f27 s/Palatte/Palette 2017-07-21 09:00:30 -07:00
Timothy Clem
2880052c15 Remove sourceState from AssignmentState 2017-07-20 10:23:21 -07:00
Timothy Clem
1183c0265a err no longer used in these specs 2017-07-20 09:36:41 -07:00
Timothy Clem
6b1a3b0efd Fix zero width repetitions infinite loop
Introduces a stateCounter to detect progress and accepts one and only one zero width match.

Refactored tests a bit to not assert internal state unless specifically necessary.
2017-07-20 09:32:24 -07:00
Timothy Clem
ee0fb33a94 Demonstrate infinite loop with many (pure x) 2017-07-20 09:32:24 -07:00
Timothy Clem
0b23bf901f Use const 2017-07-20 09:32:24 -07:00
Timothy Clem
4cdac77633 Test out catchError 2017-07-20 09:32:24 -07:00
Timothy Clem
64d2175f58 Fix up assignment specs 2017-07-17 14:39:08 -07:00
Rob Rix
cf5794d9cc 🔥 a redundant import. 2017-07-12 15:57:14 -04:00
Rob Rix
e050a44cf4 Define a Node type for the intermediate representation of metadata. 2017-07-12 15:55:21 -04:00
Rob Rix
a1b30f7524 Fix up the tests. 2017-07-12 14:51:38 -04:00
Rob Rix
5c44267e27 Fix the specs. 2017-06-26 12:56:56 -04:00
Rob Rix
fe29a865c3 🔥 redundant hidden symbols. 2017-06-24 17:32:18 -04:00
Rob Rix
b7ea75a9bd Define Source abstractly. 2017-06-24 11:32:04 -04:00
Rob Rix
fc09d74b73 Rename the Source module to Data.Source. 2017-06-24 09:59:41 -04:00
Rob Rix
4097d4bfc0 Rename SourceSpan to Span and SourcePos to Pos. 2017-06-24 09:30:34 -04:00
Rob Rix
eaa98912de Bounds are closed ranges. 2017-06-15 10:06:15 -04:00
Rob Rix
93f61519b7 Update the featureVectorDecorator bounds test. 2017-06-15 09:46:51 -04:00
Rob Rix
46cfee6e28 Update the RWS spec. 2017-06-15 09:44:46 -04:00
Rob Rix
b019a2b237 Correct the spec. 2017-06-07 20:17:14 -04:00
Rob Rix
84c15e3e65 Don’t specify Node in the assignment spec. 2017-06-07 14:27:01 -04:00
Rob Rix
a66a76bb01 Construct the input AST using the node constructor. 2017-06-07 14:26:21 -04:00
Rob Rix
ddc58d3f83 Rename rec to node. 2017-06-07 14:23:37 -04:00
Rob Rix
51fcf532a8 Correct the spec. 2017-06-06 08:47:17 -04:00