Class: HTMLRender::RenderTest::Rails::RenderExampleGroup

Inherits:
Spec::Example::ExampleGroup
  • Object
show all
Defined in:
lib/html_render/render_test/rails.rb

Class Method Summary collapse

Class Method Details

.define_example(setup_path, base_path, servers, options) ⇒ Object



148
149
150
151
152
153
154
155
156
157
158
159
160
# File 'lib/html_render/render_test/rails.rb', line 148

def self.define_example(setup_path, base_path, servers, options)
  relative_path = setup_path[(base_path.length + 1)..-10]
  template_path = File.dirname(relative_path)
  test_key = File.basename(relative_path)

  it("should render #{relative_path} properly") do
    test_case = Common::create_test_case_from_path(relative_path, options.merge(:test_prefix => base_path))
    result = test_case.run(servers)
    result.details.each do |server, detail|
      detail.pass?.should == true
    end
  end
end

.define_examples(base_path, options) ⇒ Object



162
163
164
165
166
167
168
169
170
171
172
# File 'lib/html_render/render_test/rails.rb', line 162

def self.define_examples(base_path, options)
  servers = options.delete(:servers)

  if !servers || !servers.is_a?(Hash)
    raise ArgumentError.new("options[:servers] must be a hash of :unique_identifier => \"http://path.to.server/which/renders/pngs\"")
  end

  paths = Dir.glob(File.join(base_path, '**', 'setup.rb')).sort.each do |setup_path|
    define_example(setup_path, base_path, servers, options)
  end
end