Commit Graph

30 Commits

Author SHA1 Message Date
Julian K. Arni
a0ec1777a7 Compatibility with earlier versions of hspec.
Adds CPP to the tests to allow for upstream changes to the 'Result'
    type.
2017-10-15 17:49:47 -07:00
Erik Aker
f3b4fcf7a9 Resolve merge conflicts with unbiasedGeneration merge 2017-10-14 08:16:30 -07:00
Julian Arni
66ce50993f Unbias generation of requests. (#19)
* Unbias generation of requests:

     ...so that each endpoint is picked with the same frequency.

     Also, include a test for unbiased generation that measures mean and variance of results.
2017-10-14 07:53:04 -07:00
Erik Aker
0e23a2eba7 Code cleanup: remove unused imports and code 2017-07-15 15:11:18 -07:00
Erik Aker
f052dc149b Bump HSpec to 2.4.4 and make tests use safeEvaluateExample to capture failure msg 2017-07-15 15:03:06 -07:00
Nick B
d33214d376 Fix Path delimiting:
* Add test API with multiple Path elements
  * Add basic test using this API, generating an endpoint to validate that query path delimiting is happening correctly (that fails on `master`)
  * Fix (re)creation of path to prepend `/` to each new path section, but only if it's non-empty (this fixes the trailing slashes, but still allows users to use a `:> "foo/" :>...` if their API demands trailing slashes)
  * Update / fix the existing test that now fails slightly differently (i.e. the trailing slash in `failplz/` is gone)

Fixes #22.
2017-03-11 11:19:57 +00:00
Nick B
2109326ad7 QueryFlags don't use =
* Also, fix import for old `Servant` versions - _every_ version now needs `Data.Bytestring` (i.e. Servant version < 0.8, as per old lts in `stack.yaml`)
2017-03-10 08:31:56 +00:00
Nick B
77fa490b93 Fix QueryFlags too (#23)
* Same logic / testing as for `QueryParam`
 * There's probably some de-duplication that could be done here one day...
2017-03-07 22:52:38 +00:00
Nick B
a8459223ed Use () for test QueryParam type too
...as suggested (thanks @jkarni)
2017-03-07 22:48:45 +00:00
Nick B
6be6697165 QueryParams: fix ampersand, improve test
* Simplify test API to use `()` - no awkward values at all.
 * The test asserts on _entire_ of resulting path now...
 * ...and fix the ampersand placement, but preserving the order of params left to right. The code also reads a bit better this way...
2017-03-07 21:25:11 +00:00
Nick B
a5224276d5 Fix multiple QueryParams
* Add test API taking multiple `QueryParam`s
 * Add basic test using this API, generating an endpoint to ensure correct HTTP `one=foo&two=bar` query string generation is happening (that fails on `master`)
 * Fix (re)creation of query string to append `&` before the new parameter if there is already a built query string.

Fixes #23.
2017-03-06 13:32:55 +00:00
Julian K. Arni
b1227d3864 Make onlyJsonObjects succeed in non-JSON endpoints. 2016-10-18 14:38:44 +02:00
Julian K. Arni
feff40b2e4 Add notLongerThan predicate. 2016-10-05 15:29:39 +01:00
Julian K. Arni
8eb5c334c1 Looser bounds.
Support recent versions of QuickCheck, aeson, http-client, servant,
        servant-client, and servant-server.
2016-10-03 16:30:46 +02:00
Julian K. Arni
0337996c6c Support new CaptureAll combinator. 2016-09-14 10:26:13 -03:00
Julian K. Arni
0682e353d6 Cleanup 2016-08-28 19:22:43 -03:00
Julian K. Arni
2c1152a8c0 Much better errors 2016-08-28 19:15:26 -03:00
Julian K. Arni
b7df33fbe8 Get an error message in. 2016-08-28 13:32:48 -03:00
Julian K. Arni
70fed09866 Start implementing better error messages. 2016-08-01 11:58:10 -03:00
Julian K. Arni
c5172a1dc5 base-compat for tests.
And test import cleanup.
2016-05-09 17:59:37 +02:00
Julian K. Arni
c85d41ad79 Better failure tests 2016-04-26 14:43:02 +02:00
Julian K. Arni
9307ea2158 Add new predicates.
* notAllowedContainsAllowHeader
    * getsHaveCacheControlHeader
    * headsHaveCacheControlHeader
2016-04-25 12:32:02 +02:00
Julian K. Arni
3189902c4b Comprehensive instances for HasGenRequest. 2016-04-23 21:43:03 +02:00
Julian K. Arni
dbdb948934 wip 2016-04-23 17:08:48 +02:00
Julian K. Arni
d62753b2c5 More predicates work 2016-04-23 14:20:31 +02:00
Julian K. Arni
c187be434d Add ResponseEquality 2016-04-23 12:05:47 +02:00
Julian K. Arni
c1b92215c3 Fix serversEqual and tests. 2016-04-23 11:50:04 +02:00
Julian K. Arni
2050487058 Rewrite.
Being lazy without a new full intepretation isn't paying off.
2016-04-23 01:21:36 +02:00
Julian K. Arni
0d455a9851 Use new client with per-client BaseUrl and Manager.
This may be a step back, and the instances aren't as nice.
2016-04-22 14:18:44 +02:00
Julian K. Arni
72abea9b0f initial commit 2016-04-22 13:00:23 +02:00