dom_glancy 0.1.0
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 +21 -0
- data/.ruby-version +1 -0
- data/.travis.yml +15 -0
- data/Gemfile +16 -0
- data/LICENSE.txt +22 -0
- data/README.md +35 -0
- data/Rakefile +23 -0
- data/app/assets/javascripts/application.js +1 -0
- data/app/assets/stylesheets/1236_grid.css +21 -0
- data/app/assets/stylesheets/720_grid.css +33 -0
- data/app/assets/stylesheets/986_grid.css +24 -0
- data/app/assets/stylesheets/dom_glancy.css +134 -0
- data/app/assets/stylesheets/normalize.css +425 -0
- data/app/controllers/dom_glancy_application_controller.rb +8 -0
- data/app/controllers/dom_glancy_controller.rb +114 -0
- data/app/views/dom_glancy/about.html.erb +3 -0
- data/app/views/dom_glancy/artifacts.html.erb +16 -0
- data/app/views/dom_glancy/index.html.erb +12 -0
- data/app/views/dom_glancy/new.html.erb +15 -0
- data/app/views/dom_glancy/path_config.html.erb +8 -0
- data/app/views/dom_glancy/show.html.erb +42 -0
- data/app/views/layouts/dom_glancy.html.erb +32 -0
- data/app/views/shared/_dom_glancy_nav.html.erb +8 -0
- data/app/views/shared/_dom_set.html.erb +35 -0
- data/config/routes.rb +17 -0
- data/dom_glancy.gemspec +26 -0
- data/lib/dom_glancy/analysis.rb +141 -0
- data/lib/dom_glancy/dom_glancy.rb +121 -0
- data/lib/dom_glancy/element.rb +92 -0
- data/lib/dom_glancy/locations.rb +49 -0
- data/lib/dom_glancy/rails/engine.rb +7 -0
- data/lib/dom_glancy/svg.rb +71 -0
- data/lib/dom_glancy/version.rb +3 -0
- data/lib/dom_glancy.rb +7 -0
- data/test/page_objects/dom_glancy/about_page.rb +7 -0
- data/test/page_objects/dom_glancy/artifacts_page.rb +7 -0
- data/test/page_objects/dom_glancy/config_page.rb +19 -0
- data/test/page_objects/dom_glancy/index_page.rb +9 -0
- data/test/page_objects/dom_glancy/local_index_page.rb +7 -0
- data/test/page_objects/dom_glancy/new_page.rb +7 -0
- data/test/page_objects/dom_glancy/show_page.rb +15 -0
- data/test/page_objects/dom_glancy/viewer_page.rb +15 -0
- data/test/page_objects/navigation.rb +34 -0
- data/test/page_objects.rb +13 -0
- data/test/selenium/mapping_test.rb +118 -0
- data/test/selenium/viewer_test.rb +26 -0
- data/test/selenium_test_helper.rb +147 -0
- data/test/test_app/Gemfile +10 -0
- data/test/test_app/app/assets/stylesheets/local_app.css +25 -0
- data/test/test_app/app/controllers/application_controller.rb +2 -0
- data/test/test_app/app/controllers/local_controller.rb +8 -0
- data/test/test_app/app/views/layouts/local.html.erb +14 -0
- data/test/test_app/app/views/local/index.html.erb +45 -0
- data/test/test_app/config/database.yml +13 -0
- data/test/test_app/config/initializers/dom_glancy_initializer.rb +5 -0
- data/test/test_app/config/routes.rb +4 -0
- data/test/test_app/config.ru +31 -0
- data/test/test_app/test_app.rb +30 -0
- data/test/test_helper.rb +43 -0
- data/test/test_helpers/kracker_class_for_stubbing.rb +3 -0
- data/test/test_helpers/location_helpers.rb +28 -0
- data/test/test_objects/test_objects.rb +2031 -0
- data/test/unit/analysis_test.rb +111 -0
- data/test/unit/element_test.rb +47 -0
- data/test/unit/kracker_test.rb +79 -0
- data/test/unit/location_test.rb +23 -0
- data/watchr_script.rb +3 -0
- metadata +199 -0
@@ -0,0 +1,111 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class AnalysisTest < DomGlancy::DomGlancyTestCase
|
4
|
+
|
5
|
+
def test_same_elements
|
6
|
+
|
7
|
+
master_data = array_of_elements
|
8
|
+
current_data = array_of_elements
|
9
|
+
|
10
|
+
analysis = analyze(master_data, current_data)
|
11
|
+
|
12
|
+
assert_equal 0, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
13
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
14
|
+
assert analysis[:same], 'results of data analysis.same'
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_one_id_different
|
18
|
+
master_data = array_of_elements_small
|
19
|
+
current_data = array_of_elements_small
|
20
|
+
current_data.first['id'] = 'some-new-id'
|
21
|
+
|
22
|
+
analysis = analyze(master_data, current_data)
|
23
|
+
|
24
|
+
assert_equal 1, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
25
|
+
assert_equal 1, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
26
|
+
refute analysis[:same], 'results of data analysis.same'
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_one_new_element
|
30
|
+
master_data = array_of_elements
|
31
|
+
current_data = array_of_elements
|
32
|
+
current_data << single_element_hash
|
33
|
+
|
34
|
+
analysis = analyze(master_data, current_data)
|
35
|
+
|
36
|
+
assert_equal 1, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
37
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
38
|
+
refute analysis[:same], 'results of data analysis.same'
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_two_changed
|
42
|
+
master_data = array_of_elements
|
43
|
+
current_data = array_of_elements
|
44
|
+
current_data[0]['height'] = current_data[0]['height'] + 16
|
45
|
+
current_data[1]['width'] = current_data[1]['width'] + 25
|
46
|
+
|
47
|
+
analysis = analyze(master_data, current_data)
|
48
|
+
|
49
|
+
assert_equal 0, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
50
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
51
|
+
assert_equal 2, analysis[:changed_element_pairs].count, 'changed element pairs'
|
52
|
+
refute analysis[:same], 'results of data analysis.same'
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_one_changed_less_than_similarity_factor
|
57
|
+
master_data = array_of_elements
|
58
|
+
current_data = array_of_elements
|
59
|
+
|
60
|
+
current_data[1]['height'] = current_data[1]['height'] + 3
|
61
|
+
|
62
|
+
analysis = analyze(master_data, current_data)
|
63
|
+
|
64
|
+
assert_equal 0, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
65
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
66
|
+
assert_equal 0, analysis[:changed_element_pairs].count, 'changed element pairs'
|
67
|
+
assert analysis[:same], 'results of data analysis.same'
|
68
|
+
end
|
69
|
+
|
70
|
+
def test_one_changed_one_missing_one_added
|
71
|
+
master_data = array_of_elements
|
72
|
+
current_data = array_of_elements
|
73
|
+
|
74
|
+
current_data[0]['height'] = current_data[0]['height'] + 23 ## the one changed (by more than similarity factor)
|
75
|
+
current_data[1]['height'] = current_data[1]['height'] + 3 ## the one changed (by less than similarity factor and therefor not counted)
|
76
|
+
current_data.delete_at(5) ## the one missing
|
77
|
+
current_data << single_element_hash ## the one added
|
78
|
+
|
79
|
+
analysis = analyze(master_data, current_data)
|
80
|
+
|
81
|
+
assert_equal 1, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
82
|
+
assert_equal 1, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
83
|
+
assert_equal 1, analysis[:changed_element_pairs].count, 'changed element pairs'
|
84
|
+
refute analysis[:same], 'results of data analysis.same'
|
85
|
+
end
|
86
|
+
|
87
|
+
def test_huge_list_of_similarly_named_elements
|
88
|
+
master_data = travis_local_generated_master
|
89
|
+
current_data = travis_generated_current
|
90
|
+
|
91
|
+
analysis = analyze(master_data, current_data)
|
92
|
+
assert_equal 0, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
93
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
94
|
+
assert_equal 0, analysis[:changed_element_pairs].count, 'changed element pairs'
|
95
|
+
assert analysis[:same], 'results of data analysis.same'
|
96
|
+
end
|
97
|
+
|
98
|
+
def test_huge_another_list_of_similarly_named_elements
|
99
|
+
master_data = travis_local_generated_master_2
|
100
|
+
current_data = travis_generated_current_2
|
101
|
+
|
102
|
+
analysis = analyze(master_data, current_data)
|
103
|
+
|
104
|
+
## real difference that was found on travis with the INPUT tags being different styles/sizes if not css-styled
|
105
|
+
assert_equal 0, analysis[:not_in_master].count, 'results of data analysis: not_in_master'
|
106
|
+
assert_equal 0, analysis[:not_in_current].count, 'results of data analysis: not_in_current'
|
107
|
+
assert_equal 1, analysis[:changed_element_pairs].count, 'changed element pairs'
|
108
|
+
refute analysis[:same], 'results of data analysis.same'
|
109
|
+
end
|
110
|
+
|
111
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class ElementTest < DomGlancy::DomGlancyTestCase
|
4
|
+
|
5
|
+
def test_sameness
|
6
|
+
element1 = DOMElement.new(single_element_hash)
|
7
|
+
element2 = DOMElement.new(single_element_hash.merge({"left" => 72}))
|
8
|
+
|
9
|
+
assert element1.same_element?(element2), 'should be the same element'
|
10
|
+
refute element1.all_same?(element2), 'should not be all same'
|
11
|
+
assert element1.close_enough?(element2), 'should be the same element, but with slight differences'
|
12
|
+
|
13
|
+
element1.left = 72
|
14
|
+
assert element1.all_same?(element2), 'should be the same now'
|
15
|
+
|
16
|
+
element2.id = 'stupid_id'
|
17
|
+
refute element1.all_same?(element2)
|
18
|
+
refute element1.same_element?(element2)
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_similarity
|
22
|
+
element1 = DOMElement.new(single_element_hash.merge({"similarity" => 2}))
|
23
|
+
element2 = DOMElement.new(single_element_hash.merge({"left" => 72}))
|
24
|
+
element3 = DOMElement.new(single_element_hash.merge({"left" => 74}))
|
25
|
+
|
26
|
+
assert element1.same_element?(element2), 'should be the same element'
|
27
|
+
assert element1.same_element?(element3), 'should be the same element'
|
28
|
+
|
29
|
+
refute element1.all_same?(element2), 'should not be exactly the same'
|
30
|
+
refute element1.all_same?(element3), 'should not be exactly the same'
|
31
|
+
|
32
|
+
assert element1.close_enough?(element2), 'should be close enough'
|
33
|
+
refute element1.close_enough?(element3), 'should not be close enough'
|
34
|
+
|
35
|
+
element1.similarity = 4
|
36
|
+
assert element1.close_enough?(element3), 'should not be close enough'
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_changed_element__width
|
40
|
+
element1 = DOMElement.new(array_of_elements.last)
|
41
|
+
element2 = DOMElement.new(array_of_elements.last.merge("width" => 20))
|
42
|
+
|
43
|
+
assert element1.same_element?(element2), 'should be same element'
|
44
|
+
refute element1.close_enough?(element2), 'elements not close enough'
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class DomGlancyTest < DomGlancy::DomGlancyTestCase
|
4
|
+
def setup
|
5
|
+
@test_root = 'elbow'
|
6
|
+
prep_locations_for_test
|
7
|
+
make_master_test_file(@test_root, array_of_elements_small)
|
8
|
+
@DomGlancy_object = DomGlancyClassForStubbing.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def teardown
|
12
|
+
delete_test_locations
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_dom_glancy__missing_master
|
16
|
+
this_test_root = 'not_elbow'
|
17
|
+
blessing_copy_string = "cp #{DomGlancy.current_filename(this_test_root)} #{DomGlancy.master_filename(this_test_root)}"
|
18
|
+
|
19
|
+
@DomGlancy_object.stubs(:perform_mapping_operation).returns(array_of_elements_small)
|
20
|
+
mapping_results = @DomGlancy_object.page_map_same?(this_test_root)
|
21
|
+
|
22
|
+
refute mapping_results[0], 'test should fail because no master'
|
23
|
+
assert_match 'Master file does not exist', mapping_results[1], 'failure message when no master'
|
24
|
+
assert_match blessing_copy_string, mapping_results[1], 'blessing copy string should be in the error message'
|
25
|
+
|
26
|
+
`#{blessing_copy_string}`
|
27
|
+
@DomGlancy_object.stubs(:perform_mapping_operation).returns(array_of_elements_small)
|
28
|
+
|
29
|
+
mapping_results = @DomGlancy_object.page_map_same?(this_test_root)
|
30
|
+
assert mapping_results[0], 'test should now pass with copied master'
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_dom_glancy__pass
|
35
|
+
@DomGlancy_object.stubs(:perform_mapping_operation).returns(array_of_elements_small)
|
36
|
+
mapping_results = @DomGlancy_object.page_map_same?(@test_root)
|
37
|
+
|
38
|
+
assert mapping_results[0], mapping_results[1]
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_dom_glancy__fail_one_new_element
|
42
|
+
blessing_copy_string = "cp #{DomGlancy.current_filename(@test_root)} #{DomGlancy.master_filename(@test_root)}"
|
43
|
+
|
44
|
+
|
45
|
+
current_data = array_of_elements_small << single_element_hash
|
46
|
+
@DomGlancy_object.stubs(:perform_mapping_operation).returns(current_data)
|
47
|
+
mapping_results = @DomGlancy_object.page_map_same?(@test_root)
|
48
|
+
|
49
|
+
refute mapping_results[0], 'page same results should be false'
|
50
|
+
|
51
|
+
assert_match 'Elements not in master: 1', mapping_results[1], 'error message contents'
|
52
|
+
assert_match 'Elements not in current: 0', mapping_results[1], 'error message contents'
|
53
|
+
assert_match 'Changed elements: 0', mapping_results[1], 'error message contents'
|
54
|
+
|
55
|
+
assert_match "current: #{DomGlancy.current_filename(@test_root)}", mapping_results[1], 'error message contents'
|
56
|
+
assert_match "master: #{DomGlancy.master_filename(@test_root)}", mapping_results[1], 'error message contents'
|
57
|
+
assert_match "difference: #{DomGlancy.diff_filename(@test_root)}", mapping_results[1], 'error message contents'
|
58
|
+
|
59
|
+
assert_match blessing_copy_string, mapping_results[1], 'blessing copy string should be in the error message'
|
60
|
+
|
61
|
+
files_in_diff_location = Dir[File.join(DomGlancy.diff_file_location, '*')]
|
62
|
+
assert_equal 4, files_in_diff_location.count, 'the number of files in the diff location after a failure.'
|
63
|
+
|
64
|
+
`#{blessing_copy_string}`
|
65
|
+
|
66
|
+
@DomGlancy_object.stubs(:perform_mapping_operation).returns(current_data)
|
67
|
+
mapping_results = @DomGlancy_object.page_map_same?(@test_root)
|
68
|
+
|
69
|
+
assert mapping_results[0], 'should pass now that the blessing copy string has been run'
|
70
|
+
|
71
|
+
end
|
72
|
+
|
73
|
+
def make_master_test_file(test_root, data)
|
74
|
+
filename = DomGlancy.master_filename(test_root)
|
75
|
+
yaml_data = data.to_yaml
|
76
|
+
File.open(filename, 'w') { |file| file.write(yaml_data) }
|
77
|
+
end
|
78
|
+
|
79
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class LocationTest < DomGlancy::DomGlancyTestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
prep_locations_for_test
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
delete_test_locations
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_locations
|
14
|
+
assert_equal File.join(@locations_root, 'masters'), DomGlancy.master_file_location , 'master file location value'
|
15
|
+
assert_equal File.join(@locations_root, 'current'), DomGlancy.current_file_location , 'current file location value'
|
16
|
+
assert_equal File.join(@locations_root, 'diff'), DomGlancy.diff_file_location , 'difference file location value'
|
17
|
+
|
18
|
+
assert Dir.exist?(DomGlancy.master_file_location) , 'master file location created'
|
19
|
+
assert Dir.exist?(DomGlancy.current_file_location) , 'current file location created'
|
20
|
+
assert Dir.exist?(DomGlancy.diff_file_location) , 'difference file location created'
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
data/watchr_script.rb
ADDED
metadata
ADDED
@@ -0,0 +1,199 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: dom_glancy
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- geordie
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-10-31 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.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: kramdown
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 1.1.0
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 1.1.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: capybara
|
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: DOM Mapping
|
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
|
+
- app/assets/javascripts/application.js
|
84
|
+
- app/assets/stylesheets/1236_grid.css
|
85
|
+
- app/assets/stylesheets/720_grid.css
|
86
|
+
- app/assets/stylesheets/986_grid.css
|
87
|
+
- app/assets/stylesheets/dom_glancy.css
|
88
|
+
- app/assets/stylesheets/normalize.css
|
89
|
+
- app/controllers/dom_glancy_application_controller.rb
|
90
|
+
- app/controllers/dom_glancy_controller.rb
|
91
|
+
- app/views/dom_glancy/about.html.erb
|
92
|
+
- app/views/dom_glancy/artifacts.html.erb
|
93
|
+
- app/views/dom_glancy/index.html.erb
|
94
|
+
- app/views/dom_glancy/new.html.erb
|
95
|
+
- app/views/dom_glancy/path_config.html.erb
|
96
|
+
- app/views/dom_glancy/show.html.erb
|
97
|
+
- app/views/layouts/dom_glancy.html.erb
|
98
|
+
- app/views/shared/_dom_glancy_nav.html.erb
|
99
|
+
- app/views/shared/_dom_set.html.erb
|
100
|
+
- config/routes.rb
|
101
|
+
- dom_glancy.gemspec
|
102
|
+
- lib/dom_glancy.rb
|
103
|
+
- lib/dom_glancy/analysis.rb
|
104
|
+
- lib/dom_glancy/dom_glancy.rb
|
105
|
+
- lib/dom_glancy/element.rb
|
106
|
+
- lib/dom_glancy/locations.rb
|
107
|
+
- lib/dom_glancy/rails/engine.rb
|
108
|
+
- lib/dom_glancy/svg.rb
|
109
|
+
- lib/dom_glancy/version.rb
|
110
|
+
- test/page_objects.rb
|
111
|
+
- test/page_objects/dom_glancy/about_page.rb
|
112
|
+
- test/page_objects/dom_glancy/artifacts_page.rb
|
113
|
+
- test/page_objects/dom_glancy/config_page.rb
|
114
|
+
- test/page_objects/dom_glancy/index_page.rb
|
115
|
+
- test/page_objects/dom_glancy/local_index_page.rb
|
116
|
+
- test/page_objects/dom_glancy/new_page.rb
|
117
|
+
- test/page_objects/dom_glancy/show_page.rb
|
118
|
+
- test/page_objects/dom_glancy/viewer_page.rb
|
119
|
+
- test/page_objects/navigation.rb
|
120
|
+
- test/selenium/mapping_test.rb
|
121
|
+
- test/selenium/viewer_test.rb
|
122
|
+
- test/selenium_test_helper.rb
|
123
|
+
- test/test_app/Gemfile
|
124
|
+
- test/test_app/app/assets/stylesheets/local_app.css
|
125
|
+
- test/test_app/app/controllers/application_controller.rb
|
126
|
+
- test/test_app/app/controllers/local_controller.rb
|
127
|
+
- test/test_app/app/views/layouts/local.html.erb
|
128
|
+
- test/test_app/app/views/local/index.html.erb
|
129
|
+
- test/test_app/config.ru
|
130
|
+
- test/test_app/config/database.yml
|
131
|
+
- test/test_app/config/initializers/dom_glancy_initializer.rb
|
132
|
+
- test/test_app/config/routes.rb
|
133
|
+
- test/test_app/test_app.rb
|
134
|
+
- test/test_helper.rb
|
135
|
+
- test/test_helpers/kracker_class_for_stubbing.rb
|
136
|
+
- test/test_helpers/location_helpers.rb
|
137
|
+
- test/test_objects/test_objects.rb
|
138
|
+
- test/unit/analysis_test.rb
|
139
|
+
- test/unit/element_test.rb
|
140
|
+
- test/unit/kracker_test.rb
|
141
|
+
- test/unit/location_test.rb
|
142
|
+
- watchr_script.rb
|
143
|
+
homepage: https://github.com/QuantumGeordie/dom_glancy
|
144
|
+
licenses:
|
145
|
+
- MIT
|
146
|
+
metadata: {}
|
147
|
+
post_install_message:
|
148
|
+
rdoc_options: []
|
149
|
+
require_paths:
|
150
|
+
- lib
|
151
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
152
|
+
requirements:
|
153
|
+
- - ">="
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: '0'
|
156
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - ">="
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '0'
|
161
|
+
requirements: []
|
162
|
+
rubyforge_project:
|
163
|
+
rubygems_version: 2.2.2
|
164
|
+
signing_key:
|
165
|
+
specification_version: 4
|
166
|
+
summary: Map the page DOM and get some stats on it compared to a known default map.
|
167
|
+
test_files:
|
168
|
+
- test/page_objects.rb
|
169
|
+
- test/page_objects/dom_glancy/about_page.rb
|
170
|
+
- test/page_objects/dom_glancy/artifacts_page.rb
|
171
|
+
- test/page_objects/dom_glancy/config_page.rb
|
172
|
+
- test/page_objects/dom_glancy/index_page.rb
|
173
|
+
- test/page_objects/dom_glancy/local_index_page.rb
|
174
|
+
- test/page_objects/dom_glancy/new_page.rb
|
175
|
+
- test/page_objects/dom_glancy/show_page.rb
|
176
|
+
- test/page_objects/dom_glancy/viewer_page.rb
|
177
|
+
- test/page_objects/navigation.rb
|
178
|
+
- test/selenium/mapping_test.rb
|
179
|
+
- test/selenium/viewer_test.rb
|
180
|
+
- test/selenium_test_helper.rb
|
181
|
+
- test/test_app/Gemfile
|
182
|
+
- test/test_app/app/assets/stylesheets/local_app.css
|
183
|
+
- test/test_app/app/controllers/application_controller.rb
|
184
|
+
- test/test_app/app/controllers/local_controller.rb
|
185
|
+
- test/test_app/app/views/layouts/local.html.erb
|
186
|
+
- test/test_app/app/views/local/index.html.erb
|
187
|
+
- test/test_app/config.ru
|
188
|
+
- test/test_app/config/database.yml
|
189
|
+
- test/test_app/config/initializers/dom_glancy_initializer.rb
|
190
|
+
- test/test_app/config/routes.rb
|
191
|
+
- test/test_app/test_app.rb
|
192
|
+
- test/test_helper.rb
|
193
|
+
- test/test_helpers/kracker_class_for_stubbing.rb
|
194
|
+
- test/test_helpers/location_helpers.rb
|
195
|
+
- test/test_objects/test_objects.rb
|
196
|
+
- test/unit/analysis_test.rb
|
197
|
+
- test/unit/element_test.rb
|
198
|
+
- test/unit/kracker_test.rb
|
199
|
+
- test/unit/location_test.rb
|