public
Description: The latest and greatest wheel to be invented yet
Homepage:
Clone URL: git://github.com/spicycode/micronaut.git
spicycode (author)
Mon Feb 09 04:44:07 -0800 2009
commit  fae24e8a48724789933d4d1975427a147b6953f4
tree    8b75ba0835b747fd3d97eed544e8eb1710c1c1eb
parent  811a7f247a1aae4a92bb3d5e913a0d52420e6e95
README.markdown

Micronaut

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)