Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bring up-to-date w/ current Midje, cljs #7

Open
wants to merge 240 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
240 commits
Select commit Hold shift + click to select a range
c5213ac
[Issue #82] first version of formula: only reports 0-1 times per form…
AlexBaranosky Feb 19, 2012
c215fb9
[Issue #82] removed unused code
AlexBaranosky Feb 19, 2012
8621c2c
[Issue #82] adding backlog file for the formula epic
AlexBaranosky Feb 19, 2012
823a323
[Issue #82] now reports the first failure's normal report
AlexBaranosky Feb 19, 2012
6b91789
[Issue #82] formula can now take an optional docstring
AlexBaranosky Feb 19, 2012
923d921
[Issue #82] first version of formula: only reports 0-1 times per form…
AlexBaranosky Feb 19, 2012
c35b835
[Issue #82] removed unused code
AlexBaranosky Feb 19, 2012
e2ce67a
[Issue #82] adding backlog file for the formula epic
AlexBaranosky Feb 19, 2012
12b9205
[Issue #82] now reports the first failure's normal report
AlexBaranosky Feb 19, 2012
725c2a2
[Issue #82] formula can now take an optional docstring
AlexBaranosky Feb 19, 2012
fdae82b
[Issue #82] updating formulas backlog
AlexBaranosky Feb 19, 2012
a6fb2df
Merge branch 'formulas' of github.com:marick/Midje into formulas
AlexBaranosky Feb 19, 2012
a75b451
[Issue #82] no longer counts failures as 2 fact runs.
AlexBaranosky Feb 19, 2012
1bb5b25
[Issue #82] work in progress
AlexBaranosky Feb 22, 2012
2d8b0e9
Merge branch 'master' into formulas
AlexBaranosky Feb 22, 2012
a82dd59
Merge branch 'master' into formulas
AlexBaranosky Feb 23, 2012
8a30cfa
Revert "[Issue #82] work in progress"
AlexBaranosky Feb 25, 2012
4eb5fcf
workin progress to get formulas to be mergeable into master ready.
AlexBaranosky Feb 25, 2012
0662e5d
[Issue #82] fixed formulas so that they evaluate their generators, an…
AlexBaranosky Feb 25, 2012
b091945
[Issue #82] adjustments after checking vs all versions of clojure
AlexBaranosky Feb 25, 2012
72af5b1
[Issue #82] more ideas added to the formula backlog
AlexBaranosky Feb 25, 2012
915733b
[Issue #82] rollback dynamic bindability of number of fact generation…
AlexBaranosky Feb 25, 2012
0dec369
Merge branch 'master' into formulas
AlexBaranosky Feb 25, 2012
dd4bd47
added an UNRELEASED section to HISTORY.md - I've been adding to this …
AlexBaranosky Feb 25, 2012
4903b63
extract util fn to handle pulling optional docstrings from macros' ar…
AlexBaranosky Feb 25, 2012
da688e2
created midje.util ns for code that helps test private vars
AlexBaranosky Feb 25, 2012
570a95c
updating HISTORY.md after deploy to clojars
AlexBaranosky Feb 25, 2012
a08f190
[Issue #75] first step: batch all incorrect call count errors in one …
AlexBaranosky Feb 26, 2012
2eb70b2
[Issue #75] changing report wording to be match the style shown on th…
AlexBaranosky Feb 26, 2012
4178d00
[Issue #75] added the expected times called to the report
AlexBaranosky Feb 26, 2012
edd89b3
fixed the doc-string for formula
AlexBaranosky Feb 26, 2012
7212987
chopped some code off of `rotations`
AlexBaranosky Feb 27, 2012
c901734
removed the colons from FAIL: and WORK TO DO: in the report
AlexBaranosky Feb 27, 2012
5438a01
now if you expect :times 10 but there are no calls to that fake, then…
AlexBaranosky Feb 27, 2012
50c8b63
[Issue #82] adding syntax validations for formula macro
AlexBaranosky Feb 29, 2012
a0c17ce
[Issue #82] syntax error if less than 2 elements in the binding
AlexBaranosky Feb 29, 2012
e19bd2f
[Issue #82] generations per formula is now dynamically rebindable
AlexBaranosky Feb 29, 2012
a542061
upgrading compatibility test files
AlexBaranosky Feb 29, 2012
125e766
[Issue #82] improving documentation and the backlog
AlexBaranosky Feb 29, 2012
b8181be
[Issue #82] validates that num generations var is bound to number >= 2
AlexBaranosky Mar 1, 2012
1247423
[Issue #82] removed test.generative -- its not 1.2.1 compatible
AlexBaranosky Mar 1, 2012
988b8a5
[Issue #82] refactored such that last fact done in formula is just a …
AlexBaranosky Mar 1, 2012
a9286d3
[Issue #82] updated backlog with new insights
AlexBaranosky Mar 2, 2012
ba89d85
[Issue #82] once a formula detects a failure, won't run any more gene…
AlexBaranosky Mar 2, 2012
9980189
[Issue #82] updated backlog; organized t-formula
AlexBaranosky Mar 2, 2012
4149811
[Issue #82] formulas can eb set to 1 or more generations now, not 2 o…
AlexBaranosky Mar 2, 2012
32db60a
[Issue #82] try block is a little more stable
AlexBaranosky Mar 3, 2012
064624b
[Issue #82] updating backlog
AlexBaranosky Mar 3, 2012
259f02f
fixed bug where we weren't pr-str :Expected, just calling str on it; …
AlexBaranosky Mar 4, 2012
cfabcb3
reverting back to using str not pr-str, because pr-str was printing w…
AlexBaranosky Mar 4, 2012
9319b66
slight tweak to history
AlexBaranosky Mar 4, 2012
b0525b7
introduced kibit, a static code analyzer; used it to clean a few things
AlexBaranosky Mar 4, 2012
4a0d548
Better documentation of current behavior.
marick Mar 4, 2012
c793a08
More helpful failures from `unfinished`
marick Mar 4, 2012
268c73f
Slightly more clear test.
marick Mar 4, 2012
cf8f933
Merge branch 'master' of github.com:marick/Midje
marick Mar 4, 2012
8a7fbde
cleanups. Found another use for def-many-methods
AlexBaranosky Mar 5, 2012
784e842
cleanups. Found some more uses for def-many-methods
AlexBaranosky Mar 5, 2012
9d51a6b
assorted cleanups, and added test cases
AlexBaranosky Mar 6, 2012
8cfd8a4
work in progress
AlexBaranosky Mar 7, 2012
7c495f3
Added unfinished message work to UNRELEASED section of HISTORY.md
AlexBaranosky Mar 8, 2012
e4dd39a
[Issue #82] updated formula backlog
AlexBaranosky Mar 9, 2012
91d1a59
[Issue #82] added fact covering simple use of `provided` in a formulas
AlexBaranosky Mar 9, 2012
08e57ec
[Issue #82] bunch of partial work
AlexBaranosky Mar 9, 2012
3300081
my first fnil -- and it feels GOOD.
AlexBaranosky Mar 10, 2012
a33c648
upgraded kibit, and found a couple little kibbles and bits to tweak.
AlexBaranosky Mar 10, 2012
63caa78
upgraded 1.4 version to beta4; updated HISTORY to reflect that recent…
AlexBaranosky Mar 10, 2012
d0a4fe3
removed unneeded facts, and cleaned them a bit
AlexBaranosky Mar 10, 2012
45c67e4
work in progress
AlexBaranosky Mar 7, 2012
d0165f2
[Issue #82] updated formula backlog
AlexBaranosky Mar 9, 2012
c77598e
[Issue #82] added fact covering simple use of `provided` in a formulas
AlexBaranosky Mar 9, 2012
6071991
[Issue #82] bunch of partial work
AlexBaranosky Mar 9, 2012
2a6db5c
[Issue #82] dynamic binding of *num-generations-per-formula* works again
AlexBaranosky Mar 11, 2012
b835d32
[Issue #82] fixing shrinking to happen at runtime not macroexpand time
AlexBaranosky Mar 11, 2012
8a81916
[Issue #82] pulled duplicated code into private fn
AlexBaranosky Mar 11, 2012
8bd6bca
[Issue #82] formulas only allow one check per formula
AlexBaranosky Mar 11, 2012
cfd497d
[Issue #82] formulas can have multiple bindings that each can be shru…
AlexBaranosky Mar 13, 2012
1ae1ad3
[Issue #82] updates to formula backlog
AlexBaranosky Mar 13, 2012
3fac4a0
cleaning up tests of syntax validations by making a testing macro tha…
AlexBaranosky Mar 13, 2012
f8abb7c
[Issue #82] arrows in against-background in a formula are ignored whe…
AlexBaranosky Mar 13, 2012
57ed06c
[Issue #82] a lot more syntax validations for formula
AlexBaranosky Mar 14, 2012
df6caf7
[Issue #82] added notion of a future-formula/pending-formula/incipien…
AlexBaranosky Mar 15, 2012
968f636
renames and cleanups etc.
AlexBaranosky Mar 15, 2012
d6c488a
[Issue #82] added opt-map to formulas with :num-trials key to specify…
AlexBaranosky Mar 15, 2012
0b44a64
[Issue #82] renamed *num-generations-per-formula* -> *num-trials*
AlexBaranosky Mar 15, 2012
e81ea73
[Issue #82] validate that only valid opt-map keys is :num-trials
AlexBaranosky Mar 15, 2012
5906a1d
[Issue #82] validate that :num-trials can only be set to 1+
AlexBaranosky Mar 15, 2012
a0caf34
[Issue #82] added one more validation case taking the opts-map into a…
AlexBaranosky Mar 15, 2012
3fd895f
[Issue #82] added opts-map? to :arglists and docstring
AlexBaranosky Mar 15, 2012
563e76d
[Issue #82] 'or' makes for cleaner code
AlexBaranosky Mar 15, 2012
cf45797
[Issue #82] better test case
AlexBaranosky Mar 15, 2012
b045e50
Added future-fact with a =streams=> regression.
marick Mar 15, 2012
d83400d
[Issue #82] use valid-let over when-valid
AlexBaranosky Mar 17, 2012
fff931e
[Issue #82] clarifying renames
AlexBaranosky Mar 17, 2012
74effe7
[Issue #82] clarifying renames - part #2
AlexBaranosky Mar 18, 2012
df51fa7
[Issue #82] introduce fn pop-opts-map
AlexBaranosky Mar 18, 2012
fe606d8
corrected doc-string
AlexBaranosky Mar 18, 2012
79b122b
pulled out higher order pop-if fn to use in pop-docstring and pop-opt…
AlexBaranosky Mar 18, 2012
ffc42a1
valid-let over when-valid + let
AlexBaranosky Mar 18, 2012
3fd3230
A more complete lazy streams implementation. Imperfectly tidy.
marick Mar 18, 2012
6dfc00b
Clean up previous checkin
marick Mar 19, 2012
f56a011
merge
marick Mar 19, 2012
6d9f6e7
[Issue-#82] broadened test to cover two bindingvars that both shrink.
AlexBaranosky Mar 19, 2012
e68a559
breaking up `fail-at` to hopefully make it more readable.
AlexBaranosky Mar 19, 2012
47265ca
[Issue-#82] riffing on the idea of making t-formulas more of an as-do…
AlexBaranosky Mar 19, 2012
45e17d2
updated-rhs: use `seq` case instead of `reader-list-form?` & `string?`
AlexBaranosky Mar 19, 2012
83f7deb
Demonstrating that lazy =streams=> doesn't work for `throws`.
marick Mar 19, 2012
6fcf820
fixed metadata issue with midje.util's functions
Mar 20, 2012
7af3b78
Merge pull request #116 from dnaumov/master
AlexBaranosky Mar 20, 2012
8091c69
thought that `format` was easier to read than a long `str` concatted …
AlexBaranosky Mar 20, 2012
d4d01bb
[Issue #82] `with-num-trials` provides a nice syntax for multiple for…
AlexBaranosky Mar 21, 2012
a8e84e1
cleaning up metaconstant code
AlexBaranosky Mar 21, 2012
154c31e
Update README.md
AlexBaranosky Mar 22, 2012
c070c0a
[Issue #117] Quoted fact inappropriately being given :position k/v pair
AlexBaranosky Mar 24, 2012
7468018
[Issue #117] arrows inside quoted forms will not have :position info …
AlexBaranosky Mar 24, 2012
faaec1c
[Issue #117] moved fact to a more appropriate file
AlexBaranosky Mar 24, 2012
9a053f0
[Issue #118] added dynamic var to hook into the unprocessed-checks an…
AlexBaranosky Mar 24, 2012
f8d2374
[Issue #118] added description key to unprocessed-check. Makes more i…
AlexBaranosky Mar 25, 2012
d9c244a
[Issue #118] :description in unprocessed-check is a vector of strings…
AlexBaranosky Mar 25, 2012
a41f59e
[Issue #118] unprocessed-check now includes :call-form and :arrow key…
AlexBaranosky Mar 25, 2012
66fd794
[Issue #118] maps produced by fake and data-fake now include :call-fo…
AlexBaranosky Mar 25, 2012
c95fa86
[Issue #82] min length of all shrunken cases seqs determines how many…
AlexBaranosky Mar 26, 2012
b7acaa9
[Issue #82] missed a comment
AlexBaranosky Mar 26, 2012
11f440f
used set-m monad as essentially a more efficient `for` expression tha…
AlexBaranosky Mar 28, 2012
fcf3c7e
[Issue #119] moved *expect-checking-fn* to semi-sweet.
AlexBaranosky Mar 31, 2012
c655fbe
assorted validation-error cleanups
AlexBaranosky Mar 31, 2012
fe0add2
removed valid-let in favor of using domonad syntax-validate-m directl…
AlexBaranosky Mar 31, 2012
a79fed1
wrote when-valid in terms of (domonad syntax-validate-m ...)
AlexBaranosky Mar 31, 2012
fc0d87e
renamed to be the report FORM, since it reutrns a thunked form, it do…
AlexBaranosky Mar 31, 2012
565fddf
removed tests of private fn that are covered elsewhere
AlexBaranosky Mar 31, 2012
3fa6a15
cleanups
AlexBaranosky Mar 31, 2012
37ca7c0
renames/cleanups
AlexBaranosky Mar 31, 2012
89dd7b4
cleanup of fakes.clj... reducing the private function load, to reduc…
AlexBaranosky Mar 31, 2012
1e7b369
namespace qualified a keyword
AlexBaranosky Mar 31, 2012
82f06f0
removed unneeded :testable metadata
AlexBaranosky Mar 31, 2012
e9995da
renamed fake key :lhs to :var and inlined private fn
AlexBaranosky Apr 1, 2012
a1c7043
cleanups
AlexBaranosky Apr 1, 2012
7e4f176
renames, which enable removing a small function
AlexBaranosky Apr 1, 2012
4e4f9ed
simplified best-call-action finding code
AlexBaranosky Apr 1, 2012
24293ac
more cleaning renaming and condensing of fakes.clj
AlexBaranosky Apr 1, 2012
b2ab011
missed this rename from last commit
AlexBaranosky Apr 1, 2012
8afef24
more cleanups
AlexBaranosky Apr 1, 2012
a881a95
cleanups
AlexBaranosky Apr 1, 2012
33e5ee1
added failing future-fact around the thunked =streams=> work
AlexBaranosky Apr 1, 2012
d18ea10
upgraded to Kibit 0.0.3
AlexBaranosky Apr 2, 2012
792ba0f
reformatted ns macro calls
AlexBaranosky Apr 3, 2012
8a087d1
use only the monad... no need for when-valid too
AlexBaranosky Apr 4, 2012
9cad336
no longer deconstructing tables twice.
AlexBaranosky Apr 4, 2012
7c11e2f
removed all the squares
AlexBaranosky Apr 4, 2012
93974b8
don't need `;; -*- indent-tabs-mode: nil -*-` any longer!
AlexBaranosky Apr 4, 2012
8639ea3
dropped the syntax- prefix to validation stuff
AlexBaranosky Apr 4, 2012
92654d1
comments; core.match; cleanups
AlexBaranosky Apr 5, 2012
068aff1
simpler `rotations`
AlexBaranosky Apr 5, 2012
cf2f0f1
created `reporting` package for core reporting code and for various a…
AlexBaranosky Apr 9, 2012
db95a49
[Issue #121] added mostly-empty empty namespace for junit xml report …
AlexBaranosky Apr 9, 2012
8e4e78f
cleanups for readability
AlexBaranosky Apr 12, 2012
ef76ec1
Don't need 'is-' prefix on preds
AlexBaranosky Apr 12, 2012
1838ff1
making against-background wrapping code easier to follow
AlexBaranosky Apr 12, 2012
b2fd759
[Issue #121] created report configuration map to use for reporting fa…
AlexBaranosky Apr 13, 2012
cee76cb
Doc-strings are no longer ignored, but are instead reported.
AlexBaranosky Apr 13, 2012
565c6ca
[Issue #121] added a map of formatters
AlexBaranosky Apr 14, 2012
a0ed60c
upgrade to clojure 1.4.0
AlexBaranosky Apr 15, 2012
58c3fee
added clojure 1.5.0-SNAPSHOT to :multi-deps, to test against
AlexBaranosky Apr 15, 2012
d37f75d
added checker combinators: every-checker and some-checker
AlexBaranosky Apr 20, 2012
ad01eb2
Document that all regexps must match in `throws`
marick Apr 20, 2012
09cd7c7
Change names to clarify that chatty-falsehood is of more general scope.
marick Apr 21, 2012
2a37acf
Give the idea of extended-falsehood its own namespace
marick Apr 21, 2012
848cf52
`throws` checker obeys Midje's extended-false?
marick Apr 22, 2012
56089ba
data-laden-falsehoods keep the metadata of the value they are created…
AlexBaranosky Apr 22, 2012
bc645c4
added linter, Eastwood, and used it to mark unused fn args with _'s a…
AlexBaranosky Apr 22, 2012
416a327
fixed this non-backwards compatible fn call
AlexBaranosky Apr 22, 2012
6fee282
marked some unused params with underscores
AlexBaranosky Apr 22, 2012
8ddfba8
removed a couple of reflection warnings that snuck back
AlexBaranosky Apr 22, 2012
208306b
checker combinators work w/ `extended-false?` and thus chatty-checkers
AlexBaranosky Apr 22, 2012
79612e9
lookup fact report fn later, now rebinding formatter works correctly
AlexBaranosky Apr 22, 2012
ebf518a
[Issue #121] removed unnecessary test clutter
AlexBaranosky Apr 22, 2012
fda492d
moved extended-fn? to util ns
AlexBaranosky Apr 23, 2012
9a336d1
cleanup code to validate seqs of forms
AlexBaranosky Apr 23, 2012
1c4025f
can use `lein midje --lazytest` from time to time now
AlexBaranosky Apr 23, 2012
d57e67a
Added lazytest repo
marick Apr 23, 2012
d906f5a
Document how to write checkers (including chatty checkers)
marick Apr 23, 2012
63cc307
and voila! Reporting works once again.
AlexBaranosky Apr 23, 2012
45be94c
[Issue #98] stop thunking the rhs of =streams=>
AlexBaranosky Apr 23, 2012
01d2a02
Merge branch 'master' of github.com:marick/Midje
marick Apr 24, 2012
0af9f25
Bit of generalization (and fix to bad checker)
marick Apr 24, 2012
fbb556e
Issue 94: stack overflow when a prerequisite uses `deref'
marick Apr 24, 2012
6a48173
Test for prerequisites using `deref` was wrong
marick Apr 24, 2012
317c818
Introduce the notion of function references that can be either symbol…
marick Apr 24, 2012
294afe2
Remove (var) references work, except for folded prerequisites.
marick Apr 24, 2012
d493fce
Finished allowing vars as well as symbols to be mocked out.
marick Apr 24, 2012
a6de0a3
Bump version to 1.4.0-SNAPSHOT
marick Apr 25, 2012
621fe08
Issue: #76 fixed by killing core.match in this file.
marick Apr 25, 2012
51a23de
[Issue #76] removed use of core.match
AlexBaranosky Apr 25, 2012
9a3b7c4
Added extended-true?
marick Apr 26, 2012
9c876c8
Moved the combining checkers into their own file.
marick Apr 26, 2012
e789c31
merge
marick Apr 26, 2012
54d7aec
ordered no longer limits us to Clojure 1.3
marick Apr 26, 2012
856d6e4
Short-circuiting every-checker
marick Apr 26, 2012
34be584
Made some-checker short-circuit
marick Apr 26, 2012
2cb4049
chatty-checkers are no longer special
marick Apr 26, 2012
4577c08
Add some tests for actual report output
marick Apr 26, 2012
f774acf
Split file in two; consolidate support code.
marick Apr 26, 2012
322ee9a
`throws` checker should not spew its guts when given non-throwable
marick Apr 26, 2012
b13e23a
Remove stray print statement
marick Apr 26, 2012
0a97d6b
Put the history into the wiki
marick Apr 27, 2012
8b1472b
Issue: #76 Added `metaconstants` macro to predeclare metaconstants.
marick Apr 27, 2012
b9b53c7
Issue: #131 Exclude dependencies on Clojure. Now works with 1.4.
marick Apr 27, 2012
e7de9fc
Issue: #132 Delete examples.
marick Apr 27, 2012
81498d1
Delete what's no pointless.
marick Apr 27, 2012
410c477
1.4.0-beta1 readme
marick Apr 27, 2012
f97b9bb
Bumped to 1.4.0-beta1 and pushed to clojars
marick Apr 27, 2012
3f9010f
use condp instead of lookup in a map
AlexBaranosky Apr 29, 2012
3502023
Revert "use condp instead of lookup in a map" I swear this passed the…
AlexBaranosky Apr 29, 2012
6e01e6f
kept dispatch fn 'open' by using def-many-methods
AlexBaranosky Apr 29, 2012
c255a95
use condp instead of map lookup - attempt 2
AlexBaranosky Apr 29, 2012
6f0b38b
Links to tutorial
marick May 1, 2012
7c43840
Forgot spaces
marick May 1, 2012
0504a50
No more downloads directory
marick May 1, 2012
a4b3be1
Bump to 1.5. Any 1.4 changes will go on 1.4 branch
marick May 1, 2012
ed74a31
Allow t-sweet to run in isolation.
marick May 1, 2012
6133cff
These tests had prerequisites that were never actually used.
marick May 1, 2012
98ac314
Configuration switch to turn on default prerequisites.
marick May 1, 2012
67a363f
Merge branch '1.4'
marick May 1, 2012
748a6f0
Comment out "1.5.0" dependency set until there's something for it to …
marick May 5, 2012
d61bb23
Work around an oddity of (only) Clojure 1.3.
marick May 5, 2012
6bf6c6d
Bump official version to beta-2
marick May 5, 2012
32bd3c7
bump dev version to RC1
marick May 9, 2012
07c9f9a
starting to think through replacement for background
marick May 10, 2012
a87acf1
more fiddling
marick May 11, 2012
607a97b
bump versions in README
marick May 11, 2012
0aef976
Report an error for prerequisites on private fns
gregspurrier Jun 15, 2012
3227f2b
Make the error message more helpful
gregspurrier Jun 15, 2012
9ebfa44
Merge pull request #141 from gregspurrier/master
marick Jun 15, 2012
36f2c4c
Add Greg Spurrier to contributors list
marick Jun 15, 2012
e2d559c
Have `testable-privates` mark interned vars for error checking.
marick Jun 15, 2012
7553b02
Documentation tests for testing privates.
marick Jun 15, 2012
fb7de6b
Wording tweak
marick Jun 15, 2012
c989ddb
Document an inelegant failure to be fixed
marick Jun 15, 2012
5b4469d
Some thoughts about a replacement for background prerequisites.
marick Jun 15, 2012
7283681
Attempt to merge cljs branch w/ current midje
charles-dyfis-net Jul 16, 2012
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions FORMULAS-BACKLOG-AND-FEATURE-IDEAS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@

* [x] improve formula failure reporting
a. [x] report the first failure
b. [x] make sure the fact count only increases once per formula

* [x] make number of generated facts per formula dynamically bindable
a. [x] throw an exception if this value is set < 1

* [x] figure out how to make syntax validation errors show something more sensible than the
error message you'd see for a problem with a fact validation problem

* [x] don't run more tests than need be if there is already failure in this formula's batch.

* [x] syntax validate thata formula only has one check in it
a. [x] need to make this more thorough... right now the only test of this feature checks a
simple provided case, but needs to work with against-background, background and
other more interesting cases
b. [ ] it is more thorough now, but let's make it *seriously* thoough :)

* [x] formula macro calls a (constantly []) version of shrink on failures

* [x] add future-formula (and variant names)

* [x] cleaner syntax for overriding number of trials per formula. Use the
*num-trials* var just for global changes or changes to be visible
for groups of formulas.

* [x] validate that opt-map is only used with valid keys.

* [x] validate that :num-trials is 1+

* [ ] Work with Meikel Brandmeyer to combine ClojureCheck's Generators with Shrink.
implement shrinking. Report only the first fully shrunken failure
[ ] 'shrink' depends on domain of 'generate'

* [ ] ability to override shrink function on a per generator basis
a. [ ] ablity to not shrink at all on a per generator basis (make a nice syntactic
sugar for this... as it is one of the cases of the above.

* [ ] fix strange error if you run (formula [a 1] 1 =>)
... since the formula macro splices in :formula :formula-in-progress
possibly solution is to not using fact macro inside of formula,
but instead do something like tabular


* [ ] if line numbers shift, then ensure that they always report correctly -- so far I
don't know if this even needs to change, since it seems to work fine. Think about
it and decide if tests to prevent regressions are useful here.

* [ ] consider implementing with @marick's metaconstant syntax
a. [ ] if we do metaconstant style, implement generator overriding

* [ ] figure out what part of t-formulas is registering as a lot more than 1 report per formula. (100???)
27 changes: 4 additions & 23 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,9 @@
1.3.2-SNAPSHOT
-------------
* throws now accepts any extending Throwable. For example, this now passes:
(throw (NullPointerException.)) => (throws Exception)
* each item in the right hand side of =streams=> will evaluate lazily:
(provided
(volatile-fn) =streams=> [(throw (Exception.) (throw (Exception.)) :evaluates-succesfully]
* new function midje.sweet/expose-testables will allow you to write facts against
functions defined with the metadata of ^{:testable true} [or ^:testable,
or #^testable depending on which Clojure version you're running]
* Can now have prerequisites that throw Throwables using =throws=>
(provided (foo) =throws=> (Exception.))
* Chatty checkers can destructure their single argument.
* tabular no longer requires variables names to begin with '?'
* throws checker has been updated: args are now any combination, in
any order of messages (or regexes), predicates, or 0 or 1 Throwable classes
* many more common syntax mistakes give helpful error messages
* prevented an infinite loop caused by ill-formed tabular facts
* fact doc-strings now show in report output
i. nested facts show nested doc-strings
ii. tabular's doc-string shows in a similar manner
* =stream=> prerequisites give helpful error messages when they run out of items to return
* removed reflection warnings


1.4.0 (forthcoming)
-------------
See https://github.com/marick/Midje/wiki/New-in-1.4

1.3.1
---------
* Fix mysterious type conversion error in some cases
Expand Down
29 changes: 0 additions & 29 deletions HOW-TO-CONFIGURATION-TEST

This file was deleted.

23 changes: 6 additions & 17 deletions HOW-TO-RELEASE
Original file line number Diff line number Diff line change
@@ -1,33 +1,22 @@
The process for pushing a new version is too complicated and
manual.


* Update HISTORY
* Do the THINGS TO CHECK BEFORE DEPLOYING (below)
* Run configuration tests (HOW-TO-CONFIGURATION-TEST
with midje-version set to a non-snapshot value.
(Note that this uploads.)

* DO NOT CLEAN.
* Use bin/update-project-files and bin/version to set the examples
appropriately. For example:
bin/update-project-files 1.3.0
bin/version 1.3.0 1.2.1 1.2.0
* bin/gather-downloads
* rake fresh
* rake upload

* Update README.md (including version number)
* Commit
* git tag -a -m "message" v.x.x.x ;; git push --tags
* Push to github

* Update example page, if needed.
* Try out downloads.
THINGS TO CHECK BEFORE DEPLOYING:

* `lein multi deps; lein multi midje`

THINGS TO CHECK BEFORE DEPLOYING:
* uncomment the `:warn-on-reflection true` line in project.clj, and run `lein midje`
to check for any reflection warning inadvertently added. (there will be warnings from
libraries we use that we cannot remove)

* Check for any public vars that shouldn't be visible to users. Hide them.
(map str (vals (ns-publics 'midje.sweet)))
(pp)
(pp)
33 changes: 11 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
Available via [clojars](http://clojars.org/search?q=midje)
Current stable version: [midje "1.3.1"]
Development version: [midje "1.3.2-SNAPSHOT"]
Current stable version: [midje "1.4.0"] [Changes from 1.3](https://github.com/marick/Midje/wiki/New-in-1.4)
Development version: [midje "1.5.0-SNAPSHOT"]

[User guide](https://github.com/marick/Midje/wiki)

[User guide](https://github.com/marick/Midje/wiki)
[Tutorial](https://github.com/marick/Midje-quickstart/wiki)

About Midje
=======================
Expand Down Expand Up @@ -46,40 +48,27 @@ that are more useful for testing than `odd?` is.
Learning Midje
=======================

There is a [tutorial introduction](https://github.com/marick/Midje-quickstart/wiki).
Midje's features are described in the **[user
guide](https://github.com/marick/Midje/wiki)**. If
anything there is unclear, ask in the [mailing
list](http://groups.google.com/group/midje).
list](http://groups.google.com/group/midje) or in the #midje
channel on freenode.
If you like videos of people programming, here's an
[8-minute infomercial](http://www.youtube.com/watch?v=a7YtkcIiLGI) that concentrates on transitioning from
clojure.test.
If
you like looking straight at code, [this heavily annotated
example](http://github.com/marick/Midje/blob/master/examples/basic/test/basic/core_test.clj)
has a bunch. If you want to run that example, you
can download it:

1. [Click here](http://github.com/marick/Midje/raw/master/downloads/examples.zip).
2. In a shell, go to the directory your browser unpacked the example into. It should be named `examples`.
3. Go to `examples/basic/`.
4. Type "./run" or "lein test".
5. The facts in `test/*/core_test.clj` will be checked.

You can [download
everything](http://github.com/marick/Midje/downloads) to get
more examples.

Or in the #midje channel on freenode!

Contributors
==============
* Sean T. Allen
* Alex Baranosky
* Phillip Calçado
* Stuart Halloway
* Wilkes Joiner
* Ben Mabey
* Alan Malloy
* Brian Marick
* Bob Martin
* Dmitri Naumov
* Sébastien RoccaSerra
* Wilkes Joiner
* Greg Spurrier
4 changes: 2 additions & 2 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ def jar_name
unless /midje\s+"(\d+\.\d+\.\d+(-RC\d+)?)"/ =~ text ||
/midje\s+"(\d+\.\d+(\.\d+)*-SNAPSHOT)"/ =~ text ||
/midje\s+"(\d+\.\d-alpha\d)"/ =~ text ||
/midje\s+"(\d+\.\d-beta\d)"/ =~ text
puts "Couldn't find version in project file."
/midje\s+"(\d+\.\d\.\d-beta\d)"/ =~ text
puts "Rake task error: couldn't find version in project file."
exit 1
end
jar = "midje-#{$1}.jar"
Expand Down
42 changes: 0 additions & 42 deletions TIDY

This file was deleted.

20 changes: 0 additions & 20 deletions bin/compatibility

This file was deleted.

2 changes: 0 additions & 2 deletions bin/gather-downloads

This file was deleted.

79 changes: 0 additions & 79 deletions bin/run-tests

This file was deleted.

Loading