optical_diff 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  class OpticalDiff
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
data/lib/optical_diff.rb CHANGED
@@ -16,7 +16,7 @@ class OpticalDiff
16
16
 
17
17
  def strip_ignore_elements(page, ignore = [])
18
18
  ignore.each do |selector|
19
- page.css(selector).remove
19
+ page.search(selector).remove
20
20
  end
21
21
  page
22
22
  end
@@ -18,7 +18,21 @@ describe OpticalDiff do
18
18
  context 'ignore elements' do
19
19
  let(:html1) { "<html><body>abcde</body></html>" }
20
20
  let(:html2) { "<html><body>abcde<p class='ignore'>ignore</p></body></html>" }
21
- subject { OpticalDiff.diff(html1, html2, :ignore => ['.ignore']) }
22
- it { should_not be_changed }
21
+
22
+ context 'by css selector' do
23
+ subject { OpticalDiff.diff(html1, html2, :ignore => ['.ignore']) }
24
+ it { should_not be_changed }
25
+ end
26
+
27
+ context 'by xpath' do
28
+ subject { OpticalDiff.diff(html1, html2, :ignore => ['//p[contains(text(), "ignore")]']) }
29
+ it { should_not be_changed }
30
+ end
31
+
32
+ context 'by multiple conditions' do
33
+ let(:html3) { "<html><body>abcde<p class='ignore'>ignore</p><p>xpath</p></body></html>" }
34
+ subject { OpticalDiff.diff(html1, html3, :ignore => ['.ignore', '//p[contains(text(), "xpath")]']) }
35
+ it { should_not be_changed }
36
+ end
23
37
  end
24
38
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: optical_diff
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 1
10
- version: 0.0.1
9
+ - 2
10
+ version: 0.0.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Yusuke Mito
@@ -15,12 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-08-31 00:00:00 Z
18
+ date: 2012-09-12 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: diffy
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
25
24
  requirements:
26
25
  - - ~>
@@ -31,11 +30,11 @@ dependencies:
31
30
  - 0
32
31
  version: "2.0"
33
32
  type: :runtime
34
- version_requirements: *id001
33
+ requirement: *id001
34
+ prerelease: false
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: nokogiri
37
- prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
37
+ version_requirements: &id002 !ruby/object:Gem::Requirement
39
38
  none: false
40
39
  requirements:
41
40
  - - ~>
@@ -46,11 +45,11 @@ dependencies:
46
45
  - 5
47
46
  version: "1.5"
48
47
  type: :runtime
49
- version_requirements: *id002
48
+ requirement: *id002
49
+ prerelease: false
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: rake
52
- prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
52
+ version_requirements: &id003 !ruby/object:Gem::Requirement
54
53
  none: false
55
54
  requirements:
56
55
  - - ">="
@@ -60,11 +59,11 @@ dependencies:
60
59
  - 0
61
60
  version: "0"
62
61
  type: :development
63
- version_requirements: *id003
62
+ requirement: *id003
63
+ prerelease: false
64
64
  - !ruby/object:Gem::Dependency
65
65
  name: rspec
66
- prerelease: false
67
- requirement: &id004 !ruby/object:Gem::Requirement
66
+ version_requirements: &id004 !ruby/object:Gem::Requirement
68
67
  none: false
69
68
  requirements:
70
69
  - - ">="
@@ -74,11 +73,11 @@ dependencies:
74
73
  - 0
75
74
  version: "0"
76
75
  type: :development
77
- version_requirements: *id004
76
+ requirement: *id004
77
+ prerelease: false
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: pry
80
- prerelease: false
81
- requirement: &id005 !ruby/object:Gem::Requirement
80
+ version_requirements: &id005 !ruby/object:Gem::Requirement
82
81
  none: false
83
82
  requirements:
84
83
  - - ">="
@@ -88,11 +87,11 @@ dependencies:
88
87
  - 0
89
88
  version: "0"
90
89
  type: :development
91
- version_requirements: *id005
90
+ requirement: *id005
91
+ prerelease: false
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: guard-rspec
94
- prerelease: false
95
- requirement: &id006 !ruby/object:Gem::Requirement
94
+ version_requirements: &id006 !ruby/object:Gem::Requirement
96
95
  none: false
97
96
  requirements:
98
97
  - - ">="
@@ -102,7 +101,8 @@ dependencies:
102
101
  - 0
103
102
  version: "0"
104
103
  type: :development
105
- version_requirements: *id006
104
+ requirement: *id006
105
+ prerelease: false
106
106
  description: This gem can check whether HTMLs are optically the same or not by ignoring specified html elements by parsing input as HTML.
107
107
  email:
108
108
  - y310.1984@gmail.com