Rob Rix
|
7b6bf4f42b
|
Stub in a spec.
|
2017-04-05 11:10:23 -04:00 |
|
Rob Rix
|
1fbe6a8319
|
Rename ParseCommand to Command.Parse.
|
2017-03-31 11:50:36 -04:00 |
|
Rob Rix
|
32b9dd9f16
|
Rename DiffCommand to Command.Diff.
|
2017-03-31 11:48:21 -04:00 |
|
Rick Winfrey
|
eaa5873ed7
|
Merge branch 'master' into gitmon-support
|
2017-03-27 15:38:18 -07:00 |
|
Rick Winfrey
|
9cf176a37d
|
GitmonClient spec should not run in parallel
|
2017-03-21 14:48:47 -07:00 |
|
Rob Rix
|
093f3b9508
|
Stub in a spec for Myers’ algorithm.
|
2017-03-20 11:25:58 -04:00 |
|
Timothy Clem
|
32809f158a
|
Merge remote-tracking branch 'origin/master' into gitmon-support
|
2017-03-06 07:32:05 -08:00 |
|
Rick Winfrey
|
0954699b12
|
Add happy path GitmonClient spec
|
2017-03-01 14:11:16 -08:00 |
|
Timothy Clem
|
bfe1181acb
|
Move Diff and Source Specs
|
2017-02-28 15:35:43 -08:00 |
|
Timothy Clem
|
4c3feecc77
|
Add ParseCommandSpec to validate parse output
|
2017-02-28 15:32:04 -08:00 |
|
Timothy Clem
|
1d9436bb14
|
Collapse all these tests into DiffCommandSpec
|
2017-02-28 15:00:56 -08:00 |
|
Timothy Clem
|
a478b10593
|
Test that all output formats do product output
|
2017-02-28 14:55:57 -08:00 |
|
Timothy Clem
|
dcfdcf78d3
|
Fold DiffSummary into Renderer.Summary
|
2017-02-28 14:09:57 -08:00 |
|
Timothy Clem
|
980b6c95bc
|
First pass at full stack specs
|
2017-02-24 16:46:22 -08:00 |
|
Timothy Clem
|
02c2a7aac9
|
Remove corpus specs and fixtures entirely
|
2017-02-23 09:19:30 -08:00 |
|
Timothy Clem
|
97029a6c47
|
Better spec names
|
2017-02-22 20:06:05 -08:00 |
|
Timothy Clem
|
52e4dd435a
|
Test expression output (based on corpus spec strategy)
|
2017-02-22 08:34:31 -08:00 |
|
Timothy Clem
|
1facca0b50
|
Add failing toc summary test and refactor removeDupes
|
2017-02-14 11:29:24 -08:00 |
|
Rob Rix
|
5c17ab5149
|
Restore AlignmentSpec to its former “glory.”
|
2017-02-13 12:17:46 -05:00 |
|
Rob Rix
|
0f0e65043e
|
Give up and disable AlignmentSpec.
|
2017-02-09 16:45:11 -05:00 |
|
Rob Rix
|
8d5bc01a75
|
Run the Source spec.
|
2016-09-13 11:39:05 -04:00 |
|
Rob Rix
|
2b34916554
|
Build and run RangeSpec 😔
|
2016-09-13 11:18:38 -04:00 |
|
Rob Rix
|
b03f1d3b91
|
Stub in a spec function.
|
2016-07-26 03:58:14 -04:00 |
|
Rob Rix
|
4f967e0e1a
|
🔥 Data.OrderedMap.
|
2016-07-12 23:27:20 -04:00 |
|
Rob Rix
|
b4107426de
|
Stub in a spec for Diff.
|
2016-06-27 13:12:06 -04:00 |
|
Rob Rix
|
1170bfdcb2
|
Rename Data.Gram to Data.RandomWalkSimilarity.
|
2016-06-22 17:59:28 -04:00 |
|
Rob Rix
|
cc8fcb926e
|
Include the Gram spec.
|
2016-06-22 10:45:43 -04:00 |
|
Rob Rix
|
d5e807257e
|
Hush, hlint.
|
2016-06-22 10:43:02 -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
|
473ec980b1
|
Merge remote-tracking branch 'origin/master' into diff-summaries
|
2016-05-26 13:40:54 -04:00 |
|
joshvera
|
ed144bbb1f
|
Fix tests
|
2016-05-26 13:11:34 -04:00 |
|
joshvera
|
4d6427a24e
|
Stub some tests
|
2016-05-17 13:09:14 -04:00 |
|
Rob Rix
|
6829c6baab
|
🔥 Data.Adjoined.Spec.
|
2016-04-14 21:54:25 -04:00 |
|
Rob Rix
|
1972e20233
|
🔥 Data.Functor.Both.Spec.
|
2016-04-14 21:54:11 -04:00 |
|
Rob Rix
|
b3bb9e2c3e
|
Test that Both coalesces when both sides coalesce.
|
2016-03-15 10:50:13 -04:00 |
|
Rob Rix
|
322e56dd68
|
Run the Data.Adjoined spec.
|
2016-03-11 09:49:03 -05:00 |
|
Rob Rix
|
d6fb451ebd
|
Rename SplitSpec to AlignmentSpec.
|
2016-02-28 14:05:19 -05:00 |
|
Matt Diephouse
|
f09676d6b4
|
Do ALL the tests in parallel
|
2016-02-17 17:44:37 -05:00 |
|
Matt Diephouse
|
ac053940fe
|
Add a spec for on-disk tests
|
2016-02-16 12:33:41 -05:00 |
|
Rob Rix
|
924087d59a
|
Manual spec inclusion.
|
2016-01-05 11:27:37 -05:00 |
|
Josh Vera
|
a124943822
|
Update Spec.hs
|
2015-12-17 13:35:18 -05:00 |
|
joshvera
|
0223de4145
|
Enable autodiscovery of tests
Also splits up tests into different specs
|
2015-12-17 13:08:47 -05:00 |
|
Rob Rix
|
b4bfac45ce
|
Correct the tests.
|
2015-12-16 23:27:00 -05:00 |
|
joshvera
|
fe38ebe548
|
Test unicode equivalent terms are replacements
|
2015-12-16 14:18:09 -05:00 |
|
joshvera
|
c71c9fd4fd
|
Write out code points in test
|
2015-12-16 13:09:07 -05:00 |
|
joshvera
|
b4fb04fccc
|
Test equivalent precomposed/decomposed unicode is not equal
|
2015-12-16 11:58:52 -05:00 |
|
Rob Rix
|
26400a24a8
|
Import & run the OrderedMapSpec spec.
|
2015-12-14 17:49:40 -05:00 |
|
Rob Rix
|
40f6df8b5d
|
Merge branch 'master' into ordered-map
|
2015-12-14 17:35:08 -05:00 |
|
Josh Vera
|
6850b402d4
|
Merge pull request #326 from github/post-process-leaf-nodes-in-terms
Post process leaf nodes in terms
|
2015-12-14 17:20:16 -05:00 |
|
Rob Rix
|
86cf5df9e7
|
Merge pull request #327 from github/remove-info-line-range
Remove line range from Info
|
2015-12-14 17:20:12 -05:00 |
|
Rob Rix
|
2cdbc9ad5e
|
Update the tests to point at OrderedMap.
|
2015-12-14 17:15:44 -05:00 |
|
joshvera
|
f5dadfd964
|
fix tests
|
2015-12-14 16:09:12 -05:00 |
|
Rob Rix
|
cded6c0d7d
|
Get the substrings out at the same time as computing the ranges.
|
2015-12-14 15:37:30 -05:00 |
|
Rob Rix
|
fdb1a6a9f7
|
Correct the tests.
|
2015-12-14 15:33:16 -05:00 |
|
Rob Rix
|
06a826c5f0
|
Merge branch 'master' into post-process-leaf-nodes-in-terms
|
2015-12-14 15:28:04 -05:00 |
|
Rob Rix
|
9d61286d81
|
Take only maxLength elements for keyed nodes.
|
2015-12-14 15:18:56 -05:00 |
|
Rob Rix
|
32d460bce7
|
Rename n to maxDepth .
|
2015-12-14 15:18:16 -05:00 |
|
Rob Rix
|
686325bf4c
|
Rename m to maxLength .
|
2015-12-14 15:17:26 -05:00 |
|
Rob Rix
|
5c90ecde8e
|
Use the cube of the max length, not the square.
I.e. shrink the produces lists.
|
2015-12-14 15:15:56 -05:00 |
|
Rob Rix
|
33c0dacd55
|
Take m, not n.
|
2015-12-14 15:13:32 -05:00 |
|
Rob Rix
|
2f726d4ba6
|
🔥 ArbitraryDiff .
|
2015-12-14 15:12:07 -05:00 |
|
Rob Rix
|
a93908a5f8
|
Test the reflexivity of Diff equality by generating a pair of terms and diffing them.
|
2015-12-14 15:11:59 -05:00 |
|
Rob Rix
|
2e5d85748b
|
Capture the construction of strictly smaller terms in the where clause.
|
2015-12-14 15:08:32 -05:00 |
|
Rob Rix
|
3e22121d66
|
Test that the offset is applied.
|
2015-12-14 12:53:14 -05:00 |
|
Rob Rix
|
48464ac552
|
Test that we skip whitespace at the end.
|
2015-12-14 12:52:37 -05:00 |
|
Rob Rix
|
bfdf388b5c
|
Test that we skip whitespace at the start.
|
2015-12-14 12:52:01 -05:00 |
|
Rob Rix
|
7bf7d22d8e
|
Test that multiple whitespace characters are skipped.
|
2015-12-14 12:51:23 -05:00 |
|
Rob Rix
|
1bdfa51702
|
Test that multiple words → multiple ranges.
|
2015-12-14 12:49:01 -05:00 |
|
Rob Rix
|
da6995ae54
|
Test that a single word string is covered by the returned range.
|
2015-12-14 12:48:04 -05:00 |
|
Rob Rix
|
fca022109c
|
Uh, ok.
|
2015-12-14 12:47:51 -05:00 |
|
Rob Rix
|
ce5854e019
|
Test that the empty string doesn’t have any word ranges in it.
|
2015-12-14 12:46:53 -05:00 |
|
Rob Rix
|
8951bebfa7
|
Test that rangesOfWordsFrom doesn’t produce words for whitespace.
|
2015-12-14 12:46:20 -05:00 |
|
Rob Rix
|
7bc4c62151
|
Increase the probability of leaves as a cheap way speed up the tests.
|
2015-12-11 16:11:10 -05:00 |
|
Rob Rix
|
14e861da35
|
Test that diffing a term against itself produces a zero-cost diff.
|
2015-12-11 16:10:22 -05:00 |
|
Rob Rix
|
3bb9e704bf
|
Remove the Arbitrary instance for Diff.
|
2015-12-11 16:07:11 -05:00 |
|
Rob Rix
|
0aa3154434
|
Test properties over ArbitraryDiff.
|
2015-12-11 16:07:06 -05:00 |
|
Rob Rix
|
c79113c18c
|
ArbitraryDiff is Arbitrary.
|
2015-12-11 16:06:14 -05:00 |
|
Rob Rix
|
86d95d1d86
|
unDiff interprets diffs.
|
2015-12-11 16:04:41 -05:00 |
|
Rob Rix
|
21b2d7fdfd
|
Stub in an ArbitraryDiff type.
|
2015-12-11 16:03:04 -05:00 |
|
Rob Rix
|
fa4e5011ac
|
Test diff equality reflexivity.
|
2015-12-11 16:02:08 -05:00 |
|
Rob Rix
|
f9a72f75e1
|
Add a silly Arbitrary instance for Diff.
|
2015-12-11 16:02:02 -05:00 |
|
Rob Rix
|
d07cd36e40
|
CategorySet is Arbitrary.
|
2015-12-11 16:01:46 -05:00 |
|
Rob Rix
|
64c4787d81
|
CategorySet is Categorizable.
|
2015-12-11 16:01:40 -05:00 |
|
Rob Rix
|
90b3da2291
|
Add a fixed-member CategorySet type.
|
2015-12-11 16:01:28 -05:00 |
|
Rob Rix
|
f667109c28
|
Test _Term_ equality, not ArbitraryTerm equality.
|
2015-12-11 15:51:25 -05:00 |
|
Rob Rix
|
97ff45bd28
|
Remove an obsolete import.
|
2015-12-11 15:50:35 -05:00 |
|
Rob Rix
|
066e0511d1
|
🔥 arbitraryBounded.
|
2015-12-11 15:47:43 -05:00 |
|
Rob Rix
|
50090dd73a
|
Make leaves likelier.
|
2015-12-11 15:47:23 -05:00 |
|
Rob Rix
|
91317207fe
|
Resume generating arbitrary keyed nodes.
|
2015-12-11 15:47:19 -05:00 |
|
Rob Rix
|
9ece0af975
|
Bound depth by the cube root of the size parameter, and length by the square root.
|
2015-12-11 15:41:35 -05:00 |
|
Rob Rix
|
d9bb395f2c
|
Remove the Arbitrary instance for Syntax.
|
2015-12-11 15:03:30 -05:00 |
|
Rob Rix
|
2646ebf4ae
|
We need this import for liftM.
|
2015-12-11 15:03:19 -05:00 |
|
Rob Rix
|
77c9970f25
|
Don’t bind a variable for n .
|
2015-12-11 15:03:03 -05:00 |
|
Rob Rix
|
3efa6e6ff4
|
Recur into arbitrary , and produce arbitrary Keyed nodes.
|
2015-12-11 15:02:29 -05:00 |
|
Rob Rix
|
76f78234aa
|
Define shrink by case analysis.
|
2015-12-11 15:01:44 -05:00 |
|
Rob Rix
|
2e97bf44fc
|
Generate arbitrary Fixed terms with bounds &c.
|
2015-12-11 14:40:29 -05:00 |
|
Rob Rix
|
c4326d54a0
|
Composition 🎉
|
2015-12-11 14:39:56 -05:00 |
|
Rob Rix
|
2764c34b8d
|
Generate arbitrary terms using frequency & sized bounds.
|
2015-12-11 14:38:57 -05:00 |
|
Rob Rix
|
046c3d1813
|
Try to simplify syntax shrinking in terms.
|
2015-12-11 14:38:52 -05:00 |
|
Rob Rix
|
ed929f07a0
|
Bind in the opposite direction.
|
2015-12-11 14:17:04 -05:00 |
|
Rob Rix
|
02c19d1d93
|
Shrink Keyed syntax values to subsequences.
|
2015-12-11 14:14:58 -05:00 |
|
Rob Rix
|
b643e9ce5a
|
Shrink indexed/fixed nodes to subsequences.
|
2015-12-11 14:07:31 -05:00 |
|
Rob Rix
|
68bf2cecfc
|
Add an Arbitrary instance for Syntax.
|
2015-12-11 14:05:59 -05:00 |
|
Rob Rix
|
913d484a67
|
Hide Fixed .
|
2015-12-11 14:05:46 -05:00 |
|
Rob Rix
|
46dfff2b7c
|
Derive the genericity of ArbitraryTerm.
|
2015-12-11 13:37:42 -05:00 |
|
Rob Rix
|
f983ec0cc3
|
Shrink Keyed subterms recursively.
|
2015-12-11 11:19:13 -05:00 |
|
Rob Rix
|
e1161b46db
|
Shrink Fixed subterms recursively.
|
2015-12-11 11:17:51 -05:00 |
|
Rob Rix
|
39cfe5f96f
|
Remove a redundant permutation of Fixed terms.
|
2015-12-11 11:17:39 -05:00 |
|
Rob Rix
|
d5041aaf5e
|
Shrink subterms recursively.
|
2015-12-11 11:17:20 -05:00 |
|
Rob Rix
|
65bd8b19c8
|
Remove a redundant variation.
|
2015-12-11 11:16:52 -05:00 |
|
Rob Rix
|
1cb56f5eb3
|
Make sure never to shrink to the argument.
|
2015-12-11 11:16:02 -05:00 |
|
Rob Rix
|
6383404fc4
|
Shrink subsequences of Fixed terms.
|
2015-12-11 11:15:39 -05:00 |
|
Rob Rix
|
dacb2dba48
|
Shrink subsequences of Indexed terms.
|
2015-12-11 11:15:21 -05:00 |
|
Rob Rix
|
8d0272bdac
|
Implement shrinking over ArbitraryTerm.
|
2015-12-11 11:14:33 -05:00 |
|
Rob Rix
|
7dd4631053
|
Remove ArbitrarySyntax.
|
2015-12-11 11:00:52 -05:00 |
|
Rob Rix
|
40eafd315d
|
Remove the arbitrary instance for ArbitrarySyntax.
|
2015-12-11 11:00:26 -05:00 |
|
Rob Rix
|
dbbada55da
|
Construct bounded terms.
|
2015-12-11 11:00:18 -05:00 |
|
Rob Rix
|
e6bddf1cf1
|
Bound arbitrary Keyed nodes.
I really hope we can clean this up.
|
2015-12-11 11:00:06 -05:00 |
|
Rob Rix
|
a7c959db6c
|
Use the ordinary ArbitraryTerm constructor.
|
2015-12-11 10:34:43 -05:00 |
|
Rob Rix
|
2cbe8959fe
|
We don’t need to use ArbitrarySyntax for this.
|
2015-12-11 10:33:46 -05:00 |
|
Rob Rix
|
fd0c1e7abe
|
Attempt to define the selection of an arbitrary bounded term.
|
2015-12-11 10:32:31 -05:00 |
|
Rob Rix
|
fda61b074f
|
ArbitraryTerm → Term eliminator.
|
2015-12-11 09:14:54 -05:00 |
|
Rob Rix
|
bc47d2743f
|
Represent ArbitraryTerm as an annotation/Term pair.
Capturing the recursive structure in `ArbitraryTerm` instead of
deferring it to `Term` allows us to simplify construction of arbitrary
inhabitants.
|
2015-12-11 09:14:43 -05:00 |
|
Rob Rix
|
6799d5eba1
|
Use record notation to unwrap ArbitrarySyntax.
|
2015-12-11 09:12:49 -05:00 |
|
Rob Rix
|
0c23f11d01
|
Abstract ArbitraryTerm over its annotation type.
|
2015-12-11 00:35:00 -05:00 |
|
Rob Rix
|
de9aa14da4
|
ArbitraryTerm is parameterized by its leaf type.
|
2015-12-11 00:33:43 -05:00 |
|
Rob Rix
|
2f744cd769
|
ArbitrarySyntax is Arbitrary.
|
2015-12-11 00:32:59 -05:00 |
|
Rob Rix
|
c7dbd6e79b
|
Add an ArbitrarySyntax type.
|
2015-12-11 00:32:46 -05:00 |
|
Rob Rix
|
a71a4d2e36
|
Adjoining onto no rows is also identity.
|
2015-12-11 00:24:37 -05:00 |
|
Rob Rix
|
de75e838d0
|
Test that adjoining onto empty rows is identity.
|
2015-12-11 00:23:57 -05:00 |
|
Rob Rix
|
390fa5ee73
|
Test that adjoining mempty is idempotent.
|
2015-12-11 00:22:21 -05:00 |
|
Rob Rix
|
9d71aefd04
|
Add an Arbitrary instance for Row.
|
2015-12-11 00:20:25 -05:00 |
|
Rob Rix
|
91140aa8fa
|
Add an Arbitrary instance for Line.
|
2015-12-11 00:19:48 -05:00 |
|
Rob Rix
|
e84d8804bf
|
Add an Arbitrary instance for HTML.
|
2015-12-11 00:19:07 -05:00 |
|
Rob Rix
|
06d9a7ef04
|
mempty!
|
2015-12-11 00:13:17 -05:00 |
|
Rob Rix
|
23d11c1cc8
|
adjoin2 is idempotent for additions of and onto empty rows.
|
2015-12-11 00:12:28 -05:00 |
|
Rob Rix
|
bec2f01f02
|
Reflexivity requires a == a.
|
2015-12-11 00:05:23 -05:00 |
|
Rob Rix
|
873441efde
|
Generate an arbitrary leaf.
|
2015-12-11 00:05:01 -05:00 |
|
Rob Rix
|
f59f92e1d4
|
Use the prop shorthand.
|
2015-12-10 23:59:19 -05:00 |
|
Rob Rix
|
9b2fda2a49
|
Test that equality is reflexive.
|
2015-12-10 23:55:31 -05:00 |
|
Rob Rix
|
aa9f1d6b23
|
Derive Show and Eq.
|
2015-12-10 23:55:21 -05:00 |
|
Rob Rix
|
9589264745
|
ArbitraryTerm is an instance of Arbitrary.
|
2015-12-10 23:45:14 -05:00 |
|
Rob Rix
|
54166e7662
|
Add an ArbitraryTerm newtype.
|
2015-12-10 23:45:05 -05:00 |
|
Rob Rix
|
60791ffc15
|
import QuickCheck.
|
2015-12-10 23:40:42 -05:00 |
|
Rob Rix
|
a9bb3583e7
|
Fix a faulty test.
|
2015-12-10 16:47:10 -05:00 |
|
Rob Rix
|
85d141e924
|
Test that openLine returns Nothing for closed lines.
|
2015-12-10 16:31:00 -05:00 |
|
Rob Rix
|
d9e63c0331
|
Clarify a test name.
|
2015-12-10 16:30:52 -05:00 |
|
Rob Rix
|
6a73248a46
|
Test that openLine will produce open lines.
|
2015-12-10 16:29:18 -05:00 |
|
Rob Rix
|
15f27c5faa
|
We have a leaf for the purposes of this test.
|
2015-12-10 15:48:23 -05:00 |
|