nick8325/quickcheck — pull request #12 by rudymatela (2014-04-08 14:03:16+00:00)
Title: Added flag to toggle shrinking.

### Description

The current QuickCheck API provides this way of disabling shrinking:

```haskell
quickCheck (noShrinking prop_something)
```

This patch adds a more "consistent", albeit verbose, way of disabling it in relation to other flags (e.g.: ``chatty``, ``maxSize``, ``maxDiscardRatio``):

```haskell
quickCheckWith stdArgs { doShrinking = False } prop_something
```

### Discussion

Things not addressed in patch / discussion:

The ``noShrinking`` function still works but could be removed.

Unsure about this patch anyway -- adding only for consistency. ``noShrinking`` definitely can look nicer:

```haskell
quickCheckNS = quickCheck . noShrinking
quickCheckNS = quickCheckWith stdArgs { doShrinking = False } prop_something
```

Another option to keep consistency would be doing the reverse, making ``chatty``, ``maxsize``, etc. functions that operate on properties, eliminating the need for quickCheckWith and args altogether:

```haskell
quickCheck (chatty (maxSize 100 prop_something))

-- some custom quickcheck runners:
quickCheckCS n = quickCheck . chatty . maxSize n
quickCheck50 = quickCheck . maxSize 50
```