Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
When all you need is #assert
Ruby
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib Provide proper exit status
test Prevent autorun in own tests
.gitignore Update examples file
LICENSE
Manifest
README.md Update README
Rakefile Provide proper exit status with rake test:all
examples.rb
gem.watchr Initial commit
markdown.watchr
nanotest.gemspec Update gemspec
specs.watchr Line number is 0-padded so messages align

README.md

"Frustra fit per plura quod potest fieri per pauciora." --William of Ockham
"It is futile to do with more things that which can be done with fewer."

Summary

Extremely minimal test framework. Perfect for DIY lovers. Nanotest provides the bare minimum needed; for everything else, there's ruby.

Install

gem install nanotest

Examples

require 'nanotest'
include  Nanotest

assert {     1 == 1 }
assert {     2  > 1 }
assert { not 1  > 2 }
assert {     1 == 2 } #line 12

outputs:

...F
(examples.rb:012) assertion failed

See actual use at http://github.com/mynyml/phocus/blob/master/test/test_phocus.rb

API

Nanotest has a single method: #assert. You can either include Nanotest as above, or use its method directly: Nanotest.assert { true }. Its block is expected to return a boolean. If it's false it fails, otherwise it passes. Simple as that.

#assert also accepts a custom failure message:

assert("foo is too small") { @foo > 5 } #line 36
#=> (examples.rb:036) foo is too small

That's pretty much it. Maximum Simplicity. If you insist on doing something fancy, check out the wiki for a few tips and tricks.

Stats

$ rake -s loc
lib contains 17 SLOCs

See Also

Links

Something went wrong with that request. Please try again.