Home

RubySpec is a project to write a complete, executable specification for the Ruby programming language.

The project began as part of Rubinius (now sponsored by Engine Yard) and most of the work was done by contributors to Rubinius, with significant contribution by JRuby collaborators. Engine Yard has provided extensive financial support for this project, employing Evan Phoenix since June 2007 and several more full-time developers since January 2008. See History for more details of the project's timeline.

Our goal is official recognition and support from all the organizations currently involved in Ruby implementations. These include MatzRuby (including YARV), JRuby, IronRuby, MacRuby, Ruby.NET, MagLev. If you are a contributor to or sponsor of one of these projects, or another Ruby implementation project, please help us make RubySpecs the gold standard for Ruby and an example for other language implementations.

There are two main components to this project:

  1. the RubySpec sources
  2. the MSpec framework

The source for both are hosted at Github while the documentation and tickets are hosted here.

This project has a free-flowing commit bit policy. If you have had a patch accepted by any current Ruby implementation project, you can get a commit bit by referencing your patch. Anyone who submits an accepted patch to this project will also receive a commit bit. The only requirement is that you have a Github account.

RubySpec

MSpec

Latest news

mspec: Version 1.5.10 released
Adds guard reporting.
Added by Brian Ford 344 days ago

mspec: Version 1.5.9 released
Bug fix release for not_supported_on guard
Added by Brian Ford 363 days ago

mspec: Version 1.5.8 released
Fixes for implementation guards
Added by Brian Ford 363 days ago

rubyspec: Version 0.7.4 released
Requires MSpec v1.5.9.
Added by Brian Ford 363 days ago

rubyspec: Version 0.7.3 released
Fixes implementation guard usage in the specs.
Added by Brian Ford 363 days ago

View all news

Latest projects

  • rubyspec (05/05/2008 10:48 AM)

    RubySpec is a community-driven project to create an executable specification (RSpec compatible) for the Ruby programming language, core libraries and standard libraries.

  • mspec (05/05/2008 09:37 AM)

    MSpec is a specialized framework that is syntax-compatible with RSpec for basic things like describe, it blocks and before, after actions.

    MSpec contains additional features that assist in writing the RubySpecs used by multiple Ruby implementations. Also, MSpec attempts to use the simplest Ruby language features so that beginning Ruby implementations can run it.