Timothy Clem
d7317e7360
Fix up Ruby case/when parsing
2016-12-06 08:14:23 -08:00
Rick Winfrey
171544de29
Merge branch 'master' into javascript-improvements
2016-12-05 18:07:51 -06:00
Timothy Clem
e16055d71b
Bit Ruby TODO list
2016-12-05 15:58:20 -08:00
Timothy Clem
37098cf5c1
Fix up JavaScript return summaries due to new shape
2016-12-05 15:57:20 -08:00
Timothy Clem
2ee93b4525
New shape for yield statements
2016-12-05 15:56:18 -08:00
Timothy Clem
47402c7c8a
New shape for return statements
2016-12-05 15:54:59 -08:00
Timothy Clem
8bd7463dc2
Remove new_go.json
2016-12-05 14:53:24 -08:00
Timothy Clem
e7775aa7ff
Fix up go tests (sort of)
2016-12-05 14:52:11 -08:00
Timothy Clem
a3b87fbe84
Remove stack clean call in build
2016-12-05 13:19:52 -08:00
Timothy Clem
fdf3c5d276
Fix up crazy span numbers in javascript tests
2016-12-05 13:02:46 -08:00
joshvera
89754d574a
update tests
2016-12-01 16:07:40 -05:00
joshvera
b9ac5d866d
update tests
2016-12-01 16:03:52 -05:00
Rick Winfrey
c23afa4682
Remove new_javascript.json generator file
2016-11-30 18:20:03 -06:00
Rick Winfrey
df5bb88c9e
Update tests to include continue, yield and break statements
2016-11-30 18:19:10 -06:00
Rick Winfrey
bab0debf6d
Merge branch 'master' into parser-option
2016-11-22 15:19:30 -06:00
joshvera
f71c35d617
Handle every case by pattern matching on name in termConstructor instead of (name, children)
2016-11-22 15:10:10 -05:00
joshvera
165b6bae6f
update tests
2016-11-22 13:51:11 -05:00
joshvera
0ea0ff83d0
update tests
2016-11-22 13:34:21 -05:00
joshvera
c434f79162
Merge remote-tracking branch 'origin/master' into go-parser
2016-11-22 11:30:48 -05:00
joshvera
2f542a3952
update tests
2016-11-21 15:47:41 -05:00
joshvera
231310a484
update tests
2016-11-21 14:39:16 -05:00
joshvera
807752e33d
Map indexed expressions to subscript access
2016-11-14 19:12:17 -05:00
joshvera
30a3961409
Add go, defer, and subscript access statements
2016-11-14 19:05:02 -05:00
joshvera
6e248e76f0
Add select statements
2016-11-14 17:47:04 -05:00
joshvera
a1d9ccdcc9
++type switch tests
2016-11-14 17:26:06 -05:00
Timothy Clem
b368c80fb7
Last tree-sitter-parser bump
2016-11-10 15:47:18 -08:00
joshvera
8dbac2c98a
switch statements
2016-11-10 16:19:53 -05:00
Timothy Clem
d8b260e35e
Remove new_ruby
2016-11-10 12:55:42 -08:00
Timothy Clem
3f5e78c483
Slightly different approach to hash arg summaries
2016-11-10 12:51:48 -08:00
joshvera
524c151968
++tests
2016-11-10 15:36:44 -05:00
Timothy Clem
5b27115ae3
Test out that unnamed parameters work OK
2016-11-09 13:44:33 -08:00
Timothy Clem
35dd550533
Keyword and positional params
2016-11-09 13:42:41 -08:00
Timothy Clem
d98d96688d
Support keyword and hash arguments in Ruby
2016-11-09 10:48:50 -08:00
Timothy Clem
d978ff86b4
Get identation right for module
2016-11-08 15:54:02 -08:00
Timothy Clem
cafcd8fd91
Implement unless as a Negate syntax
2016-11-07 13:12:53 -08:00
Timothy Clem
b541a903dd
Collapse up Ruby begin with Try syntax
2016-11-07 10:26:59 -08:00
Timothy Clem
463d075879
Refactor ruby case/when into switch/case Syntax and start on elsif
2016-11-04 15:35:09 -07:00
Timothy Clem
961ea9a1de
Fix ruby function v. method calls
2016-11-04 14:49:39 -07:00
Timothy Clem
4ff0ccf653
New module/ternary test cases, back to broken multiple assignments
2016-11-04 12:57:08 -07:00
Timothy Clem
eee81e55fa
Summaries look like this now
2016-11-04 12:56:04 -07:00
Timothy Clem
c02c32ac7c
Back to a single Rescue syntax
2016-11-04 12:29:02 -07:00
Timothy Clem
345d4ed12e
Squotes on method context summaries
2016-11-04 08:08:45 -07:00
Rick Winfrey
7398e1cf4e
Import Parse
2016-11-03 18:17:25 -05:00
Timothy Clem
91798e1fb2
Show diffs in test cases. sha1, sha2 -> shas
2016-11-03 16:02:56 -07:00
Rick Winfrey
a637b78d90
Update callsites
2016-11-03 16:48:17 -05:00
Timothy Clem
c7fd3e7434
A few updated JavaScript summaries
2016-11-03 14:34:26 -07:00
Timothy Clem
70b4a3714c
Regenerate to catch method updates
2016-11-03 14:27:47 -07:00
Timothy Clem
769413813c
Better begin and method declaration parsing and summaries
2016-11-03 14:24:05 -07:00
Timothy Clem
947a7f1602
No longer needed
2016-11-03 13:28:51 -07:00
Timothy Clem
6d32be890f
Updated rescue and when tests
2016-11-03 13:26:53 -07:00
Timothy Clem
0bb8286a06
Didn't mean to commit this
2016-11-03 13:26:10 -07:00
Timothy Clem
8df2dca93b
Improve begin and when testing
2016-11-03 13:11:02 -07:00
Timothy Clem
c02dbb071f
New ensure and elseif tests with new template feature
2016-11-03 13:01:39 -07:00
Timothy Clem
aefd1e11dc
Merge branch 'template-syntax' into more-ruby-parsing
2016-11-03 11:34:14 -07:00
Timothy Clem
4a3ded2302
Enable syntax level templating in test case generation
2016-11-03 11:07:10 -07:00
Timothy Clem
4daf39476e
Parse rescue modifiers
2016-11-03 09:23:35 -07:00
Timothy Clem
a98185f1a6
Rescue blocks in all their glory
2016-11-02 17:18:09 -07:00
Timothy Clem
60de73b079
Revert some corpus changes that aren't needed
2016-11-02 17:10:18 -07:00
joshvera
733804973d
update for-loop tests
2016-11-02 18:46:48 -04:00
joshvera
beb466c260
Fix if statement tests
2016-11-02 18:09:32 -04:00
Timothy Clem
2e4c4ee194
Fully test case/when/else
2016-11-02 13:46:33 -07:00
joshvera
cbaab076d0
update tests
2016-11-02 16:46:17 -04:00
Timothy Clem
fbe7bc7c13
Better handling of case/when
2016-11-02 13:42:06 -07:00
joshvera
e45fd2d682
Fix grouped-var-declaration tests
2016-11-02 16:35:38 -04:00
joshvera
60af2fb271
regenerate tests
2016-11-02 16:29:27 -04:00
joshvera
061d605d2d
Fix tests for const-declarations-with-types, const-with-implicit-values
2016-11-02 16:14:44 -04:00
Timothy Clem
295d03dd43
Handle rescue blocks
2016-11-02 13:05:30 -07:00
Timothy Clem
71f53b37fd
Handle ensure blocks and refactor to BlockExpression syntax
2016-11-02 12:55:48 -07:00
joshvera
a0941c757d
Explode out const-declarations-with-types
2016-11-02 15:47:59 -04:00
joshvera
192897a37f
Fix const-declarations-without-types tests
2016-11-02 15:43:26 -04:00
Timothy Clem
6eebd35a8f
Improved elsif parsing and summaries
2016-11-02 12:32:46 -07:00
joshvera
0d58e97070
Merge remote-tracking branch 'origin/master' into go-parser
2016-11-02 15:25:50 -04:00
joshvera
342de506b4
update tests
2016-11-02 15:13:54 -04:00
joshvera
53f3600897
remove extra template-string.json
2016-11-02 15:01:11 -04:00
joshvera
96ea6f8e11
add all of the tests
2016-11-02 14:37:30 -04:00
Timothy Clem
185f1de69c
Better handling of else blocks
2016-11-02 11:16:57 -07:00
Timothy Clem
2c1497ab99
Handle else blocks in begin statements
2016-11-02 11:10:01 -07:00
Timothy Clem
fc73be16d7
Better handling of begin statements
2016-11-02 10:52:40 -07:00
joshvera
b27bf0e72c
add string literals
2016-11-02 11:07:06 -04:00
joshvera
eff1394ee0
Add imaginary literals
2016-11-02 11:02:55 -04:00
joshvera
edd6ebd511
Add rune literals
2016-11-02 11:02:00 -04:00
joshvera
968186b2da
generate tests
2016-11-02 10:50:05 -04:00
joshvera
e217e26a81
Add more terms to generate
2016-11-02 10:47:56 -04:00
joshvera
7580ec3248
add for, switch, and var stubs
2016-11-01 22:05:43 -04:00
joshvera
bbcfd2fcb7
add var declarations
2016-11-01 21:41:49 -04:00
joshvera
8e371856fa
add imports
2016-11-01 21:36:43 -04:00
joshvera
fb99a1421a
stub int literal
2016-11-01 16:33:43 -04:00
joshvera
533d43bd70
Parse function literals
2016-11-01 16:24:34 -04:00
joshvera
0a085edfeb
stub function-literal
2016-11-01 14:36:23 -04:00
joshvera
05f3929b6a
Merge remote-tracking branch 'origin/master' into go-parser
2016-11-01 12:48:15 -04:00
Timothy Clem
6cac25d2a9
Merge remote-tracking branch 'origin/master' into ruby
2016-11-01 08:50:54 -07:00
Rick Winfrey
fb73232449
Verify tests and generation are 👌
2016-11-01 10:19:04 -05:00
Rick Winfrey
d09d0d65d2
Remove EmptyResult constructor (no longer used)
2016-11-01 10:06:55 -05:00
Rick Winfrey
c058ac634d
Remove auto-formatted alignment
2016-11-01 10:06:36 -05:00
Rick Winfrey
67adf75fdf
++JavaScript tests
2016-11-01 10:03:25 -05:00
Rick Winfrey
35ff284569
Remove warning unnecessary do
2016-11-01 09:52:09 -05:00
Rick Winfrey
d9adbe8783
Simplify JSONMetaRepo fields
2016-11-01 09:51:54 -05:00
joshvera
95037e1b75
Add const declarations
2016-10-31 21:09:57 -04:00
joshvera
917732c48b
add const declarations
2016-10-31 19:23:25 -04:00
joshvera
3b3c800193
parse function calls
2016-10-31 18:22:10 -04:00
joshvera
19f42de32c
++tests
2016-10-31 17:29:40 -04:00
joshvera
16e492e705
++go
2016-10-31 17:24:00 -04:00
joshvera
14271201ab
update assignment.json
2016-10-31 17:14:18 -04:00
joshvera
52420da2dd
remove go-test repo
2016-10-31 17:13:57 -04:00
Timothy Clem
5f20127044
Stub out expected todo for ruby control statements
2016-10-31 13:56:19 -07:00
Timothy Clem
37ac36e22c
Regenerate with s/_/- and todos
2016-10-31 13:21:58 -07:00
Timothy Clem
2c96933c29
Generate to fix multiple-assignment
2016-10-31 13:14:58 -07:00
Timothy Clem
9ac247dbd4
Element reference parsing, control statement tests
2016-10-31 10:15:44 -07:00
Rick Winfrey
532a29aeec
Rename SemanticGitDiffSpec.hs -> IntegrationFormatSpec.hs
2016-10-27 21:09:04 -05:00
Rick Winfrey
b2709315c5
Rename for better consistency
2016-10-27 20:51:23 -05:00
Rick Winfrey
cb28917573
Add JSON format tests to integration-test
2016-10-27 20:51:09 -05:00
Rick Winfrey
8c3d9d0d76
Add JSON output format JavaScript JSONTestCases
2016-10-27 20:46:12 -05:00
Rick Winfrey
16c6e1da59
++diff-summary javascript test cases
2016-10-27 20:44:36 -05:00
Rick Winfrey
3cfbcd102d
Update SemanticGitDiffSpec to handle ExpectedResult data type
2016-10-27 20:43:30 -05:00
Rick Winfrey
4936f282ad
Simplify the structure of generator files; update GenerateTestCases
2016-10-27 20:42:46 -05:00
Rick Winfrey
df231ca64c
Add ToJSON and FromJSON instances for JSONTestCase and ExpectedResult
2016-10-27 20:40:20 -05:00
Rick Winfrey
4ac2608749
Add HashMap
2016-10-27 20:23:31 -05:00
Timothy Clem
ba305a2a44
Parse module declarations
2016-10-27 12:47:27 -07:00
Timothy Clem
c21307b5f7
Parse for iterator syntax
2016-10-27 10:07:24 -07:00
Timothy Clem
539a68f06e
Parse lambdas
2016-10-27 09:24:28 -07:00
Timothy Clem
f09c834e01
Parse array and percent array syntax
2016-10-27 08:30:34 -07:00
Timothy Clem
fec86e0a88
New tree-sitter and fix string delimiters
2016-10-27 08:24:43 -07:00
Timothy Clem
2a9e26f144
Support regex literals
2016-10-26 15:44:53 -07:00
Timothy Clem
644d101394
Support or, and operators
2016-10-26 15:22:59 -07:00
Rick Winfrey
682a1323fe
Add ExpectedResult type
...
- This enables the use of Effects so that we can run multiple effects
that generate different IO values, but are typed singularly as an
ExpectedResult type
2016-10-26 17:02:04 -05:00
Rick Winfrey
a31a883b30
Auto formatting
2016-10-26 17:01:15 -05:00
Timothy Clem
5dd53c0b93
if/unless modifiers and (sort of) unless statements
2016-10-26 14:49:51 -07:00
Timothy Clem
3bbfb765a5
Parse if, with some caveats
2016-10-26 14:32:08 -07:00
Timothy Clem
013f6392ff
Parse while and until statements and modifiers
2016-10-26 12:54:21 -07:00
Timothy Clem
986a3572d4
Merge remote-tracking branch 'origin/master' into ruby
2016-10-26 10:30:29 -07:00
Timothy Clem
1b6c70f4ee
Parse yield and return
2016-10-26 10:27:38 -07:00
Timothy Clem
eb52ca6f90
Handle method arguments, updated tree-sitter-ruby
2016-10-26 10:14:39 -07:00
Timothy Clem
1bc5ba394a
Classes, member invocation, case statements
2016-10-25 11:36:30 -07:00
Timothy Clem
649119c967
Method invocation
2016-10-24 12:23:10 -07:00
Timothy Clem
56c2dae42f
Bring in LOTS more of the ruby grammar
2016-10-24 10:43:31 -07:00
Timothy Clem
994b7a613e
Ruby math assignment (todo: broken)
2016-10-21 15:52:40 -07:00
joshvera
8b8e18c323
Map source_file to Module Syntax
2016-10-21 18:34:22 -04:00
Timothy Clem
b8463b6039
Ruby delimiters (sort of)
2016-10-21 14:41:04 -07:00
Timothy Clem
22c617e9e9
Ruby interpolation parsing
2016-10-21 13:55:00 -07:00
Timothy Clem
f5621a7ed0
Test parsing ruby numbers, strings, and symbols
2016-10-21 12:59:35 -07:00
joshvera
94239b4602
Merge remote-tracking branch 'origin/master' into go-parser
2016-10-21 13:53:33 -04:00
Rick Winfrey
5be0a11707
Update Import tests
2016-10-20 17:27:30 -05:00
Timothy Clem
caeeb79799
Regenerate ruby test corpus to get valid shas
2016-10-20 10:36:33 -07:00
Timothy Clem
00cb51b083
Fix multiline comment followed by comment bug
2016-10-20 10:07:15 -07:00
Rick Winfrey
1a787335b8
Update tests
2016-10-19 18:10:28 -05:00
Timothy Clem
e4bb574700
Catch integer literals and abbreviate in summaries
2016-10-19 11:02:02 -07:00
Timothy Clem
fc25ff9e86
Add ruby corpus as submodule
2016-10-19 10:36:56 -07:00
Timothy Clem
456bbb41ae
Handle basic assignment for ruby
2016-10-19 10:34:49 -07:00
Timothy Clem
c213e85e9c
Allow running integration tests only for one language
...
The --test-arguments can be passed like this:
stack build :integration-test --test-arguments "--language=ruby"
--language is naively parsed right now just to avoid getting in the way
of hspec's option parsing.
2016-10-19 10:15:58 -07:00
Rick Winfrey
1f5c73143d
++import.json tests
2016-10-18 16:54:15 -05:00
joshvera
d5532c9299
fix insert assignment test
2016-10-18 16:56:33 -04:00
joshvera
7809618716
Add template syntax support
2016-10-18 16:10:22 -04:00
joshvera
13c615731e
Replace output with failing tests
2016-10-18 14:54:54 -04:00
joshvera
1bff390a85
Change var to assignment
2016-10-18 14:52:48 -04:00
joshvera
f262eb8b4e
Add go.json generator and var.json
2016-10-18 14:49:45 -04:00
joshvera
ec00e4b0c3
Add go test submodule
2016-10-18 14:49:29 -04:00
Rick Winfrey
3b984eb470
++javascript
2016-10-18 10:34:49 -05:00
Rick Winfrey
99e070e107
Remove if-else generated file
2016-10-17 18:51:23 -05:00
Rick Winfrey
43e082c85f
Remove import generated file
2016-10-17 18:50:47 -05:00
Rick Winfrey
242654b05f
Update tests
2016-10-17 18:41:03 -05:00
Rick Winfrey
dfc11385d8
++tests
2016-10-14 13:40:07 -05:00
joshvera
1ec96efd63
bump tests
2016-10-14 12:19:31 -04:00
joshvera
3839a8605a
Bump tests
2016-10-14 12:12:38 -04:00
Rick Winfrey
0262cb0879
Merge branch 'master' into improve-anonymous-funs
2016-10-13 17:56:39 -05:00
joshvera
ca129b2449
bump tests
2016-10-13 18:02:14 -04:00
Rick Winfrey
383573aa3d
Merge branch 'master' into if-else-if
2016-10-13 17:01:23 -05:00
joshvera
4f978b7586
No quotes around anonymous functions
2016-10-13 17:58:17 -04:00
Rick Winfrey
80ebddae5c
Bump tests
2016-10-13 16:44:36 -05:00
joshvera
98627b74b7
Merge remote-tracking branch 'origin/master' into improve-anonymous-funs
2016-10-13 17:39:42 -04:00
Josh Vera
9f9dc4feab
Merge branch 'master' into improve-memory-usage
2016-10-13 16:21:11 -04:00
joshvera
b5ff4178e9
scope to getLabel
2016-10-13 16:16:50 -04:00
joshvera
be1ca766c1
Quote anonymous and brace exports
2016-10-13 12:56:27 -04:00
joshvera
73b947f71b
Update tests
2016-10-13 12:08:44 -04:00
joshvera
10b6852882
update tests
2016-10-12 19:44:27 -04:00
joshvera
c608d62a3a
Import from Diffing
2016-10-12 19:33:05 -04:00
joshvera
dfe8648a11
Fix tests
2016-10-12 19:19:36 -04:00
Timothy Clem
1859df9500
Test to no longer expect summaries for comments
2016-10-12 14:21:40 -07:00
Rick Winfrey
1234f5dbc3
++javascript tests
2016-10-12 14:59:58 -05:00
Rick Winfrey
d222090c37
Update if-else.json tests
2016-10-12 14:55:59 -05:00
joshvera
6ba48666ed
bump files
2016-10-11 16:18:26 -04:00
joshvera
440d168273
bump tests
2016-10-11 15:13:51 -04:00
joshvera
deb5a0f018
Fix SourceSpan in tests
2016-10-11 15:12:48 -04:00
joshvera
007a1580fe
Merge remote-tracking branch 'origin/master' into add-source-spans
2016-10-11 13:03:43 -04:00
joshvera
e57c80940e
bump tests
2016-10-11 12:52:26 -04:00
Rick Winfrey
329ce63a8e
++tests
2016-10-11 11:07:57 -05:00
joshvera
11d5cdcde7
Bump tests
2016-10-11 12:00:34 -04:00
joshvera
4fb07c28b6
Bump tests
2016-10-11 11:54:47 -04:00
joshvera
fbb6ddbff4
Bump tests
2016-10-11 11:26:57 -04:00
joshvera
a08cad66d0
++javascript
2016-10-11 11:13:44 -04:00
joshvera
399d01af97
update tests
2016-10-11 11:12:20 -04:00
joshvera
624918b113
remove files
2016-10-11 11:10:16 -04:00
joshvera
d95283f4a1
Merge remote-tracking branch 'origin/master' into add-source-spans
2016-10-11 10:45:22 -04:00
Rick Winfrey
1569611257
Update JSONtestcases shas
2016-10-10 12:39:22 -05:00
Rick Winfrey
d6f9104237
Update tests
2016-10-07 16:43:01 -05:00
Rick Winfrey
9a3fccc1e1
Update tests
2016-10-07 15:58:51 -05:00
joshvera
f7e0cb53dd
++javascript
2016-10-07 11:29:44 -04:00
joshvera
c0a8483263
Merge remote-tracking branch 'origin/master' into add-source-spans
2016-10-07 11:28:57 -04:00
Rick Winfrey
4453cd1ad9
Move javascript diff summary JSON test case files
2016-10-07 10:26:45 -05:00
Rick Winfrey
bbe8b00b34
++javascript
2016-10-07 10:21:14 -05:00
Rick Winfrey
3e23076ecc
Merge branch 'master' into import-export-syntax
2016-10-07 10:20:11 -05:00
Timothy Clem
da90b74044
New parsing of function params
2016-10-06 15:20:05 -07:00
joshvera
15cd4777e6
Add SourceSpans to customize ToJSON output for These SourceSpan SourceSpan
2016-10-06 17:55:54 -04:00
joshvera
39e3a01533
Fix up DiffSummarySpec ranges
2016-10-06 15:12:14 -04:00
Timothy Clem
3d7c8cf67d
Fix anonymous function parsing and summarizing
2016-10-06 12:05:10 -07:00
Timothy Clem
976b299071
Fix quoted strings
2016-10-06 11:42:21 -07:00
joshvera
f1a1c759b0
Fix some test errors
2016-10-06 14:20:58 -04:00
Timothy Clem
68b1cfac64
And the repo path is slightly different
2016-10-06 09:04:03 -07:00
Timothy Clem
02853cc422
Path still not quite right
2016-10-06 09:02:38 -07:00
Timothy Clem
47731b3faa
Bring back the right path here
2016-10-06 08:56:27 -07:00
Timothy Clem
068481b35b
Merge remote-tracking branch 'origin/master' into project-reorg
2016-10-06 08:45:04 -07:00
Timothy Clem
f004a5c3db
New path for test corpus
2016-10-05 17:16:59 -07:00
Timothy Clem
6cbfa91475
Try out moving project around
2016-10-05 16:17:46 -07:00
joshvera
b7df878c4b
Update specs
2016-10-05 17:41:00 -04:00
joshvera
4f41619c8e
Merge remote-tracking branch 'origin/master' into rws-large-diffs
2016-10-05 12:17:29 -04:00
joshvera
07b7b7598e
Rename prependSummary to appendSummary and update tests
2016-10-05 11:56:42 -04:00
joshvera
1f52815f9c
Merge 'origin/master' into rws-large-diffs
2016-10-03 19:02:36 -04:00
Rick Winfrey
cf64cf41d9
Update DiffSummarySpec
2016-10-03 16:39:29 -05:00
Timothy Clem
45a12c54f0
Fix testDiff in DiffSummarySpecs too
2016-09-30 14:15:02 -07:00
joshvera
bfe57829d6
Merge remote-tracking branch 'origin/master' into rws-large-diffs
2016-09-27 10:34:19 -04:00
Timothy Clem
b5c45f8c7c
New expected json output for dictionary
2016-09-20 10:31:50 -07:00
Timothy Clem
bf2c5966ba
Merge branch 'master' of https://github.com/github/semantic-diff into improve-number-summaries
2016-09-20 08:01:37 -07:00
Timothy Clem
7c390d9081
Merge branch 'master' of https://github.com/github/semantic-diff into improve-number-summaries
2016-09-19 15:27:00 -07:00
Timothy Clem
d632011a3c
Fix up tests
2016-09-19 15:23:07 -07:00
Rob Rix
8cec95aad4
Merge branch 'master' into pretty-print-expectations
...
# Conflicts:
# script/cibuild-semantic-diff
# script/cibuild-semantic-diff-linux
# test/RangeSpec.hs
# test/Spec.hs
2016-09-20 05:56:12 +09:00
Timothy Clem
edb69e2c69
Fix test, category printed as NumberLiteral now
2016-09-19 13:33:02 -07:00
Rob Rix
38d6bbe644
Merge branch 'master' into ghc8
2016-09-17 20:45:58 -04:00
joshvera
925fdfaeaf
remove &&& import
2016-09-16 11:52:31 -04:00
joshvera
0535744ebc
more imports
2016-09-16 11:48:58 -04:00
Rob Rix
e6372deeb6
🔥 a redundant constraint.
2016-09-15 18:38:18 -04:00
Rob Rix
8d465b96ab
Annotate the leaf type.
2016-09-15 18:34:54 -04:00
Rob Rix
97b7f27683
Give a type signature for decorate
.
...
This fixes a problem where ghc will loop forever trying to infer the
type.
2016-09-15 18:32:57 -04:00
Rob Rix
d0395cd227
🔥 some redundant parens.
2016-09-15 18:12:32 -04:00
Rob Rix
64d1d6b407
Monoid/Semigroup stuff.
2016-09-15 17:21:37 -04:00
Rick Winfrey
1a25bf9a11
Add RangeSpec to specs
2016-09-14 16:45:34 -05:00
Rick Winfrey
a4c5a26533
Add pretty diff expectations to semantic diff tests
2016-09-14 16:45:23 -05:00
Rob Rix
86d2a3950f
Revert " 🔥 a redundant import."
...
This reverts commit dc5698979818d0057eb558ec3ce2d8e09c941f44.
2016-09-14 02:44:26 -04:00
Rob Rix
85bb9d577a
Revert "Move totalSpan into Source."
...
This reverts commit 3085a4efe5b6b3e8807df6a05db784afccab58e2.
2016-09-14 02:41:28 -04:00
Rob Rix
25306dba99
🔥 a redundant import.
2016-09-14 02:19:24 -04:00
Rob Rix
6317228466
Move totalSpan into Source.
2016-09-14 01:57:51 -04:00
Rob Rix
a6633a5351
🔥 a redundant binding.
2016-09-13 15:10:49 -04:00
Rob Rix
1c335df1f0
Verify that sourceSpanToRange computes correct ranges within lines.
2016-09-13 15:04:17 -04:00
Rob Rix
e6f4db8ee8
Compute the insetting of SourceSpans & Ranges.
2016-09-13 15:03:58 -04:00
Rob Rix
50e5f8a411
Verify that sourceSpanToRange computes multi-line ranges.
2016-09-13 14:27:52 -04:00
Rob Rix
8de562b88e
Verify that totalSpan covers multiple lines.
2016-09-13 14:27:36 -04:00
Rob Rix
1b890bcde4
Verify that totalSpan covers single lines.
2016-09-13 14:27:29 -04:00
Rob Rix
8bdf162874
Rename the line-by-line test.
2016-09-13 14:27:15 -04:00
Rob Rix
c157962785
Add a helper to compute the total span of some source.
2016-09-13 14:27:05 -04:00
Rob Rix
6ce0ce5e26
Indentation.
2016-09-13 13:14:02 -04:00
Rob Rix
c5fed4ac25
Test sourceSpanToRange across arbitrary sources.
2016-09-13 12:37:59 -04:00
Rob Rix
61dd23789d
Rename the test.
2016-09-13 12:32:28 -04:00
Rob Rix
5459bd4313
🔥 This was wrong.
2016-09-13 12:23:25 -04:00
Rob Rix
77ddc0abd8
Source spans are zero-indexed.
2016-09-13 12:23:05 -04:00
Rob Rix
b7d9ab1875
Add a trivial test of SourceSpan -> Range computation.
2016-09-13 12:09:18 -04:00
Rob Rix
076f5c0d1e
Stub in a spec for sourceSpanToRange.
2016-09-13 11:59:46 -04:00
Rob Rix
b5d14e702c
Test that actualLineRanges is exhaustive.
2016-09-13 11:56:43 -04:00
Rob Rix
04519db7a9
Verify that actualLineRanges produces the intended # of lines.
2016-09-13 11:39:27 -04:00
Rob Rix
8d5bc01a75
Run the Source spec.
2016-09-13 11:39:05 -04:00
Rob Rix
dcc164d09f
Add a spec for Source.
2016-09-13 11:35:10 -04:00
Rob Rix
2b34916554
Build and run RangeSpec 😔
2016-09-13 11:18:38 -04:00
joshvera
d3440439dc
Merge remote-tracking branch 'origin/master' into rws-large-diffs
2016-09-12 14:55:20 -04:00
joshvera
dbb687b33e
Split Term and Diff into SyntaxTerm and SyntaxDiff types as well
2016-09-09 14:51:20 -04:00
Rob Rix
8d955c3f96
Placate hlint.
2016-09-09 14:47:24 -04:00
Rob Rix
98637ad656
Generalize Term/TermF & Diff/DiffF over the functor.
2016-09-09 14:46:50 -04:00
joshvera
499f5da329
Export isBranchInfo and clean up some warnings
2016-08-25 12:22:58 -04:00
joshvera
17da45b320
Moved isBranchInfo to DiffSummary
2016-08-24 15:28:10 -04:00
joshvera
3b33c6860f
Update some test diffs
2016-08-22 10:33:42 -04:00
joshvera
9064e5f047
Fix up semantic-diff-tests
2016-08-22 10:33:26 -04:00
Rob Rix
7009d9ac2b
Move the multiple hunks fixture back to the main diffs list.
2016-08-18 15:33:14 -04:00
Rob Rix
00689650dd
Use the defaultFeatureVectorDecorator in the tests.
2016-08-18 14:03:36 -04:00
Rob Rix
d169e6fa66
Spacing.
2016-08-18 12:51:07 -04:00
Rob Rix
b14a7765e6
Copy in b.
2016-08-18 11:40:39 -04:00
Rob Rix
ecaff655c1
Extract a function to copy terms in.
2016-08-18 11:40:33 -04:00
Rob Rix
cabf1a887e
Compute recursive as copies instead of replacements.
...
This should make us more accurate to the tests of Interpreter.
2016-08-18 11:37:55 -04:00
Rob Rix
02bb72ee0b
Move compare to the where clause.
2016-08-18 11:25:21 -04:00
Rob Rix
8aa0f082a6
Bump _q_ in all of the specs.
...
Figure it’s best if they use the same value for the parameter.
2016-08-18 11:23:21 -04:00
joshvera
c09887b8df
update semantic-diff tests
2016-08-17 11:24:12 -04:00
joshvera
b4133bdcac
Map comma operators to flattened indexed nodes
2016-08-16 17:24:06 -04:00
Rob Rix
9dcbe04297
Move the multiple hunks fixture to the todo list.
...
See also #682 .
2016-08-12 13:43:00 -04:00
Rob Rix
e820b43469
🔥 a redundant import.
2016-08-12 13:40:41 -04:00
Rob Rix
b91b305f32
Re-enable the RWS insertion bias tests.
2016-08-12 13:22:55 -04:00
Rob Rix
443df7da7c
Merge branch 'unbiased-branch-diff-tests-that-actually-test-branch-diff-bias' into unbiased-branch-diffs
...
# Conflicts:
# src/Diffing.hs
# test/CorpusSpec.hs
# tools/semantic-git-diff/test/corpus/diff-summaries.json
2016-08-12 13:04:33 -04:00
Rob Rix
d9be26396c
Make the RWS test pending on #683 .
2016-08-12 12:58:37 -04:00
Rob Rix
2b35110d0a
🔥 the faulty tests of unbiased branch diffs.
2016-08-12 12:24:38 -04:00
Rob Rix
ff4861e2fb
Add the unbiased insertion test to the Interpreter spec.
2016-08-12 12:16:48 -04:00
Rob Rix
d3c333ae64
🔥 the faulty tests of unbiased insertions.
2016-08-12 11:59:44 -04:00
Rob Rix
b1e893b3f8
Add a concrete test of unbiased insertions.
2016-08-12 11:59:09 -04:00
Rob Rix
ada00d0485
The RWS unbiased tests require disjoint syntax constructors.
2016-08-12 11:44:29 -04:00
Rob Rix
5462278d0f
Use the replacing
combinator in the tests.
2016-08-12 11:44:23 -04:00
Rob Rix
bcaf909957
Revert "Mark the (failing) rws tests as pending for the time being."
...
This reverts commit a9025cacda01db216590e99dd36e867611e0f953.
2016-08-12 11:44:18 -04:00
Rob Rix
fa983e5561
Add a concrete test of unbiased deletions.
2016-08-12 11:40:30 -04:00
Rob Rix
2eead056e1
The RWS unbiased tests require disjoint syntax constructors.
2016-08-12 09:56:24 -04:00
Rob Rix
7bbbc4cbea
Use the replacing
combinator in the tests.
2016-08-12 09:53:16 -04:00
Rob Rix
0eb43f47a3
Use wrap
in the RWS correctness test.
2016-08-12 09:46:45 -04:00
Rob Rix
df25851902
Revert "Mark the (failing) rws tests as pending for the time being."
...
This reverts commit a9025cacda01db216590e99dd36e867611e0f953.
2016-08-12 09:13:52 -04:00
Rob Rix
73f73fdb40
Mark the (failing) rws tests as pending for the time being.
2016-08-11 15:24:02 -04:00
Rob Rix
86fd5b21fd
Use the replacing
smart constructor.
2016-08-11 14:42:17 -04:00
Rob Rix
0346b5d8f1
Use galign to ensure that the constructors are disjoint.
2016-08-11 14:32:10 -04:00
Rob Rix
0fc0e80ed9
Revert "Revert "Ensure that the syntaxes are disjoint.""
...
This reverts commit cfe27aec6f0764f451c493439086e03a1bdcf176.
2016-08-11 13:33:33 -04:00
Rob Rix
d9b48b6def
Revert "Ensure that the syntaxes are disjoint."
...
This reverts commit 43ebf52752a8cf22ae18633a5667966fd3f74aa0.
2016-08-11 13:28:51 -04:00
Rob Rix
70a622ca84
Ensure that the syntaxes are disjoint.
2016-08-11 13:27:45 -04:00
Rob Rix
fd23564dd5
Use a single root function for both interpreter tests.
2016-08-11 13:05:36 -04:00
Rob Rix
3eb05a31b1
Test the interpreter against insertions as well.
2016-08-11 13:03:22 -04:00
Rob Rix
fd2274b997
Use a single annotation for both children.
2016-08-11 13:00:54 -04:00
Rob Rix
261e82fd21
Extract a constructor for the root terms.
2016-08-11 12:54:14 -04:00
Rob Rix
7d8eb02ec8
Strip the diff and terms in the rws correctness test.
2016-08-11 12:50:56 -04:00
Rob Rix
3bb86389ed
Strip the diff in the replacement of unicode equivalent terms test.
2016-08-11 12:48:41 -04:00
Rob Rix
15b515e7a1
Strip the diff in the correctness test.
2016-08-11 12:48:27 -04:00
Rob Rix
336f37d0c8
Strip diffs in the unbiased test.
2016-08-11 12:45:40 -04:00
Rob Rix
0aef8a8467
Use stripDiff in the RWS spec.
2016-08-11 12:44:49 -04:00
Rob Rix
8d22e7bd85
Pointfree definition of root
.
2016-08-11 12:37:19 -04:00
Rob Rix
7bb5d7cd36
Use a single function to compute both roots.
2016-08-11 12:36:41 -04:00
Rob Rix
b551f9c3d9
Test that the bias of interpreter by reversing the inputs & output.
2016-08-11 12:34:32 -04:00
Rob Rix
af831671bc
Interpreter uses category equality.
2016-08-11 12:32:44 -04:00
Rob Rix
544a6d3daf
RWS uses category equality for its comparisons.
2016-08-11 12:31:44 -04:00
Rob Rix
fd6701973f
Replace termA/termB with functions.
2016-08-11 12:25:30 -04:00
Rob Rix
fb847d9d3f
Add a test that interpreter is unbiased for deletions.
2016-08-11 12:23:34 -04:00
Rob Rix
e4c55a8dbd
Add (failing) tests of rws’ bias.
2016-08-11 11:53:51 -04:00
Rob Rix
f7055f16e8
Extract the decorating of arbitrary terms.
2016-08-11 10:27:11 -04:00
joshvera
21cb7f71d7
Merge 'origin/master' into one-json-to-rule-them-all
2016-08-10 17:33:11 -04:00
joshvera
59932277f9
Merge remote-tracking branch 'origin/master' into one-json-to-rule-them-all
2016-08-10 13:49:26 -04:00
joshvera
ae0f18593b
Remove redundant imports
2016-08-10 12:18:53 -04:00
joshvera
347f4fbb4b
Concat outputs in CorpusSpec
2016-08-10 12:17:33 -04:00
joshvera
1c1938080c
Use either path in output
2016-08-10 11:00:40 -04:00
joshvera
dfbc5e1867
infix
2016-08-10 10:58:41 -04:00
joshvera
d09c1314a4
infix
2016-08-10 10:56:28 -04:00
joshvera
1574e74bcb
Normalize names before unioning
2016-08-10 10:55:48 -04:00
joshvera
9df1399168
output the inserted/deleted path in the patch header
2016-08-09 16:14:46 -04:00
joshvera
25a53ac718
add file addition and deletion tests
2016-08-09 16:14:46 -04:00
joshvera
c286b39146
Fix oids
2016-08-09 16:14:46 -04:00
joshvera
07dfb0f5d8
handle missing files in CorpusSpec
2016-08-09 16:14:46 -04:00
joshvera
55afdaba17
Add new file patch test
2016-08-09 16:14:46 -04:00
joshvera
0bee997724
fix tests
2016-08-08 14:59:51 -04:00
joshvera
ce149af0f6
++js-test ++tree-sitter-parsers
2016-08-01 12:23:15 -04:00
joshvera
1c5f94631c
s/diffSummary/diffSummaries
2016-07-29 18:38:46 -04:00
joshvera
b354ed61d9
++js-test
2016-07-29 16:57:30 -04:00
joshvera
b242555021
++js-test
2016-07-29 16:34:09 -04:00
joshvera
04a976969e
++js-test
2016-07-29 16:16:58 -04:00
joshvera
380e980250
annotate sources
2016-07-29 14:34:28 -04:00
joshvera
1ba42a9d0f
Add Ranges to DiffSummarySpec
2016-07-29 14:31:02 -04:00
joshvera
aa99744db7
Remove SourceSpan from Record
2016-07-29 14:12:44 -04:00
joshvera
fbc9e335a3
Merge remote-tracking branch 'origin/master' into error-syntax
2016-07-29 11:44:38 -04:00
joshvera
5caa439bec
++js-test
2016-07-28 14:29:24 -04:00
joshvera
8b0f496b90
Merge remote-tracking branch 'origin/master' into error-syntax
2016-07-27 19:00:27 -04:00
joshvera
ba7d599aa3
Add SourceSpan to tests
2016-07-27 18:49:21 -04:00
joshvera
b5b3391786
add missing unwrap
2016-07-26 16:44:33 -04:00
joshvera
4bd4a93a0c
++js-test
2016-07-26 16:34:28 -04:00
joshvera
804a8457a5
++js-test for errors.js
2016-07-26 16:30:12 -04:00
joshvera
5eece69994
Use any
2016-07-26 16:29:46 -04:00
Rob Rix
cfddd9ca75
Merge branch 'master' into sequenceable
2016-07-26 15:43:02 -04:00
Rob Rix
e5f9d1ed28
Test the Mergeable laws over lists.
2016-07-26 15:27:32 -04:00
Rob Rix
475ec475b6
Weaken the identity laws to be non-empty.
2016-07-26 15:27:16 -04:00
Rob Rix
dd0b0322fc
Add a property demonstrating the relationship between sequenceAlt
over [Maybe a]
& pure . catMaybes
.
2016-07-26 14:56:02 -04:00
Rob Rix
cfb7361b9c
Scale the list generator.
2016-07-26 14:44:25 -04:00
joshvera
044aa782c1
partially apply isBranchNode
2016-07-26 14:36:56 -04:00
joshvera
e7000b7de3
s/expression_statement/expression_statements
2016-07-26 14:26:31 -04:00
joshvera
799643147b
partially apply isBranchNode
2016-07-26 14:04:15 -04:00
joshvera
de925c533d
use Foldable.any
2016-07-26 13:55:05 -04:00
joshvera
84edc4b8ce
use bind
2016-07-26 13:45:50 -04:00
joshvera
4809ad0f2f
Use bind
2016-07-26 13:44:12 -04:00
Rob Rix
2ee68cc4b2
Add an identity law over merge.
2016-07-26 13:30:09 -04:00
Rob Rix
794fffbf47
Clean up the generator.
2016-07-26 13:25:16 -04:00
Rob Rix
b987a40377
sequenceAlt’s relationship with merge is the inverse of merge’s relationship with sequenceAlt.
2016-07-26 13:23:14 -04:00
Rob Rix
7ff92d968e
Run the merge laws over Syntax.
2016-07-26 13:17:33 -04:00
Rob Rix
e98844e937
Run the merge laws over Identity.
2016-07-26 13:17:13 -04:00
Rob Rix
7d4d14c99b
Run the merge laws over Maybe.
2016-07-26 13:16:46 -04:00
Rob Rix
8f25cbd473
🔥 some redundant constraints.
2016-07-26 13:13:45 -04:00
Rob Rix
f64164d872
Generalize a constraint away.
2016-07-26 13:12:32 -04:00
Rob Rix
a967e800bb
Move the alternative instances helper down.
2016-07-26 13:12:09 -04:00
Rob Rix
be973b5bae
Generalize out a helper function to validate laws against alternative instances.
2016-07-26 13:11:52 -04:00
Rob Rix
5430f45850
Verify the merge laws over []/Maybe.
2016-07-26 13:06:18 -04:00
Rob Rix
df4621622a
Formulate a merge law.
2016-07-26 13:03:13 -04:00
Rob Rix
475c97190c
Parallelize the Mergeable spec.
2016-07-26 12:47:38 -04:00
Rob Rix
5d6b1cd047
Test the sequenceAlt laws over Syntax.
2016-07-26 05:39:02 -04:00
Rob Rix
7af29fcf10
Define the identity law over pure
.
2016-07-26 04:25:45 -04:00
Rob Rix
6806438949
Generalize the sequenceAlt laws over the inner alternative functor.
2016-07-26 04:23:03 -04:00
Rob Rix
f76b334b8c
Validate the sequenceAltLaws against the Identity instance.
2016-07-26 04:16:40 -04:00
Rob Rix
a0cf6ce702
Validate the relationship between sequenceAlt and merge.
2016-07-26 04:15:56 -04:00
Rob Rix
d1bbe1c029
Validate the sequenceAltLaws against Maybe.
2016-07-26 04:08:19 -04:00
Rob Rix
88bb767ff7
Group the law invocations by functor.
2016-07-26 04:07:46 -04:00
Rob Rix
734254194c
Define sequenceAltLaws to take a generator of Mergeable values.
2016-07-26 04:06:51 -04:00
Rob Rix
fa3b7d126e
Factor the sequenceAlt law properties into a separate function.
2016-07-26 04:04:24 -04:00
Rob Rix
93c53ed90a
Stub in a property test for the proposed identity law.
2016-07-26 04:02:52 -04:00
Rob Rix
b03f1d3b91
Stub in a spec function.
2016-07-26 03:58:14 -04:00
Rob Rix
8f15a59282
Stub in a spec for the Mergeable stuff.
2016-07-26 03:56:52 -04:00
joshvera
4ab572c94b
Merge remote-tracking branch 'origin/master' into property-tests
2016-07-25 12:30:23 -04:00
joshvera
9686a7e53b
Remove extra split2.html
2016-07-22 17:10:11 -04:00
joshvera
b5119dab1e
Include Info
2016-07-22 14:51:08 -04:00
joshvera
485fc884a4
Merge branch 'syntax-redux' into property-tests
2016-07-22 14:39:54 -04:00
joshvera
b27eac56d9
Merge remote-tracking branch 'origin/master' into syntax-redux
2016-07-22 12:38:34 -04:00
joshvera
70f9329f1a
Merge remote-tracking branch 'origin/master' into syntax-redux
2016-07-22 12:36:03 -04:00
Rob Rix
389b2ddfa6
Use joinCrosswalk in the spec.
2016-07-22 11:40:04 -04:00
Rob Rix
faa195ea8f
Add a drop-in for Crosswalk over Bicrosswalkable Joins.
2016-07-22 11:39:56 -04:00
Rob Rix
0016bb92ea
Merge branch 'master' into generalize-rws-over-the-functor
2016-07-21 11:49:55 -04:00
joshvera
a4851ba063
type signatures
2016-07-15 20:32:48 -04:00
joshvera
78bb7779a4
Test annotatedSummaries
2016-07-15 17:11:45 -04:00
joshvera
ed2f8bd57d
Delete comments
2016-07-15 15:24:40 -04:00
Rob Rix
4b33b24a05
Labels are computed from the entire term.
2016-07-15 14:45:37 -04:00
joshvera
ea814432a6
Add a property test to check number of LeafInfos in diff summaries match leaves in diff patches
2016-07-15 14:10:31 -04:00
joshvera
e57f30f20b
DiffInfo are now either LeafInfos or BranchInfos
2016-07-15 13:18:45 -04:00
Rob Rix
85659ec988
Fix up the asymmetrical context fixture.
2016-07-15 11:31:43 -04:00
Rob Rix
529334a552
Fix up the dictionary fixture.
2016-07-15 11:30:49 -04:00
Rob Rix
292a8f0a07
Fix up the multiline insert fixture.
2016-07-15 11:29:15 -04:00
Rob Rix
fcc4df2232
Fix up the insert fixture.
2016-07-15 11:27:48 -04:00
Rob Rix
2d1dea1270
Fix up the nested insert fixture.
2016-07-15 11:26:18 -04:00
Rob Rix
49291bf1ab
Fix up the newline-at-eof fixture.
2016-07-15 11:26:11 -04:00
Rob Rix
5af6188b17
Fix up the no-newline-at-eof fixture.
2016-07-15 11:23:18 -04:00
Rob Rix
ce4ad3d9bc
Fix up the reformat fixture.
2016-07-15 11:20:55 -04:00
Rob Rix
5bc2cd93f1
Only annotate terms & diffs with costs, not sizes.
2016-07-15 11:17:53 -04:00
Rob Rix
97e8dfadb1
DiffSummarySpec doesn’t depend on Info
.
2016-07-15 09:41:12 -04:00
Rob Rix
82ce5fffad
AlignmentSpec doesn’t depend on Info at all.
2016-07-15 09:39:03 -04:00
joshvera
13671e5d14
Add patchAnnotations to DiffInfo to track discarded branch nodes
2016-07-14 19:35:23 -04:00
Rob Rix
300bd2b84c
Renderer takes an annotation type parameter.
2016-07-14 16:36:47 -04:00
joshvera
9a01466bfc
Merge branch 'syntax-redux' into pretty-print-summaries
2016-07-14 15:30:15 -04:00
Rick Winfrey
85ddbcbcba
Merge branch 'syntax-redux' of github.com:github/semantic-diff into syntax-redux
2016-07-14 14:26:07 -05:00
joshvera
27c338331f
Merge remote-tracking branch 'origin/master' into syntax-redux
2016-07-14 15:22:46 -04:00
Rick Winfrey
2354cfa45a
Add diff summary property test verifying no changes results in no diff summaries.
2016-07-14 14:21:14 -05:00
joshvera
453334d966
Use wl-pprint-text to pretty print diff summaries
2016-07-14 14:44:18 -04:00
joshvera
58ff433dd0
Merge remote-tracking branch 'origin/master' into pretty-print-summaries
2016-07-14 14:38:46 -04:00
joshvera
a9adce2610
other patches should be the same as summary patches
2016-07-14 13:01:16 -04:00
joshvera
922e845c78
Add property test to test diff summary constructors
2016-07-14 11:52:40 -04:00
joshvera
59426b86f6
Add megaparsec to pretty print summaries
2016-07-13 14:32:53 -04:00
joshvera
7169a51265
Use wl-pprint-text to pretty print diff summaries
2016-07-13 11:58:43 -04:00
Rob Rix
c41d3f4280
Correct the fixtures to account for the removal of dictionaries.
2016-07-12 23:34:53 -04:00
Rob Rix
4f967e0e1a
🔥 Data.OrderedMap.
2016-07-12 23:27:20 -04:00
Rob Rix
c7728b7c1c
Test the reflexivity of alignment modulo These.
2016-07-12 18:24:24 -04:00
Rob Rix
ae9b0e55f3
Test against integer keys/values.
2016-07-12 18:11:09 -04:00
Rob Rix
449c564179
Test the upper bound on input length.
2016-07-12 18:10:10 -04:00
Rob Rix
5a721f0a90
Test that align is length-preserving.
2016-07-12 18:09:12 -04:00
Rob Rix
4869729770
Silence a warning.
2016-07-12 18:09:01 -04:00
Rick Winfrey
177af03bd3
Merge branch 'master' into syntax-redux
2016-07-12 17:03:35 -05:00
Rob Rix
87e1ce7020
Revert "Show the Term itself."
...
This reverts commit aea84cbec83972add52909b0813ad9362808553f.
2016-07-12 17:29:47 -04:00
Rob Rix
4818d723b3
Show the Term itself.
2016-07-12 17:20:44 -04:00
Rob Rix
3ff027e12c
Place hlint about wrap.
2016-07-12 17:19:44 -04:00
Rob Rix
d6c994a852
🔥 a blank line apparently.
2016-07-12 17:19:38 -04:00
Rob Rix
feb39e540f
Test that nil is the right- and left-identity modulo This/That.
2016-07-12 17:16:24 -04:00
Rob Rix
3d73efc6d3
Placate hlint.
2016-07-12 17:16:10 -04:00
joshvera
a484cb8348
Update fixtures to account for method_call and object/pair categories
2016-07-08 16:30:13 -04:00
joshvera
8c698cb52c
Remove stray HTML file
2016-07-08 16:00:14 -04:00
joshvera
3779bf36b0
Expect to parse JS method calls
2016-07-08 15:59:37 -04:00
Rob Rix
2108cddff6
Test rws’ behaviour w.r.t. ordering.
2016-07-07 10:37:55 -04:00
joshvera
1efd68d122
Merge remote-tracking branch 'origin/master' into syntax-redux
2016-07-06 16:22:25 -04:00
joshvera
6641bdf906
++js-test
2016-07-06 12:58:37 -04:00
joshvera
4eebbb288c
Add backbone submodule
2016-07-06 12:38:47 -04:00
Rick Winfrey
13c60c9e86
++js-test
2016-07-05 17:33:19 -05:00
Rob Rix
f91860d68f
🔥 DataKinds here, too.
2016-07-05 10:11:29 -04:00
Rob Rix
51f0995c91
🔥 DataKinds.
2016-07-05 09:56:48 -04:00
Rob Rix
4cfa993239
Move the Arbitrary gram functions into Data.RandomWalkSimilarity.
2016-07-05 09:18:53 -04:00
Rob Rix
e3a43b77a9
Fix overloaded string warning.
2016-06-30 15:02:28 -04:00
Rob Rix
b0b8aa0616
Test that Interpreter produces zero-cost diffs of equal terms.
2016-06-30 13:34:31 -04:00
Rob Rix
28abcd1b38
Move Record’s Arbitrary instance into Data.Record.
2016-06-30 12:49:50 -04:00
Rob Rix
58138d5867
Scale down the sizes by a factor of four.
2016-06-30 12:37:41 -04:00
Rob Rix
a5af331f71
Generate a pair of inputs.
...
This allows scaling to work correctly.
2016-06-30 12:37:27 -04:00
Rob Rix
d89422d3ed
Define childrenOf
in tacit style.
2016-06-30 11:28:18 -04:00
Rob Rix
cb71ba3467
Use the Foldable instance instead of specifying the constructor.
2016-06-30 11:27:37 -04:00
Rick Winfrey
c034926304
++js
2016-06-29 16:07:37 -05:00
Rob Rix
27cc162e1c
Test against a set of children instead of sorting.
...
This reverts commit e5fb9a7a89da22373e7614d0163b64bb3a994b24.
2016-06-29 11:28:08 -04:00
Rob Rix
bd11e9e0ee
Enumerate and sort to pass the test.
2016-06-29 10:58:06 -04:00
joshvera
e03c712482
js-test
2016-06-28 16:38:18 -04:00
Rob Rix
83a88d0e32
Only allow comparisons between terms with the same category.
2016-06-28 15:02:41 -04:00
Rob Rix
99c36635b4
Use Categories for the annotations.
2016-06-28 14:09:51 -04:00
joshvera
9292d3294d
++js-test
2016-06-28 13:04:40 -04:00
Rob Rix
e003549ef0
Rewrite to share the lists of child terms.
2016-06-27 15:38:45 -04:00
Rob Rix
38ecc3bb0a
Test that rws produces correct diffs.
2016-06-27 15:37:32 -04:00
Rob Rix
833802eb8a
Text, not String.
2016-06-27 15:32:09 -04:00
Rob Rix
b8ba07522b
Test that Interpreter produces correct diffs.
2016-06-27 15:28:11 -04:00
Rob Rix
2de9468ed1
Sort the imports.
2016-06-27 15:28:04 -04:00
Rob Rix
9611a27887
🔥 test/ArbitraryTerm.hs.
2016-06-27 15:03:04 -04:00
Rob Rix
b405286065
Tidy up AlignmentSpec.
2016-06-27 15:02:28 -04:00
Rob Rix
aa5d6e4deb
Test that afterTerm
recovers the second term.
2016-06-27 13:24:50 -04:00
Rob Rix
8035c1844c
Test that beforeTerm
recovers the first term.
2016-06-27 13:23:43 -04:00
Rob Rix
c70c936d60
Use shouldBe
instead of ==
.
2016-06-27 13:21:32 -04:00
Rob Rix
1dd10050f6
Move some tests around.
2016-06-27 13:18:20 -04:00
Rob Rix
346bec0d0b
Clean up redundant imports and use Text, not String.
2016-06-27 13:16:56 -04:00
Rob Rix
10b5bdaab4
Use Text, not String.
2016-06-27 13:16:48 -04:00
Rob Rix
85f39fd5a8
Move some tests out of TermSpec into Diff.Spec.
2016-06-27 13:15:03 -04:00
Rob Rix
ad4a34ebb0
🔥 a redundant import.
2016-06-27 13:12:37 -04:00
Rob Rix
b4107426de
Stub in a spec for Diff.
2016-06-27 13:12:06 -04:00
Rob Rix
8fe92c025c
Pare the unicode replacement test down further.
2016-06-27 13:08:12 -04:00
Rob Rix
db17330b4d
Clean up the InterpreterSpec test by extracting the infos.
2016-06-27 13:03:58 -04:00
Rob Rix
c0eceb273c
We no longer have to hide this symbol.
2016-06-27 11:46:22 -04:00
Rob Rix
0b37ae936b
Diff terms of records.
2016-06-23 16:30:43 -04:00
Rob Rix
ed552da2af
Swap the d/bag arguments in featureVector.
2016-06-23 10:34:23 -04:00
Rob Rix
a9f251e42f
Test against trees annotated with their labels directly.
2016-06-23 10:19:45 -04:00
Rob Rix
a657295ae6
Generalize pqGrams over a getLabel accessor again.
2016-06-23 10:18:39 -04:00
Rob Rix
c85c87ad65
Okay FINE, hlint!
2016-06-23 10:11:48 -04:00
Rob Rix
6133903e8c
Extract the label from a record.
2016-06-23 09:52:15 -04:00
Rob Rix
220687da5e
🔥 the old spec.
2016-06-23 09:51:55 -04:00
Rob Rix
1170bfdcb2
Rename Data.Gram to Data.RandomWalkSimilarity.
2016-06-22 17:59:28 -04:00
Rob Rix
f553cac094
Specialize pqGrams to Cofree of Syntax.
2016-06-22 16:17:54 -04:00
Rob Rix
ea717c6582
Test that we produce grams with bases of length q.
2016-06-22 15:55:39 -04:00
Rob Rix
e15af19835
🔥 a redundant import.
2016-06-22 15:55:15 -04:00
Rob Rix
0092655cb6
Clean up the tests.
2016-06-22 15:55:11 -04:00
Rob Rix
f1d190326c
Remove children from the unpacking function.
2016-06-22 15:18:37 -04:00
Rob Rix
ad380bf08d
Limit the p,q-gram test to p > 0 & q > 0.
2016-06-22 15:02:10 -04:00
Rob Rix
f2c5dd3d8c
Test that the stems are of length p.
2016-06-22 13:46:06 -04:00
Rob Rix
7da6fde412
Test that pqGrams produces grams with stems of length p.
2016-06-22 11:27:30 -04:00
Rob Rix
4cb3261069
Correct the property by limiting it to d > 0.
2016-06-22 11:07:43 -04:00
Rob Rix
0bef12d722
Test that featureVector produces d-vectors.
2016-06-22 11:04:27 -04:00
Rob Rix
cc8fcb926e
Include the Gram spec.
2016-06-22 10:45:43 -04:00
Rob Rix
52e274b57d
Stub in the spec itself.
2016-06-22 10:45:31 -04:00
Rob Rix
d5e807257e
Hush, hlint.
2016-06-22 10:43:02 -04:00
Rob Rix
51392382ef
Stub in a spec for Data.Gram.
2016-06-22 10:41:13 -04:00
joshvera
0a574871c9
Merge remote-tracking branch 'origin/master' into syntax-redux
2016-06-21 17:08:40 -04:00
Rick Winfrey
4f41232901
++js-test
2016-06-17 17:00:42 -05:00
Rick Winfrey
532e49871d
++js-test
2016-06-17 15:31:21 -05:00
Rick Winfrey
dae03ef31e
++js-test
2016-06-17 14:57:22 -05:00
Rick Winfrey
bbaf6e24fa
++js-test
2016-06-17 14:35:13 -05:00
Rick Winfrey
c5232f023c
++js-test
2016-06-17 14:23:41 -05:00
Rob Rix
1668e94427
Define Info as a synonym over Data.Record.
2016-06-17 13:33:50 -04:00
joshvera
c086cac867
++js-test
2016-06-16 10:47:41 -07:00
joshvera
283a4a77a0
Remove test/diffs/style.css
2016-06-16 10:39:57 -07:00
Rick Winfrey
308a690cdb
++js-test
2016-06-16 11:20:34 -05:00
Rick Winfrey
c2c3681749
Update test/repos/js-test pin
2016-06-15 13:18:44 -05:00
Rick Winfrey
efe1339df5
Update js-test
2016-06-15 11:12:16 -05:00
joshvera
66b6b1e460
++js-test
2016-06-14 17:44:38 -07:00
joshvera
e56b8268f1
++js-test
2016-06-14 14:20:37 -07:00
joshvera
a0f415dece
++js-test
2016-06-14 14:01:27 -07:00
Rick Winfrey
6eea045aee
Updating js-test submodule pin
2016-06-13 17:13:24 -05:00
joshvera
bd48f58478
Added a split-test to js-test
2016-06-10 18:56:32 -04:00
joshvera
68c6e40fc3
++js-test
2016-06-10 17:02:01 -04:00
joshvera
c229d43934
Fix DiffSummary tests
...
now that parentAnnotations are Categories
2016-06-10 16:42:11 -04:00
Rick Winfrey
9ec08a7d2e
Update js-test submodule to contain correct shas
2016-06-10 15:22:51 -05:00
joshvera
d20937f2b1
Parse functions
2016-06-10 15:10:37 -04:00
Rick Winfrey
129ece7820
Add test/repos/js-test submodule
2016-06-10 12:26:37 -05:00
Rob Rix
dfa3b3fd66
Merge branch 'master' into benchmark-alignment
2016-06-06 13:05:00 -04:00
Rob Rix
a18b5bb4f0
🔥 a redundant import.
2016-06-06 13:04:35 -04:00
Rob Rix
c9763c43ba
Use the sizing functions in TermSpec.
2016-06-06 12:26:06 -04:00
Rob Rix
29a725b125
Move ArbitraryDiff into semantic-diff proper.
2016-06-06 12:07:07 -04:00
Rob Rix
1109fdf32c
🔥 redundant imports.
2016-06-06 11:51:30 -04:00
Rob Rix
0321a97285
🔥 arbitraryLeaf.
2016-06-06 11:51:25 -04:00
Rob Rix
8780ea3f26
Move the Arbitrary instances for Join (,) and Join These into semantic-diff proper.
2016-06-06 11:50:45 -04:00
Rob Rix
4eb76ff3a3
Move the Arbitrary instance for Data.These into semantic-diff proper.
2016-06-06 11:46:30 -04:00
Rob Rix
378b577175
Move the Arbitrary instance for Patch into semantic-diff proper.
2016-06-06 11:43:38 -04:00
Rob Rix
a613fa0369
Merge branch 'push-benchmarks-to-graphite' into benchmark-alignment
2016-06-06 11:36:48 -04:00
Rob Rix
6e66837cc0
Capitalize the Program category in the JSON fixtures.
2016-06-06 08:19:38 -04:00
Rob Rix
a43be167f6
Merge branch 'master' into cache-cost-on-info
2016-06-03 16:24:02 -04:00
Rob Rix
7802d4916c
🔥 FlexibleInstances & RecordWildCards pragmas.
2016-06-03 16:02:06 -04:00
Rob Rix
f39e3df33b
Pass a DiffConstructor to diffTerms.
2016-06-03 02:59:48 -04:00
Rob Rix
bcbb590b1f
Add a cost
field to Info
.
2016-06-02 23:34:16 -04:00
Rob Rix
f2eccbb275
🔥 the contortionist pointfree definition of info
.
2016-06-02 22:55:11 -04:00
Rob Rix
43757e8a61
🔥 Categorizable.
...
This reverts commit be59b0c161362baae63308478177819828be7e1b.
2016-06-02 19:10:41 -04:00
Rob Rix
4ea9eba71c
Merge branch 'master' into render-diff-summaries-as-json
2016-06-01 16:23:39 -04:00
Rob Rix
ef47e435aa
Merge branch 'master' into benchmark-alignment
...
# Conflicts:
# test/TermSpec.hs
2016-06-01 16:22:02 -04:00
Rob Rix
d1884c2908
Put the term generator sizing test into its own group.
2016-06-01 12:30:05 -04:00
joshvera
6bb2be56cc
update fixtures
2016-06-01 12:17:07 -04:00
Rob Rix
6a7ec24640
Test that we generate terms of the specified size.
2016-06-01 11:52:43 -04:00
Rob Rix
2064d3af8a
Depend on semantic-diff’s definition of ArbitraryTerm in the tests.
2016-06-01 09:16:47 -04:00
Rob Rix
ad8a6fd241
Simplify the definition of arbitrary over ArbitraryTerm.
2016-05-31 20:33:13 -04:00
Rob Rix
514c513f13
Simplify the definition of shrink over ArbitraryTerm.
2016-05-31 20:31:32 -04:00
Rob Rix
36168c1698
Rename unTerm to toTerm.
2016-05-31 20:29:12 -04:00
Rob Rix
484ed765f0
Use the field accessor to define unTerm.
2016-05-31 20:17:49 -04:00
Rob Rix
50c6c6c4fa
Define a field accessor for ArbitraryTerm.
2016-05-31 20:17:42 -04:00
Rob Rix
2696635aa4
ArbitraryTerm uses the TermF type synonym.
2016-05-31 20:15:24 -04:00
Rob Rix
37f960b6d1
ArbitraryTerm wraps CofreeF.
2016-05-31 20:14:38 -04:00
joshvera
465da6bae5
one more
2016-05-31 17:02:24 -04:00
joshvera
55f286d8be
Replace instance of comparable
2016-05-31 17:01:01 -04:00
joshvera
cf21fddc08
Fix up tests
2016-05-31 16:38:47 -04:00
Rob Rix
f1ff739394
Correct the types in the spec.
2016-05-31 16:15:40 -04:00
Rob Rix
2887d0c2a1
Merge branch 'master' into fix-invalid-slice
2016-05-31 13:28:50 -04:00
Rob Rix
07190fb6d1
Add a regression test for #573 .
2016-05-30 19:04:16 -04:00
Rob Rix
8e45e5973d
Correct the nested-insert fixture.
2016-05-30 13:54:33 -04:00
Rob Rix
f4ff8d0b89
Correct the insert fixture.
2016-05-30 13:54:28 -04:00
Rob Rix
49f477f5b0
📝 Verbatim
.
2016-05-30 12:46:25 -04:00
Rob Rix
3fbfe43935
Prepend a newline to avoid being indented by expected:
/but got:
.
2016-05-30 12:44:09 -04:00
Rob Rix
89733ccdef
Test the fixtures in Verbatim.
2016-05-30 12:42:43 -04:00
Rob Rix
643e37477f
Derive an NFData instance for Verbatim.
2016-05-30 12:42:19 -04:00
Rob Rix
f10c0b305d
Enable GeneralizedNewtypeDeriving.
2016-05-30 12:42:11 -04:00
Rob Rix
46b43c63e9
This is Text, now.
2016-05-30 12:40:41 -04:00
Rob Rix
7fe5be7fe2
Verbatim wraps Text.
2016-05-30 12:39:43 -04:00
Rob Rix
7a52507e94
Derive an Eq instance for Verbatim.
2016-05-30 12:39:39 -04:00
Rob Rix
3774bfb816
We treat this argument as a FilePath.
2016-05-30 12:38:21 -04:00
Rob Rix
d584832b6b
We treat this argument as a FilePath.
2016-05-30 12:37:45 -04:00
Rob Rix
93b36a852f
Add a Show instance for Verbatim which emits the unquoted string.
2016-05-30 12:37:05 -04:00
Rob Rix
58883000b1
Add a Verbatim newtype wrapping a String.
2016-05-30 12:36:52 -04:00
Rob Rix
160417d5a6
Move nested-insert
out of the todos list.
2016-05-30 10:20:43 -04:00
Rob Rix
06c7437e66
Move insert
out of the todos list.
2016-05-30 10:20:31 -04:00
Rob Rix
f77d8e023c
Do the mapping all in one go.
2016-05-27 15:43:45 -04:00
Rob Rix
8ea9b44aef
Traverse instead of sequenceA/fmap.
2016-05-27 15:43:14 -04:00
Rob Rix
a48404b53a
Don’t use unionThese in the spec.
2016-05-27 15:42:36 -04:00
Rob Rix
0cbc8e514f
Correct the fixtures for a couple of cases.
2016-05-27 15:30:39 -04:00
Rob Rix
ecb37f8f00
Correct the commented-out PrettyDiff full output thing.
2016-05-27 15:30:27 -04:00
Rob Rix
962b637d24
Update the asymmetrical-context fixture.
2016-05-27 15:16:50 -04:00
Rob Rix
1e6af52d35
Update the multiline-insert fixture.
2016-05-27 15:16:44 -04:00
Rob Rix
3351d2a2e3
Move the multiline-insert fixture into the done folder.
2016-05-27 15:16:22 -04:00
Rob Rix
ee9dd67bdf
Move the asymmetrical-context test into the done dir.
2016-05-27 15:16:12 -04:00
Rob Rix
1153970864
Rebuild the other JSON fixtures now that we preserve ordering again.
2016-05-27 15:11:37 -04:00
Rob Rix
cdaa21d7d9
Move the newline-at-eof test into the functioning set.
2016-05-27 15:11:18 -04:00
Rob Rix
610d6e05da
🔥 some redundant imports.
2016-05-27 15:10:54 -04:00
Rob Rix
f60faefee5
🔥 a redundant import of Identity.
2016-05-27 14:05:29 -04:00
Rob Rix
14e9a3372f
alignBranch takes a list of lines, not of aligned children.
2016-05-27 13:58:50 -04:00
Rob Rix
ebefc1c124
🔥 a redundant import.
2016-05-27 09:36:36 -04:00
Rob Rix
de6d7edec2
Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
...
# Conflicts:
# semantic-diff.cabal
# src/Alignment.hs
# src/Control/Comonad/Cofree.hs
# src/Data/Adjoined.hs
# src/Diffing.hs
# src/Interpreter.hs
# src/Prologue.hs
# src/Renderer/JSON.hs
# src/Renderer/Patch.hs
# src/Renderer/Split.hs
# src/SplitDiff.hs
# src/Term.hs
# test/AlignmentSpec.hs
# test/ArbitraryTerm.hs
# test/PatchOutputSpec.hs
2016-05-27 09:35:26 -04:00
Rob Rix
cfe15a5afa
Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
...
# Conflicts:
# src/Alignment.hs
# src/Control/Comonad/Cofree.hs
# src/Data/Adjoined.hs
# src/Data/Align.hs
# src/Data/Bifunctor/These.hs
# src/Data/Coalescent.hs
# src/Data/Copointed.hs
# src/Data/Functor/Both.hs
# src/Data/Option.hs
# src/Line.hs
# src/Patch.hs
# src/Range.hs
# src/Renderer/JSON.hs
# src/Renderer/Patch.hs
# src/Renderer/Split.hs
# src/SplitDiff.hs
# stack.yaml
# test/AlignmentSpec.hs
# test/CorpusSpec.hs
# test/Data/Adjoined/Spec.hs
# test/Data/Functor/Both/Spec.hs
2016-05-26 15:25:45 -04:00
joshvera
ebd5d20171
Remove duplicate imports
2016-05-26 14:04:27 -04:00
joshvera
473ec980b1
Merge remote-tracking branch 'origin/master' into diff-summaries
2016-05-26 13:40:54 -04:00
joshvera
85553f281c
Remove duplicate Prologue import
2016-05-26 13:13:30 -04:00
joshvera
ed144bbb1f
Fix tests
2016-05-26 13:11:34 -04:00
joshvera
8180b37285
Use Protolude via the Prologue module and add NoImplicitPrelude
2016-05-26 12:58:04 -04:00
Rob Rix
8313074e50
Test that we preserve child lines in the output.
2016-05-26 11:39:24 -04:00
Rob Rix
7854e32c51
Unique the keys on both sides.
...
This avoids false negatives in the tests where, if we generate two
children with the same key, we appear to drop one of the keys.
2016-05-26 10:16:26 -04:00
Rob Rix
5933a0809d
Move branchElementContents into toAlignBranchInputs.
2016-05-26 09:37:06 -04:00
Rob Rix
f48e5c37bc
Move alignBranchElement into toAlignBranchInputs.
2016-05-26 09:36:44 -04:00
Rob Rix
6ef8758d7e
Add a test case for symmetrical reformatted nodes and context following them.
2016-05-26 09:31:25 -04:00
Rob Rix
3820ab3e66
Filter out bogus empty ranges.
2016-05-25 17:10:38 -04:00
Rob Rix
0025b044f7
Increment the ranges for successive lines.
2016-05-25 17:10:30 -04:00
Rob Rix
b0d154271c
Take the actual lines on both sides.
...
We were getting the wrong ranges.
2016-05-25 17:10:14 -04:00
Rob Rix
5fad7be0f5
🔥 the unused Arbitrary instance over PrettyDiff.
2016-05-25 14:31:47 -04:00
Rob Rix
04e36c4dcb
🔥 alignmentFromBranchElements.
2016-05-25 14:14:38 -04:00
Rob Rix
2ea50d9387
Roll toSourcesAndRanges into toAlignedChildren.
2016-05-25 14:13:27 -04:00
Rob Rix
b4d0749d52
🔥 the top-level bothContents
binding.
2016-05-25 13:32:33 -04:00
Rob Rix
eb15740170
Roll toSources into toSourcesAndRanges.
2016-05-25 11:18:49 -04:00
Rob Rix
e5a2c384fc
Test that alignBranch covers every line of the input ranges.
2016-05-25 11:13:34 -04:00
Rob Rix
6caf9d3930
Extract alignment from the property test.
2016-05-25 10:59:16 -04:00
Rob Rix
5c1b0809ec
Shrink BranchElement by crosswalking.
2016-05-25 10:54:41 -04:00
Rob Rix
5237c7ccc5
Revert "Add a BranchAlignment type."
...
This reverts commit c85b9fcca08b147c8f2c7bae573f7b30c08f14f4.
2016-05-25 10:43:24 -04:00
Rob Rix
3663cc612b
Revert "Add an Arbitrary instance over BranchAlignment."
...
This reverts commit 17e215b1aec6fdb80212133fe362a9c5120e0b8f.
2016-05-25 10:43:20 -04:00
Rob Rix
e524b4e0fe
Revert "Add a Show instance over BranchAlignment."
...
This reverts commit afd605d4e80d759c8d75b3d912e2e5f36bcc217c.
2016-05-25 10:43:15 -04:00
Rob Rix
d42c071a08
Add a Show instance over BranchAlignment.
2016-05-25 10:42:44 -04:00
Rob Rix
366dba33b3
Add an Arbitrary instance over BranchAlignment.
2016-05-25 10:42:35 -04:00
Rob Rix
03ec660dbc
Add a BranchAlignment type.
2016-05-25 10:41:17 -04:00
Rob Rix
13aaee7526
Correct branch element alignment to use crosswalk
.
2016-05-25 10:34:22 -04:00
Rob Rix
dbd1030a34
Derive the Show instance for BranchElement.
2016-05-25 10:26:44 -04:00
Rob Rix
1f0d0eb714
Test that alignBranch covers every child in the input.
2016-05-25 09:54:42 -04:00
Rob Rix
c1198065e2
Correct the assignment of ranges to lines.
2016-05-25 09:54:21 -04:00
Rob Rix
6fb9383fb1
Rewrite keysOfAlignedChildren in tacit style in hopes of finding an infinite loop.
2016-05-24 16:21:12 -04:00
Rob Rix
79ef67e6e3
Find the keys of aligned children.
2016-05-24 13:36:12 -04:00
Rob Rix
10a689090b
Implement a function to find the key in branch elements that have any.
2016-05-24 13:36:04 -04:00
Rob Rix
a594f54279
Implement construction of arbitrary PrettyDiffs.
2016-05-24 13:04:28 -04:00
Rob Rix
e0e7f0fa4a
Add a toPrettyDiff function to abstract the construction of pretty diffs away.
2016-05-24 13:04:10 -04:00
Rob Rix
24a732322c
Forgot to commit the import of Control.Monad.State.
2016-05-24 12:00:03 -04:00
joshvera
72dea795d2
Remove literal string from tests
2016-05-23 13:57:04 -04:00
Rob Rix
f3f7b5e6b9
Aligned children contain ranges.
2016-05-21 00:08:01 -04:00
Rob Rix
f720901dbc
Compute the aligned children from a list of branch elements.
2016-05-20 23:51:24 -04:00
Rob Rix
e4dd1e7cd8
Compute the sources and ranges in a single step.
2016-05-20 23:49:17 -04:00
Rob Rix
bdb02a4bf4
Compute the ranges for a list of elements.
2016-05-20 23:46:14 -04:00
Rob Rix
db6f2b6430
Arbitrary BranchElements’ contents contain their key, not a fresh key.
2016-05-20 23:19:44 -04:00
Rob Rix
96f94c9bdb
Shrink Child contents respecting their prefixes/suffixes.
2016-05-20 23:13:36 -04:00
Rob Rix
ff3691eac4
🔥 showThese.
2016-05-20 23:13:17 -04:00
Rob Rix
9acdb24243
🔥 toSource.
2016-05-20 22:42:46 -04:00
Rob Rix
5d9de67ecc
Use the Applicative instance to generate BranchElements.
2016-05-20 22:41:48 -04:00
Rob Rix
ea79ce4f04
Rewrite BranchElement/Source computations correctly.
2016-05-20 22:41:38 -04:00
Rob Rix
61c2bf0ccc
Simplify the Show instance for BranchElement.
2016-05-20 22:33:06 -04:00
Rob Rix
111b12846a
Arbitrary BranchElements have their contents set appropriately up front.
2016-05-20 22:32:00 -04:00
Rob Rix
bfcd3193da
Add a convenience to extract the contents from a branch element.
2016-05-20 22:25:41 -04:00
Rob Rix
26d31fa12a
Remove the comments describing the contents of Margin & Child since we no longer guarantee them.
2016-05-20 22:19:35 -04:00
Rob Rix
24af4c4af5
Add a function to align branch elements into their lines.
2016-05-20 22:17:39 -04:00
Rob Rix
30bfae37aa
Child, not Child'.
2016-05-20 22:13:36 -04:00
Rob Rix
e1110869e3
🔥 Child
.
2016-05-20 22:11:48 -04:00
Rob Rix
2eba6e726e
toSource(s)/toChildLists operate over BranchElements.
2016-05-20 22:11:22 -04:00
Rob Rix
ed00a34bee
Shrink BranchElements.
2016-05-20 22:08:22 -04:00
Rob Rix
c7ed296e8b
Don’t re-quote the contents of branch elements.
2016-05-20 22:04:09 -04:00
Rob Rix
f830256a5c
Pretty-print Margin elements.
2016-05-20 22:03:39 -04:00
Rob Rix
f09f9cf3a2
Extract showThese to the top.
2016-05-20 22:03:13 -04:00
Rob Rix
097220a454
Pretty-print Child elements differently.
2016-05-20 22:02:29 -04:00
Rob Rix
919f32a650
Spike out an Arbitrary instance for BranchElement.
2016-05-20 21:59:46 -04:00
Rob Rix
419bcfe776
Add a Show instance over BranchElement.
2016-05-20 21:54:33 -04:00
Rob Rix
3aaa9f79ca
Stub in a type representing the elements of branches.
2016-05-20 21:50:52 -04:00
Rob Rix
6eabdd06eb
Compute a pair of Sources from a list of child lines.
2016-05-20 21:50:41 -04:00
Rob Rix
048c9d34c2
Add a function to compute lists of children.
2016-05-20 21:50:08 -04:00
Rob Rix
2541405fdc
Compute a Source from a list of children.
2016-05-20 21:49:29 -04:00
Rob Rix
aff7fbbc47
Ensure that we do not shrink when both childContents and childMargin are empty.
2016-05-20 16:40:25 -04:00
Rob Rix
0e86c8149a
Ensure that we can shrink when either childContents or childMargin is empty.
2016-05-20 16:39:58 -04:00
Rob Rix
21fac60bf1
Shrink contents and margins string-wise but not character-wise.
...
🎩 @rewinfrey
2016-05-20 16:32:28 -04:00
Rob Rix
bd286bfbce
Implement shrink
over Child
.
2016-05-20 16:29:09 -04:00
Rob Rix
97f6183a55
Destructure the child using RecordWildcards.
2016-05-20 16:13:15 -04:00
Rob Rix
2b65c06ffc
Add a Show instance for Child.
...
🎩 @rewinfrey
2016-05-20 16:07:13 -04:00
Rob Rix
1ae30309b4
Newlines are less common than other padding characters.
2016-05-20 16:06:49 -04:00
Rob Rix
f8e007bb46
Children contain asterisks and newlines.
2016-05-20 15:50:31 -04:00
Rob Rix
b0c0f13b61
Children have a string of contents.
2016-05-20 15:50:15 -04:00
Rob Rix
765ac74532
Generate arbitrary margins of spaces and newlines.
2016-05-20 15:44:47 -04:00
Rob Rix
5efb5d8987
Write the childMargin type as String to silence hlint.
2016-05-20 15:44:24 -04:00
Rob Rix
391b1da75e
Arbitrary child keys are alphanumeric.
2016-05-20 15:41:20 -04:00
Rob Rix
f2835ac7a6
Child keys are strings.
2016-05-20 15:40:40 -04:00
Rob Rix
13a90624de
Stub in a quick Arbitrary instance for Child.
2016-05-20 15:34:20 -04:00
Rob Rix
72455cdecd
Add a datatype to represent children for alignBranch property tests.
2016-05-20 15:34:11 -04:00
Rob Rix
5355143395
Add some pending properties.
2016-05-20 13:05:38 -04:00
Rob Rix
018f289fb5
Abstract PrettyDiff over a type parameter.
2016-05-20 12:39:56 -04:00
Rob Rix
cb2ffd188c
Add a test case of ungreedy asymmetrical node alignment.
2016-05-19 16:16:35 -04:00
Rob Rix
2df52eec1d
Ditto for the json output.
2016-05-19 14:04:16 -04:00
Rob Rix
172a0aaa47
We no longer extend an expression statement over the end of the line, apparently.
2016-05-19 14:00:22 -04:00
Rob Rix
1d2ec4c5f0
The expected alignment of this case has changed.
2016-05-19 13:54:29 -04:00
Rob Rix
20627f764f
Test alignBranch instead of alignChildrenInRanges.
2016-05-19 13:40:10 -04:00
Rob Rix
ac17a13167
Test that context-only lines are paired up before the asymmetrical halves of split-up symmetrical children.
2016-05-19 12:52:51 -04:00
Rob Rix
d25f7ddc7f
Test that we align deletions on a line before insertions.
2016-05-19 12:22:48 -04:00
Rob Rix
1979f4e32f
Make it convenient to show the raw structures for strange failure cases.
2016-05-19 12:22:33 -04:00
Rob Rix
80f58f01e3
Do some gymnastics to allow our DSL to construct terms/diffs uniformly.
2016-05-19 12:12:11 -04:00
Rob Rix
198304d45d
Use the insert/delete constructors in the test fixtures.
2016-05-19 11:10:48 -04:00
Rob Rix
7bc9a358a5
Add PatchConstructible instances to Patch/SplitPatch.
2016-05-19 11:04:19 -04:00
Rob Rix
04ef584b6c
Add a typeclass to make patches/split patches.
2016-05-19 11:03:45 -04:00
Rob Rix
3e63b464f7
Test that symmetrical nodes are split if forced by earlier symmetrical nodes.
2016-05-19 09:01:15 -04:00
Rob Rix
c50493175b
Remove the redundant tests of asymmetrical nodes preceding/following symmetrical ones.
2016-05-19 00:21:41 -04:00
Rob Rix
24f98f7db9
Test that symmetrical nodes force alignment on both sides.
2016-05-19 00:19:08 -04:00
Rob Rix
17403fc2b2
Fix up the test of symmetrical nodes and following asymmetrical ones.
2016-05-19 00:18:49 -04:00
Rob Rix
b86ce458b0
Test that symmetrical nodes force alignment of later asymmetrical nodes on the same line.
2016-05-19 00:15:03 -04:00
Rob Rix
7d591e737f
Test that symmetrical nodes force alignment of earlier asymmetrical nodes on the same line.
2016-05-19 00:13:49 -04:00
Rob Rix
5c2d9b6b01
Change a test name.
2016-05-19 00:13:26 -04:00
Rob Rix
dc8d0d4fdf
Add punctuation characters to a test case to clarify the failure.
2016-05-18 17:22:16 -04:00
joshvera
68948287f8
Add a summary renderer
2016-05-18 12:01:16 -04:00
joshvera
aade9415aa
Add replacement summaries
2016-05-18 10:24:08 -04:00
joshvera
ab3b8faf32
hey look it works
2016-05-18 10:18:26 -04:00