Skip to content

A small DSL to convert free text into pending specs.

License

Notifications You must be signed in to change notification settings

alainravet/todo_next

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Goal::Tdd

A small DSL that converts free text into pending tests/specs.

Installation

Add this line to your application's Gemfile:

gem 'todo_next'

And then execute:

$ bundle

Usage

Create a first spec with a todo_next skeleton:

$ cd <project>
$ todo_next stack
    # => <project>/spec/stack_spec.rb was created.
$ cat spec/stack_spec.rb
    # =>
    require 'rubygems'
    require 'rspec'
    require 'todo_next'

    todo_next(<<TEXT)
		A Foobar
		  √ is white by default
		    ex: puts Foobar.new.colour  # => 'white'
		  * can be resized
		    example:
		      foobar.resize!(+10, -2)
		  - can be reset
		  truthiness()
		    is always true
		    is never false
		  (add more tests)
    TEXT

		# √ == passed   => same as a comment line
		# * == current  => leading char - '*' - is kept
    # example blocks (ex:, example:) are ignored, like comments.

    #describe "<what you're testing>" do
    #  specify 'this should happen' do
    #    .. some code
    #  end

This text is equivalent to :

		describe "A Foobar" do
		  it '* can be resized'
		  it 'can be reset'
		  describe 'truthiness()' do
		    it 'is always true'
		    it 'is never false'
		  end
		  it '(add more tests)'
		end

screenshot1 screenshot1

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Code Climate

About

A small DSL to convert free text into pending specs.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages