]> git.openstreetmap.org Git - rails.git/blobdiff - vendor/gems/rspec-1.1.2/lib/spec/story/world.rb
Removing rspec from svn, as it isn't being used.
[rails.git] / vendor / gems / rspec-1.1.2 / lib / spec / story / world.rb
diff --git a/vendor/gems/rspec-1.1.2/lib/spec/story/world.rb b/vendor/gems/rspec-1.1.2/lib/spec/story/world.rb
deleted file mode 100644 (file)
index 6296537..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-require 'rubygems'
-require 'spec/expectations'
-require 'spec/matchers'
-require 'spec/example/pending'
-
-module Spec
-  module Story
-=begin
-  A World represents the actual instance a scenario will run in.
-  
-  The runner ensures any instance variables and methods defined anywhere
-  in a story block are available to all the scenarios. This includes
-  variables that are created or referenced inside Given, When and Then
-  blocks.
-=end
-    module World
-      include ::Spec::Example::Pending
-      include ::Spec::Matchers
-      # store steps and listeners in the singleton metaclass.
-      # This serves both to keep them out of the way of runtime Worlds
-      # and to make them available to all instances.
-      class << self
-        def create(cls = Object, *args)
-          cls.new(*args).extend(World)
-        end
-        
-        def listeners
-          @listeners ||= []
-        end
-        
-        def add_listener(listener)
-          listeners() << listener
-        end
-        
-        def step_mother
-          @step_mother ||= StepMother.new
-        end
-                
-        def use(steps)
-          step_mother.use(steps)
-        end
-        
-        def step_names
-          @step_names ||= []
-        end
-
-        def run_given_scenario_with_suspended_listeners(world, type, name, scenario)
-          current_listeners = Array.new(listeners)
-          begin
-            listeners.each { |l| l.found_scenario(type, name) }
-            @listeners.clear
-            scenario.perform(world, name) unless ::Spec::Story::Runner.dry_run
-          ensure
-            @listeners.replace(current_listeners)
-          end
-        end
-        
-        def store_and_call(world, type, name, *args, &block)
-          if block_given?
-            step_mother.store(type, Step.new(name, &block))
-          end
-          step = step_mother.find(type, name)
-
-          step_name = step.name
-          step_names << step_name
-          
-          # It's important to have access to the parsed args here, so
-          # we can give them to the listeners. The HTML reporter needs
-          # the args so it can style them. See the generated output in
-          # story_server/prototype/rspec_stories.html (generated by rake stories)
-          args = step.parse_args(name) if args.empty?
-          begin
-            step.perform(world, *args) unless ::Spec::Story::Runner.dry_run
-            listeners.each { |l| l.step_succeeded(type, step_name, *args) }
-          rescue Exception => e
-            case e
-            when Spec::Example::ExamplePendingError
-              @listeners.each { |l| l.step_pending(type, step_name, *args) }
-            else
-              @listeners.each { |l| l.step_failed(type, step_name, *args) }
-            end
-            errors << e
-          end
-        end
-        
-        def errors
-          @errors ||= []
-        end
-      end # end of class << self
-      
-      def start_collecting_errors
-        errors.clear
-      end
-      
-      def errors
-        World.errors
-      end
-      
-      def GivenScenario(name)
-        World.run_given_scenario_with_suspended_listeners(self, :'given scenario', name, GivenScenario.new(name))
-        @__previous_step = :given
-      end
-      
-      def Given(name, *args, &block)
-        World.store_and_call self, :given, name, *args, &block
-        @__previous_step = :given
-      end
-      
-      def When(name, *args, &block)
-        World.store_and_call self, :when, name, *args, &block
-        @__previous_step = :when
-      end
-      
-      def Then(name, *args, &block)
-        World.store_and_call self, :then, name, *args, &block
-        @__previous_step = :then
-      end
-      
-      def And(name, *args, &block)
-        World.store_and_call self, @__previous_step, name, *args, &block
-      end
-    end
-  end
-end