Skip to content
This repository has been archived by the owner on Oct 27, 2021. It is now read-only.

Commit

Permalink
add example of formatter that filters based on options passed to
Browse files Browse the repository at this point in the history
describe() and it() methods.
  • Loading branch information
dchelimsky committed Feb 2, 2009
1 parent 5950c7b commit 07067fa
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 0 deletions.
18 changes: 18 additions & 0 deletions examples/passing/filtered_formatter.rb
@@ -0,0 +1,18 @@
$:.unshift File.join(File.dirname(__FILE__), "/../../lib")
require 'spec/runner/formatter/nested_text_formatter'

class FilteredFormatter < Spec::Runner::Formatter::NestedTextFormatter
def add_example_group(example_group)
if example_group.options[:show] == false
@showing = false
else
@showing = true
puts example_group.description
end
end

def example_passed(example)
puts " " << example.description if @showing unless example.options[:show] == false
end
end

31 changes: 31 additions & 0 deletions examples/passing/filtered_formatter_example.rb
@@ -0,0 +1,31 @@
# This demonstrates how you can write custom formatters to handle arbitrary
# options passed to the +describe+ and +it+ methods. To see it in action, stand
# in the project root and say:
#
# bin/spec -r examples/passing/filtered_formatter.rb examples/passing/filtered_formatter_example.rb -f FilteredFormatter
#
# You should only see the examples and groups below that are not explicitly
# marked :show => false
#
# group 1
# example 1 a
# group 3
# example 3


describe "group 1", :show => true do
it "example 1 a", :show => true do
end
it "example 1 b", :show => false do
end
end

describe "group 2", :show => false do
it "example 2" do
end
end

describe "group 3" do
it "example 3" do
end
end

0 comments on commit 07067fa

Please sign in to comment.