adamh-html_render 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -49,6 +49,12 @@ are acceptable and which indicate a bug in the HTML (or, more commonly, a bug
49
49
  in the browser which the HTML must work around). The engineering of such a
50
50
  workflow is beyond the scope of this project.
51
51
 
52
+ == Rails Integration
53
+
54
+ html_render is designed for easy integration with Rails. Visit
55
+ http://adamhooper.com/eng/articles/4 for instructions on setting up an
56
+ HTML-rendering component to your automated Rails test suite.
57
+
52
58
  == Dependencies
53
59
 
54
60
  - httpclient >=2.1.4
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'rake'
3
3
  require 'echoe'
4
4
 
5
- Echoe.new('html_render', '0.0.3') do |p|
5
+ Echoe.new('html_render', '0.0.4') do |p|
6
6
  p.description = 'Make images from HTML strings'
7
7
  p.url = 'http://adamhooper.com/eng'
8
8
  p.author = 'Adam Hooper'
data/html_render.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{html_render}
5
- s.version = "0.0.3"
5
+ s.version = "0.0.4"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Adam Hooper"]
9
- s.date = %q{2009-04-16}
9
+ s.date = %q{2009-04-21}
10
10
  s.description = %q{Make images from HTML strings}
11
11
  s.email = %q{adam@adamhooper.com}
12
12
  s.extra_rdoc_files = ["README.rdoc", "lib/html_render.rb", "lib/html_render/render_batches.rb", "lib/html_render/renderers.rb", "lib/html_render/images.rb", "lib/html_render/render_test.rb", "lib/html_render/render_test/rails.rb"]
@@ -53,6 +53,7 @@ module HTMLRender::RenderTest::Rails
53
53
  <html xmlns='http://www.w3.org/1999/xhtml'>
54
54
  <head>
55
55
  <title>Test</title>
56
+ <meta name="Content-type" content="text/html; charset=utf-8" />
56
57
  <style type="text/css">
57
58
  #{css}
58
59
  </style>
@@ -86,7 +87,9 @@ module HTMLRender::RenderTest::Rails
86
87
  end
87
88
 
88
89
  def view
89
- ActionView::Base.new(ActionController::Base.view_paths, assigns, controller)
90
+ returning(ActionView::Base.new(ActionController::Base.view_paths, assigns, controller)) do |view|
91
+ view.helpers.send(:include, view.controller.master_helper_module)
92
+ end
90
93
  end
91
94
 
92
95
  def write_html_to_run_directory
@@ -7,18 +7,34 @@ module HTMLRender::RenderTest
7
7
  class Result
8
8
  # The portion of a result specific to an individual server
9
9
  class ServerResult
10
- attr_reader :server, :expected, :actual
10
+ attr_reader :server, :expected_path, :actual_path
11
11
 
12
12
  # Initializes the ServerResult.
13
13
  #
14
14
  # Params:
15
15
  # server: name of the server
16
- # expected: Image we expected
17
- # actual: Image we got
18
- def initialize(server, expected, actual)
16
+ # expected_path: Path to image we expected
17
+ # actual_path: Path to image we got
18
+ def initialize(server, expected_path, actual_path)
19
19
  @server = server
20
- @expected = expected
21
- @actual = actual
20
+ @expected_path = expected_path
21
+ @actual_path = actual_path
22
+ end
23
+
24
+ def expected
25
+ @expected ||= if expected_path
26
+ File.open(expected_path) do |f|
27
+ HTMLRender::Images::PNGImage.new(f.read)
28
+ end
29
+ end
30
+ end
31
+
32
+ def actual
33
+ @actual ||= if actual_path
34
+ File.open(actual_path) do |f|
35
+ HTMLRender::Images::PNGImage.new(f.read)
36
+ end
37
+ end
22
38
  end
23
39
 
24
40
  def pass?
@@ -71,37 +87,13 @@ module HTMLRender::RenderTest
71
87
  @details_for ||= {}
72
88
  @details_for[server] ||= ServerResult.new(
73
89
  server,
74
- expected_png_for(server),
75
- actual_png_for(server)
90
+ filename_of_expected_png_for(server),
91
+ filename_of_actual_png_for(server)
76
92
  )
77
93
  end
78
94
 
79
95
  private
80
96
 
81
- # Returns the PNG we actually got for the given server name
82
- def actual_png_for(server)
83
- @actual_png_for ||= {}
84
- @actual_png_for[server] ||= begin
85
- filename = filename_of_actual_png_for(server)
86
- File.open(filename) do |f|
87
- HTMLRender::Images::PNGImage.new(f.read)
88
- end
89
- end
90
- end
91
-
92
- # Returns the PNG expected of the given server name, or nil
93
- def expected_png_for(server)
94
- @expected_png_for ||= {}
95
- @expected_png_for[server] ||= begin
96
- filename = filename_of_expected_png_for(server)
97
- if filename
98
- File.open(filename) do |f|
99
- HTMLRender::Images::PNGImage.new(f.read)
100
- end
101
- end
102
- end
103
- end
104
-
105
97
  def filename_of_actual_png_for(server)
106
98
  # Assume it exists--otherwise, "servers" wouldn't return it
107
99
  File.join(path, "#{server}.png")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adamh-html_render
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Hooper
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-04-16 00:00:00 -07:00
12
+ date: 2009-04-21 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency