ojo 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +16 -0
- data/.ruby-version +1 -0
- data/.travis.yml +3 -0
- data/Gemfile +14 -0
- data/LICENSE.txt +22 -0
- data/README.md +106 -0
- data/Rakefile +19 -0
- data/lib/ojo/comparison.rb +88 -0
- data/lib/ojo/locations.rb +26 -0
- data/lib/ojo/output.rb +90 -0
- data/lib/ojo/rails/engine.rb +6 -0
- data/lib/ojo/screenshot.rb +21 -0
- data/lib/ojo/version.rb +3 -0
- data/lib/ojo.rb +13 -0
- data/lib/tasks/ojo.rake +59 -0
- data/ojo.gemspec +28 -0
- data/test/page_objects/test_app/index_page.rb +8 -0
- data/test/page_objects/test_app/test_app_page.rb +6 -0
- data/test/page_objects.rb +13 -0
- data/test/phantom/browser_test.rb +9 -0
- data/test/phantom_test_helper.rb +67 -0
- data/test/test_app/Gemfile +9 -0
- data/test/test_app/Gemfile.lock +100 -0
- data/test/test_app/app/controllers/application_controller.rb +2 -0
- data/test/test_app/app/controllers/local_controller.rb +7 -0
- data/test/test_app/app/views/layouts/local.html.erb +14 -0
- data/test/test_app/app/views/local/index.html.erb +1 -0
- data/test/test_app/config/database.yml +10 -0
- data/test/test_app/config/initializers/ojo_initializer.rb +1 -0
- data/test/test_app/config/routes.rb +4 -0
- data/test/test_app/config.ru +31 -0
- data/test/test_app/log/development.log +260 -0
- data/test/test_app/log/test.log +2762 -0
- data/test/test_app/ojo_development +0 -0
- data/test/test_app/test_app.rb +30 -0
- data/test/test_helper.rb +59 -0
- data/test/unit/comparison_test.rb +185 -0
- data/test/unit/config_test.rb +9 -0
- data/test/unit/files_test.rb +31 -0
- data/test/unit/output_test.rb +38 -0
- metadata +164 -0
File without changes
|
@@ -0,0 +1,30 @@
|
|
1
|
+
db_name = "ojo_#{Rails.env}"
|
2
|
+
|
3
|
+
`mysql -uroot -e "DROP DATABASE IF EXISTS #{db_name}; CREATE DATABASE IF NOT EXISTS #{db_name};"`
|
4
|
+
|
5
|
+
log_file = File.expand_path(File.join(__FILE__, '..', 'log', '*'))
|
6
|
+
# `rm -rf #{log_file}`
|
7
|
+
|
8
|
+
module OjoApp
|
9
|
+
class Application < Rails::Application
|
10
|
+
config.root = File.expand_path(File.join(__FILE__, '..', '..', 'test_app'))
|
11
|
+
config.eager_load = true
|
12
|
+
config.cache_classes = true
|
13
|
+
config.active_support.deprecation = :stderr
|
14
|
+
|
15
|
+
# Enable the asset pipeline
|
16
|
+
config.assets.enabled = true
|
17
|
+
|
18
|
+
# Configure static asset server for tests with Cache-Control for performance
|
19
|
+
config.serve_static_assets = true
|
20
|
+
config.static_cache_control = "public, max-age=3600"
|
21
|
+
|
22
|
+
# Configure cookies
|
23
|
+
config.secret_token = (('a'..'z').to_a * 2).join
|
24
|
+
config.session_store :cookie_store
|
25
|
+
|
26
|
+
I18n.enforce_available_locales = false
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
OjoApp::Application.initialize!
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler'
|
3
|
+
|
4
|
+
begin
|
5
|
+
Bundler.setup(:default, :development)
|
6
|
+
rescue Bundler::BundlerError => e
|
7
|
+
$stderr.puts e.message
|
8
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
9
|
+
exit e.status_code
|
10
|
+
end
|
11
|
+
|
12
|
+
ENV['RAILS_ENV'] = 'test'
|
13
|
+
|
14
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
15
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '.'))
|
16
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..'))
|
17
|
+
|
18
|
+
require 'awesome_print'
|
19
|
+
|
20
|
+
require 'minitest/autorun'
|
21
|
+
require 'minitest/reporters'
|
22
|
+
require 'mocha/mini_test'
|
23
|
+
|
24
|
+
Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
|
25
|
+
|
26
|
+
require 'open4'
|
27
|
+
|
28
|
+
require File.expand_path('../../lib/ojo', __FILE__)
|
29
|
+
|
30
|
+
module Ojo
|
31
|
+
class OjoTestCase < Minitest::Test
|
32
|
+
|
33
|
+
private
|
34
|
+
|
35
|
+
def generate_image_with_shapes(image_destination, size_of_image, shapes = [])
|
36
|
+
shapes_string = ''
|
37
|
+
shapes.each do |shape|
|
38
|
+
if shape.include? 'fill'
|
39
|
+
shapes_string += " #{shape}"
|
40
|
+
else
|
41
|
+
shapes_string += " -draw '#{shape}'"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
im = "convert -size #{size_of_image} xc:white -fill white -stroke red #{shapes_string} #{image_destination}"
|
46
|
+
|
47
|
+
#puts "\nim: #{im}"
|
48
|
+
|
49
|
+
err = nil
|
50
|
+
status = Open4::popen4(im) do |pid, stdin, stdout, stderr|
|
51
|
+
err = stderr.read
|
52
|
+
end
|
53
|
+
|
54
|
+
raise "generate image: #{err}" unless status.success?
|
55
|
+
end
|
56
|
+
|
57
|
+
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,185 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class ComparisonTest < Ojo::OjoTestCase
|
4
|
+
require 'fileutils'
|
5
|
+
|
6
|
+
def setup
|
7
|
+
create_location_directories
|
8
|
+
Collimator::ProgressBar.stubs(:put_current_progress)
|
9
|
+
Collimator::ProgressBar.stubs(:complete)
|
10
|
+
end
|
11
|
+
|
12
|
+
def teardown
|
13
|
+
remove_location_directories
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_comparison__single_file__same
|
17
|
+
# for reference, draw parameters look like this for rectangle
|
18
|
+
# rectangle x0,y0 x1,y1
|
19
|
+
|
20
|
+
shapes = []
|
21
|
+
shapes << "rectangle 20,0 190,190"
|
22
|
+
shapes << "rectangle 30,10 100,60"
|
23
|
+
|
24
|
+
file_1 = File.join(@branch_1, 'test_one.png')
|
25
|
+
generate_image_with_shapes(file_1, '200x200', shapes)
|
26
|
+
assert File.exist?(file_1)
|
27
|
+
|
28
|
+
file_2 = File.join(@branch_2, 'test_one.png')
|
29
|
+
generate_image_with_shapes(file_2, '200x200', shapes)
|
30
|
+
assert File.exist?(file_2)
|
31
|
+
|
32
|
+
r = Ojo.compare('branch_1', 'branch_2')
|
33
|
+
|
34
|
+
assert r[0], 'the all_pass status'
|
35
|
+
assert_equal @location, r[1][:location]
|
36
|
+
assert_equal 'branch_1', r[1][:branch_1]
|
37
|
+
assert_equal 'branch_2', r[1][:branch_2]
|
38
|
+
assert_equal 1, r[1][:results].keys.count
|
39
|
+
assert_equal File.basename(file_1), r[1][:results].keys.first
|
40
|
+
assert_equal true, r[1][:results]['test_one.png'][:same]
|
41
|
+
assert_equal file_1, r[1][:results]['test_one.png'][:file_1]
|
42
|
+
assert_equal file_2, r[1][:results]['test_one.png'][:file_2]
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_comparison__single_file__different
|
47
|
+
# for reference, draw parameters look like this for rectangle
|
48
|
+
# rectangle x0,y0 x1,y1
|
49
|
+
|
50
|
+
shapes = []
|
51
|
+
shapes << "rectangle 20,0 190,190"
|
52
|
+
shapes << "rectangle 30,10 100,60"
|
53
|
+
|
54
|
+
file_1 = File.join(@branch_1, 'test_one.png')
|
55
|
+
generate_image_with_shapes(file_1, '200x200', shapes)
|
56
|
+
assert File.exist?(file_1)
|
57
|
+
|
58
|
+
shapes.pop
|
59
|
+
shapes << "rectangle 120,100 150,160"
|
60
|
+
|
61
|
+
file_2 = File.join(@branch_2, 'test_one.png')
|
62
|
+
generate_image_with_shapes(file_2, '200x200', shapes)
|
63
|
+
assert File.exist?(file_2)
|
64
|
+
|
65
|
+
r = Ojo.compare('branch_1', 'branch_2')
|
66
|
+
|
67
|
+
refute r[0], 'the all_pass status'
|
68
|
+
assert_equal @location, r[1][:location]
|
69
|
+
assert_equal 'branch_1', r[1][:branch_1]
|
70
|
+
assert_equal 'branch_2', r[1][:branch_2]
|
71
|
+
assert_equal 1, r[1][:results].keys.count
|
72
|
+
assert_equal File.basename(file_1), r[1][:results].keys.first
|
73
|
+
assert_equal false, r[1][:results]['test_one.png'][:same]
|
74
|
+
assert_equal file_1, r[1][:results]['test_one.png'][:file_1]
|
75
|
+
assert_equal file_2, r[1][:results]['test_one.png'][:file_2]
|
76
|
+
end
|
77
|
+
|
78
|
+
def test_comparison__single_file__different_size
|
79
|
+
# for reference, draw parameters look like this for rectangle
|
80
|
+
# rectangle x0,y0 x1,y1
|
81
|
+
|
82
|
+
shapes = []
|
83
|
+
shapes << "rectangle 20,0 190,190"
|
84
|
+
shapes << "rectangle 30,10 100,60"
|
85
|
+
|
86
|
+
file_1 = File.join(@branch_1, 'test_one.png')
|
87
|
+
generate_image_with_shapes(file_1, '200x200', shapes)
|
88
|
+
assert File.exist?(file_1)
|
89
|
+
|
90
|
+
file_2 = File.join(@branch_2, 'test_one.png')
|
91
|
+
generate_image_with_shapes(file_2, '200x210', shapes)
|
92
|
+
assert File.exist?(file_2)
|
93
|
+
|
94
|
+
r = Ojo.compare('branch_1', 'branch_2')
|
95
|
+
|
96
|
+
refute r[0], 'the all_pass status'
|
97
|
+
assert_equal @location, r[1][:location]
|
98
|
+
assert_equal 'branch_1', r[1][:branch_1]
|
99
|
+
assert_equal 'branch_2', r[1][:branch_2]
|
100
|
+
assert_equal 1, r[1][:results].keys.count
|
101
|
+
assert_equal File.basename(file_1), r[1][:results].keys.first
|
102
|
+
assert_equal false, r[1][:results]['test_one.png'][:same]
|
103
|
+
assert_equal file_1, r[1][:results]['test_one.png'][:file_1]
|
104
|
+
assert_equal file_2, r[1][:results]['test_one.png'][:file_2]
|
105
|
+
end
|
106
|
+
|
107
|
+
def test_comparison__multiple_files
|
108
|
+
shapes = []
|
109
|
+
shapes << "rectangle 20,0 190,190"
|
110
|
+
shapes << "rectangle 30,10 100,60"
|
111
|
+
|
112
|
+
file_1_1 = File.join(@branch_1, 'file_one.png')
|
113
|
+
file_2_1 = File.join(@branch_2, 'file_one.png')
|
114
|
+
generate_image_with_shapes(file_1_1, '200x200', shapes)
|
115
|
+
generate_image_with_shapes(file_2_1, '200x200', shapes)
|
116
|
+
|
117
|
+
shapes.pop
|
118
|
+
shapes << "rectangle 120,100 150,160"
|
119
|
+
file_1_2 = File.join(@branch_1, 'file_two.png')
|
120
|
+
generate_image_with_shapes(file_1_2, '220x220', shapes)
|
121
|
+
|
122
|
+
shapes << "rectangle 120,100 150,160"
|
123
|
+
file_2_3 = File.join(@branch_2, 'file_three.png')
|
124
|
+
generate_image_with_shapes(file_2_3, '200x220', shapes)
|
125
|
+
|
126
|
+
r = Ojo.compare('branch_1', 'branch_2')
|
127
|
+
|
128
|
+
assert r[0], 'the all_pass status'
|
129
|
+
assert_equal @location, r[1][:location]
|
130
|
+
assert_equal 'branch_1', r[1][:branch_1]
|
131
|
+
assert_equal 'branch_2', r[1][:branch_2]
|
132
|
+
assert_equal 3, r[1][:results].keys.count
|
133
|
+
|
134
|
+
file_1_4 = File.join(@branch_1, 'file_four.png')
|
135
|
+
file_2_4 = File.join(@branch_2, 'file_four.png')
|
136
|
+
generate_image_with_shapes(file_1_4, '50x50', ["rectangle 22,12 24,14"])
|
137
|
+
generate_image_with_shapes(file_2_4, '50x50', ["rectangle 20,10 22,12"])
|
138
|
+
|
139
|
+
r = Ojo.compare('branch_1', 'branch_2')
|
140
|
+
|
141
|
+
refute r[0], 'the all_pass status'
|
142
|
+
assert_equal @location, r[1][:location]
|
143
|
+
assert_equal 'branch_1', r[1][:branch_1]
|
144
|
+
assert_equal 'branch_2', r[1][:branch_2]
|
145
|
+
assert_equal 4, r[1][:results].keys.count
|
146
|
+
|
147
|
+
assert r[1][:results].keys.include?(File.basename(file_1_1))
|
148
|
+
assert r[1][:results].keys.include?(File.basename(file_1_2))
|
149
|
+
assert r[1][:results].keys.include?(File.basename(file_2_1))
|
150
|
+
assert r[1][:results].keys.include?(File.basename(file_2_3))
|
151
|
+
assert r[1][:results].keys.include?(File.basename(file_1_4))
|
152
|
+
assert r[1][:results].keys.include?(File.basename(file_2_4))
|
153
|
+
|
154
|
+
assert_equal true, r[1][:results][File.basename(file_1_1)][:same]
|
155
|
+
assert_equal nil, r[1][:results][File.basename(file_1_2)][:same]
|
156
|
+
assert_equal nil, r[1][:results][File.basename(file_2_3)][:same]
|
157
|
+
assert_equal false, r[1][:results][File.basename(file_1_4)][:same]
|
158
|
+
|
159
|
+
diff_location = File.join(Ojo.location, 'diff')
|
160
|
+
assert_equal 1, Dir[File.join(diff_location, '*.png')].count
|
161
|
+
refute File.exist?(File.join(diff_location, File.basename(file_1_1)))
|
162
|
+
refute File.exist?(File.join(diff_location, File.basename(file_1_2)))
|
163
|
+
refute File.exist?(File.join(diff_location, File.basename(file_2_3)))
|
164
|
+
assert File.exist?(File.join(diff_location, File.basename(file_1_4)))
|
165
|
+
end
|
166
|
+
|
167
|
+
private
|
168
|
+
|
169
|
+
def create_location_directories
|
170
|
+
@location = File.expand_path('../../tmp')
|
171
|
+
@branch_1 = File.join(@location, 'branch_1')
|
172
|
+
@branch_2 = File.join(@location, 'branch_2')
|
173
|
+
|
174
|
+
FileUtils.mkdir_p(@branch_1)
|
175
|
+
FileUtils.mkdir_p(@branch_2)
|
176
|
+
|
177
|
+
Ojo.location = @location
|
178
|
+
end
|
179
|
+
|
180
|
+
def remove_location_directories
|
181
|
+
FileUtils.rm_rf(@branch_1)
|
182
|
+
FileUtils.rm_rf(@branch_2)
|
183
|
+
FileUtils.rm_rf(File.join(@location, 'diff'))
|
184
|
+
end
|
185
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class FilesTest < Ojo::OjoTestCase
|
4
|
+
def test_files__all_same
|
5
|
+
files_src_1 = %w(one two three four five)
|
6
|
+
files_src_2 = files_src_1.dup
|
7
|
+
|
8
|
+
all_files = Ojo.send(:compile_file_lists, files_src_1, files_src_2)
|
9
|
+
|
10
|
+
assert_equal files_src_1, all_files
|
11
|
+
assert_equal files_src_2, all_files
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_files__totally_different
|
15
|
+
files_src_1 = %w(one two three four five)
|
16
|
+
files_src_2 = %w(six seven eight)
|
17
|
+
|
18
|
+
all_files = Ojo.send(:compile_file_lists, files_src_1, files_src_2)
|
19
|
+
|
20
|
+
assert_equal %w(one two three four five six seven eight), all_files
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_files__slightly_different
|
24
|
+
files_src_1 = %w(one two three four five)
|
25
|
+
files_src_2 = %w(four five six seven)
|
26
|
+
|
27
|
+
all_files = Ojo.send(:compile_file_lists, files_src_1, files_src_2)
|
28
|
+
|
29
|
+
assert_equal %w(one two three four five six seven), all_files
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class OutputTest < Ojo::OjoTestCase
|
4
|
+
|
5
|
+
def test_not_too_long
|
6
|
+
s = Ojo.send(:make_printable_name, 'Geordie', 10)
|
7
|
+
assert_equal 7, s.length
|
8
|
+
assert_equal 'Geordie', s
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_too_long_filename__even_max_odd_string
|
12
|
+
max_length = 10
|
13
|
+
starting_string = 'SomeOddNumberOfCharactersInThisString'
|
14
|
+
s = Ojo.send(:make_printable_name, starting_string, max_length)
|
15
|
+
assert_equal 'Som....ing', s
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_too_long_filename__even_max_even_string
|
19
|
+
max_length = 10
|
20
|
+
starting_string = 'SomeEvenNumberOfCharactersInThisString'
|
21
|
+
s = Ojo.send(:make_printable_name, starting_string, max_length)
|
22
|
+
assert_equal 'Som....ng', s
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_too_long_filename__odd_max_odd_string
|
26
|
+
max_length = 11
|
27
|
+
starting_string = 'SomeOddNumberOfCharactersInThisString'
|
28
|
+
s = Ojo.send(:make_printable_name, starting_string, max_length)
|
29
|
+
assert_equal 'Som....ing', s
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_too_long_filename__odd_max_even_string
|
33
|
+
max_length = 11
|
34
|
+
starting_string = 'SomeEvenNumberOfCharactersInThisString'
|
35
|
+
s = Ojo.send(:make_printable_name, starting_string, max_length)
|
36
|
+
assert_equal 'Some....ing', s
|
37
|
+
end
|
38
|
+
end
|
metadata
ADDED
@@ -0,0 +1,164 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ojo
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- geordie
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-11-14 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.6'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.6'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: collimator
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: open4
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
description: ojo will compare a few sets of screen shots and report results.
|
70
|
+
email:
|
71
|
+
- george.speake@gmail.com
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- ".gitignore"
|
77
|
+
- ".ruby-version"
|
78
|
+
- ".travis.yml"
|
79
|
+
- Gemfile
|
80
|
+
- LICENSE.txt
|
81
|
+
- README.md
|
82
|
+
- Rakefile
|
83
|
+
- lib/ojo.rb
|
84
|
+
- lib/ojo/comparison.rb
|
85
|
+
- lib/ojo/locations.rb
|
86
|
+
- lib/ojo/output.rb
|
87
|
+
- lib/ojo/rails/engine.rb
|
88
|
+
- lib/ojo/screenshot.rb
|
89
|
+
- lib/ojo/version.rb
|
90
|
+
- lib/tasks/ojo.rake
|
91
|
+
- ojo.gemspec
|
92
|
+
- test/page_objects.rb
|
93
|
+
- test/page_objects/test_app/index_page.rb
|
94
|
+
- test/page_objects/test_app/test_app_page.rb
|
95
|
+
- test/phantom/browser_test.rb
|
96
|
+
- test/phantom_test_helper.rb
|
97
|
+
- test/test_app/Gemfile
|
98
|
+
- test/test_app/Gemfile.lock
|
99
|
+
- test/test_app/app/controllers/application_controller.rb
|
100
|
+
- test/test_app/app/controllers/local_controller.rb
|
101
|
+
- test/test_app/app/views/layouts/local.html.erb
|
102
|
+
- test/test_app/app/views/local/index.html.erb
|
103
|
+
- test/test_app/config.ru
|
104
|
+
- test/test_app/config/database.yml
|
105
|
+
- test/test_app/config/initializers/ojo_initializer.rb
|
106
|
+
- test/test_app/config/routes.rb
|
107
|
+
- test/test_app/log/development.log
|
108
|
+
- test/test_app/log/test.log
|
109
|
+
- test/test_app/ojo_development
|
110
|
+
- test/test_app/test_app.rb
|
111
|
+
- test/test_helper.rb
|
112
|
+
- test/unit/comparison_test.rb
|
113
|
+
- test/unit/config_test.rb
|
114
|
+
- test/unit/files_test.rb
|
115
|
+
- test/unit/output_test.rb
|
116
|
+
homepage: ''
|
117
|
+
licenses:
|
118
|
+
- MIT
|
119
|
+
metadata: {}
|
120
|
+
post_install_message:
|
121
|
+
rdoc_options: []
|
122
|
+
require_paths:
|
123
|
+
- lib
|
124
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
125
|
+
requirements:
|
126
|
+
- - ">="
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
129
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - ">="
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '0'
|
134
|
+
requirements: []
|
135
|
+
rubyforge_project:
|
136
|
+
rubygems_version: 2.2.2
|
137
|
+
signing_key:
|
138
|
+
specification_version: 4
|
139
|
+
summary: ojo is the eyes of the appearance test
|
140
|
+
test_files:
|
141
|
+
- test/page_objects.rb
|
142
|
+
- test/page_objects/test_app/index_page.rb
|
143
|
+
- test/page_objects/test_app/test_app_page.rb
|
144
|
+
- test/phantom/browser_test.rb
|
145
|
+
- test/phantom_test_helper.rb
|
146
|
+
- test/test_app/Gemfile
|
147
|
+
- test/test_app/Gemfile.lock
|
148
|
+
- test/test_app/app/controllers/application_controller.rb
|
149
|
+
- test/test_app/app/controllers/local_controller.rb
|
150
|
+
- test/test_app/app/views/layouts/local.html.erb
|
151
|
+
- test/test_app/app/views/local/index.html.erb
|
152
|
+
- test/test_app/config.ru
|
153
|
+
- test/test_app/config/database.yml
|
154
|
+
- test/test_app/config/initializers/ojo_initializer.rb
|
155
|
+
- test/test_app/config/routes.rb
|
156
|
+
- test/test_app/log/development.log
|
157
|
+
- test/test_app/log/test.log
|
158
|
+
- test/test_app/ojo_development
|
159
|
+
- test/test_app/test_app.rb
|
160
|
+
- test/test_helper.rb
|
161
|
+
- test/unit/comparison_test.rb
|
162
|
+
- test/unit/config_test.rb
|
163
|
+
- test/unit/files_test.rb
|
164
|
+
- test/unit/output_test.rb
|