Micronaut
- Codes - http://github.com/spicycode/micronaut
- Examples - http://runcoderun.com/spicycode/micronaut
- Rails - http://github.com/spicycode/micronaut-rails
DESCRIPTION:
Micronaut is a light-weight BDD test framework.
FEATURES:
-
API compatible with RSpec (of course)
-
Slim and light, designed to be readable, compact, and fast. Just over ~1600 LOC in /lib at last count.
-
Each example has its own metadata, and you can add filters or modules to run/disable/enhance examples based on that metadata at run time
-
A Real-world example of the power the metadata gives you:
-
"Focused examples". Never drop out of Autotest again - just focus on the example(s) and ignore the rest:
Micronaut.configure do |c| # in your example_helper c.filter_run :focused => true end describe Foo do it "this example will run", :focused => true do end # equivalent to: focused "so will this one (this is an alias for :focused => true)" do end it "this example will not run, until the focused ones are removed" do end end
-
Add your own metadata options and customize Micronaut to your hearts content (pending specs are implemented as ':pending => true' metadata, for example)
-
Designed to be formatter compatible with RSpec (though this needs some real-world testing)
-
Rake task for simple setup
require 'rubygems' require 'micronaut/rake_task'
desc "Run all micronaut examples" Micronaut::RakeTask.new :examples do |t| t.pattern = "examples/**/*_example.rb" end
desc "Run all micronaut examples using rcov" Micronaut::RakeTask.new :coverage do |t| t.pattern = "examples/**/_example.rb" t.rcov = true t.rcov_opts = "--exclude "examples/,gems/,db/,/Library/Ruby/,config/" --text-summary --sort coverage --no-validator-links" end
REQUIREMENTS:
- Ruby 1.8.6+
CREDITS:
- Mini/Unit for the great ideas and runner
- RSpec for the great ideas, matchers, expectations and formatter ideas
- Matchers are licensed under the MIT license, per RSpec (see RSPEC-LICENSE)