unused_css 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f54b308512eec95945edaa62f63b1bbd2e80fef1
4
- data.tar.gz: f38f1cef3d2c3aada5551dadc168103986b2506f
3
+ metadata.gz: b2a9ef39b6aeb0dac1e93d2cdc72890b40da563b
4
+ data.tar.gz: 9f4b93533589a7a829a500448889b2f44463c6a8
5
5
  SHA512:
6
- metadata.gz: 9dd40b52c228de3078306379c4ec5f6879825bf9a0b293ceac3d8dfb909e761bd3cebe0c3d3f203645dfba176239dd39f8a9d418703e9c1e5c5b46393eb4731e
7
- data.tar.gz: 17e47ae4a706ddc728179eeb86213620cf420ca0234613179ab1845ace1f76bc7b5d21817ca08b30f12a134f3904499ae09072f74e6d33fe18d6671b9d66cf3e
6
+ metadata.gz: a3a0fcc98240b3261dbc8d81c8e414e94b5f8b825c125d3ca168cbfe9684914b3d56052dfcf9cb6ee8811eab03f5407f5f15e20b65d328150c704d85480263bb
7
+ data.tar.gz: 539ab00925b8c5a9c7cbdf24aac95259a88407a6db87239ee24de2d4b778e5f95c88124c7d84d415d326d51fcc14a03f0399cc119821f6cba897ffc744be9363
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- unused_css (0.0.1)
4
+ unused_css (0.1.0)
5
5
  css_parser
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -20,11 +20,9 @@ Here's a typical 'features/support/env.rb' file using Unused CSS to watch the Wa
20
20
 
21
21
  ```ruby
22
22
  require "watir-webdriver"
23
- require "unused_css"
23
+ require "unused_css/watir"
24
24
 
25
25
  $browser = Watir::Browser.new
26
- $unused_css = UnusedCSS::Watcher.new
27
- $unused_css.watch! $browser
28
26
 
29
27
  at_exit do
30
28
  $browser.close
@@ -3,11 +3,11 @@ Then "I should see '$text'" do |text|
3
3
  end
4
4
 
5
5
  Then "I should see style '$style' was used" do |style|
6
- fail "#{style} style was not used" if $unused_css.stylesheets.styles.include? style
6
+ fail "#{style} style was not used" if $browser.stylesheets.styles.include? style
7
7
  end
8
8
 
9
9
  Then "I should see style '$style' was not used" do |style|
10
- fail "#{style} style was used" unless $unused_css.stylesheets.styles.include? style
10
+ fail "#{style} style was used" unless $browser.stylesheets.styles.include? style
11
11
  end
12
12
 
13
13
  When(/^I wait for content to be loaded into the DOM via AJAX$/) do
@@ -1,11 +1,9 @@
1
1
  require "watir-webdriver"
2
- require "unused_css"
2
+ require "unused_css/watir"
3
3
 
4
4
  system "rake"
5
5
 
6
6
  $browser = Watir::Browser.new
7
- $unused_css = UnusedCSS::Watcher.new
8
- $unused_css.watch! $browser
9
7
 
10
8
  at_exit do
11
9
  $browser.close
@@ -1,3 +1,3 @@
1
1
  module UnusedCSS
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -0,0 +1,34 @@
1
+ require "unused_css/stylesheet"
2
+
3
+ module Watir
4
+
5
+ class Browser
6
+ attr_accessor :stylesheets
7
+
8
+ alias_method :original_initialize, :initialize
9
+ def initialize(*args)
10
+ @stylesheets = Stylesheets.new
11
+ original_initialize(*args)
12
+ end
13
+
14
+ alias_method :original_goto, :goto
15
+ def goto(*args)
16
+ original_goto(*args)
17
+ @stylesheets.add stylesheets_on_page
18
+ remove_used_styles!
19
+ end
20
+
21
+ def stylesheets_on_page
22
+ elements(tag_name: 'link').map { |stylesheet| stylesheet.attribute_value('href') }
23
+ end
24
+
25
+ def remove_used_styles!
26
+ @stylesheets.each do |stylesheet|
27
+ stylesheet.styles.delete_if { |style| self.element(css: style).exist? }
28
+ stylesheet.remove_pseudo_styles!
29
+ end
30
+ end
31
+ alias_method :check_for_unused_styles!, :remove_used_styles!
32
+ end
33
+
34
+ end
data/lib/unused_css.rb CHANGED
@@ -1,36 +1,2 @@
1
1
  require "unused_css/version"
2
- require "unused_css/stylesheet"
3
-
4
- module UnusedCSS
5
- class Watcher
6
- attr_accessor :stylesheets
7
-
8
- def initialize
9
- @stylesheets = Stylesheets.new
10
- end
11
-
12
- def watch!(watir_browser)
13
- unused_css_block = Proc.new do |unused_css|
14
- @unused_css = unused_css
15
- def goto(uri)
16
- super(uri)
17
- stylesheets = elements(tag_name: 'link').map {|stylesheet| stylesheet.attribute_value('href') }
18
- @unused_css.stylesheets.add stylesheets
19
- stylesheets.each do |stylesheet|
20
- stylesheet = @unused_css.stylesheets[stylesheet]
21
- stylesheet.styles.delete_if {|style| self.element(css: style).exist? }
22
- stylesheet.remove_pseudo_styles!
23
- end
24
- end
25
-
26
- def check_for_unused_styles!
27
- @unused_css.stylesheets.each do |stylesheet|
28
- stylesheet.styles.delete_if {|style| self.element(css: style).exist? }
29
- stylesheet.remove_pseudo_styles!
30
- end
31
- end
32
- end
33
- watir_browser.instance_exec self, &unused_css_block
34
- end
35
- end
36
- end
2
+ require "unused_css/watir"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unused_css
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Temple
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-03 00:00:00.000000000 Z
11
+ date: 2014-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: css_parser
@@ -133,6 +133,7 @@ files:
133
133
  - lib/unused_css.rb
134
134
  - lib/unused_css/stylesheet.rb
135
135
  - lib/unused_css/version.rb
136
+ - lib/unused_css/watir.rb
136
137
  - public/stylesheets/multiple.css
137
138
  - public/stylesheets/style.css
138
139
  - unused-css.iml