Updated to latest rspec
[gitorious:georgyos-clone.git] / vendor / plugins / rspec-rails / lib / spec / rails / example.rb
1 dir = File.dirname(__FILE__)
2
3 require 'spec/rails/example/assigns_hash_proxy'
4
5 require "spec/rails/example/render_observer"
6 require "spec/rails/example/rails_example_group"
7 require "spec/rails/example/model_example_group"
8 require "spec/rails/example/functional_example_group"
9 require "spec/rails/example/controller_example_group"
10 require "spec/rails/example/helper_example_group"
11 require "spec/rails/example/view_example_group"
12
13 module Spec
14   module Rails
15     # Spec::Rails::Example extends Spec::Example (RSpec's core Example module) to provide
16     # Rails-specific contexts for describing Rails Models, Views, Controllers and Helpers.
17     #
18     # == Model Examples
19     #
20     # These are the equivalent of unit tests in Rails' built in testing. Ironically (for the traditional TDD'er) these are the only specs that we feel should actually interact with the database.
21     #
22     # See Spec::Rails::Example::ModelExampleGroup
23     #
24     # == Controller Examples
25     #
26     # These align somewhat with functional tests in rails, except that they do not actually render views (though you can force rendering of views if you prefer). Instead of setting expectations about what goes on a page, you set expectations about what templates get rendered.
27     #
28     # See Spec::Rails::Example::ControllerExampleGroup
29     #
30     # == View Examples
31     #
32     # This is the other half of Rails functional testing. View specs allow you to set up assigns and render
33     # a template. By assigning mock model data, you can specify view behaviour with no dependency on a database
34     # or your real models.
35     #
36     # See Spec::Rails::Example::ViewExampleGroup
37     #
38     # == Helper Examples
39     #
40     # These let you specify directly methods that live in your helpers.
41     #
42     # See Spec::Rails::Example::HelperExampleGroup
43     module Example
44     end
45   end
46 end