hexp 0.0.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/.travis.yml +12 -3
  2. data/Changelog.md +9 -0
  3. data/Gemfile +3 -5
  4. data/Gemfile.devtools +20 -18
  5. data/Gemfile.lock +97 -84
  6. data/Rakefile +16 -0
  7. data/config/flay.yml +2 -2
  8. data/config/flog.yml +1 -1
  9. data/config/reek.yml +42 -18
  10. data/config/rubocop.yml +31 -0
  11. data/config/yardstick.yml +39 -1
  12. data/examples/from_nokogiri.rb +77 -0
  13. data/examples/selector_rewriter_chaining.rb +14 -0
  14. data/examples/todo.rb +138 -0
  15. data/examples/widget.rb +64 -0
  16. data/hexp.gemspec +8 -3
  17. data/lib/hexp.rb +103 -2
  18. data/lib/hexp/builder.rb +256 -0
  19. data/lib/hexp/css_selector.rb +205 -0
  20. data/lib/hexp/css_selector/parser.rb +74 -0
  21. data/lib/hexp/css_selector/sass_parser.rb +22 -0
  22. data/lib/hexp/dom.rb +0 -2
  23. data/lib/hexp/dsl.rb +27 -0
  24. data/lib/hexp/errors.rb +21 -0
  25. data/lib/hexp/h.rb +5 -2
  26. data/lib/hexp/list.rb +67 -9
  27. data/lib/hexp/node.rb +197 -41
  28. data/lib/hexp/node/attributes.rb +176 -0
  29. data/lib/hexp/node/children.rb +44 -0
  30. data/lib/hexp/node/css_selection.rb +73 -0
  31. data/lib/hexp/node/domize.rb +52 -6
  32. data/lib/hexp/node/normalize.rb +19 -9
  33. data/lib/hexp/node/pp.rb +32 -0
  34. data/lib/hexp/node/rewriter.rb +52 -0
  35. data/lib/hexp/node/selector.rb +59 -0
  36. data/lib/hexp/nokogiri/equality.rb +61 -0
  37. data/lib/hexp/nokogiri/reader.rb +27 -0
  38. data/lib/hexp/sass/selector_parser.rb +4 -0
  39. data/lib/hexp/text_node.rb +129 -9
  40. data/lib/hexp/version.rb +1 -1
  41. data/notes +34 -0
  42. data/spec/shared_helper.rb +6 -0
  43. data/spec/spec_helper.rb +2 -6
  44. data/spec/unit/hexp/builder_spec.rb +101 -0
  45. data/spec/unit/hexp/css_selector/attribute_spec.rb +137 -0
  46. data/spec/unit/hexp/css_selector/class_spec.rb +15 -0
  47. data/spec/unit/hexp/css_selector/comma_sequence_spec.rb +20 -0
  48. data/spec/unit/hexp/css_selector/element_spec.rb +11 -0
  49. data/spec/unit/hexp/css_selector/parser_spec.rb +51 -0
  50. data/spec/unit/hexp/css_selector/simple_sequence_spec.rb +48 -0
  51. data/spec/unit/hexp/dsl_spec.rb +55 -0
  52. data/spec/unit/hexp/h_spec.rb +38 -0
  53. data/spec/unit/hexp/list_spec.rb +19 -0
  54. data/spec/unit/hexp/node/attr_spec.rb +55 -0
  55. data/spec/unit/hexp/node/attributes_spec.rb +125 -0
  56. data/spec/unit/hexp/node/children_spec.rb +33 -0
  57. data/spec/unit/hexp/node/class_spec.rb +37 -0
  58. data/spec/unit/hexp/node/css_selection_spec.rb +86 -0
  59. data/spec/unit/hexp/node/normalize_spec.rb +12 -6
  60. data/spec/unit/hexp/node/rewrite_spec.rb +67 -30
  61. data/spec/unit/hexp/node/selector_spec.rb +78 -0
  62. data/spec/unit/hexp/node/text_spec.rb +7 -0
  63. data/spec/unit/hexp/node/to_dom_spec.rb +1 -1
  64. data/spec/unit/hexp/nokogiri/reader_spec.rb +8 -0
  65. data/spec/unit/hexp/parse_spec.rb +23 -0
  66. data/spec/unit/hexp/text_node_spec.rb +25 -0
  67. data/spec/unit/hexp_spec.rb +33 -0
  68. metadata +129 -16
  69. data/lib/hexp/format_error.rb +0 -8
@@ -1,15 +1,24 @@
1
1
  language: ruby
2
2
  before_install: gem install bundler
3
3
  bundler_args: --without yard guard benchmarks
4
- script: "bundle exec rake ci:metrics"
4
+ script: "bundle exec rake ci:travis"
5
5
  rvm:
6
6
  - 1.9.2
7
7
  - 1.9.3
8
8
  - 2.0.0
9
9
  - ruby-head
10
10
  - rbx-19mode
11
- - jruby-19mode
12
- - jruby-head
11
+ matrix:
12
+ include:
13
+ - rvm: jruby-19mode
14
+ env: JRUBY_OPTS="$JRUBY_OPTS --debug"
15
+ - rvm: jruby-head
16
+ env: JRUBY_OPTS="$JRUBY_OPTS --debug"
17
+ allow_failures:
18
+ - rvm: ruby-head
19
+ - rvm: rbx-19mode
20
+ - rvm: jruby-head
21
+ - rvm: jruby-19mode
13
22
  notifications:
14
23
  email:
15
24
  recipients:
@@ -0,0 +1,9 @@
1
+ ### Development
2
+ [full changelog](http://github.com/plexus/hexp/compare/v0.2.0...master)
3
+
4
+ ### v0.2.0
5
+
6
+ * introduce Hexp.build for creating Hexp::Node objects using Builder syntax
7
+ * introduce CSS selectors to selectively iterate over parts of a tree
8
+ * introduce Hexp.parse to integrate with legacy tools
9
+ * expand the API for manipulating nodes
data/Gemfile CHANGED
@@ -1,10 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'nokogiri'
4
- gem 'equalizer', github: 'dkubb/equalizer'
5
-
6
3
  group :development do
7
- gem 'devtools', :git => 'https://github.com/datamapper/devtools.git'
8
- gem 'json', '~> 1.8.0'
4
+ gem 'devtools', github: 'rom-rb/devtools'
9
5
  eval File.read('Gemfile.devtools')
10
6
  end
7
+
8
+ gemspec
@@ -1,22 +1,23 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  group :development do
4
- gem 'rake', '~> 10.0.4'
5
- gem 'rspec', '~> 2.13.0'
6
- gem 'yard', '~> 0.8.6.1'
4
+ gem 'rake', '~> 10.1.0'
5
+ gem 'rspec', '~> 2.14.0'
6
+ gem 'yard', '~> 0.8.6.2'
7
7
  end
8
8
 
9
9
  group :yard do
10
- gem 'kramdown', '~> 1.0.1'
10
+ gem 'kramdown', '~> 1.1.0'
11
11
  end
12
12
 
13
13
  group :guard do
14
- gem 'guard', '~> 1.8.0'
14
+ gem 'guard', '~> 1.8.1'
15
15
  gem 'guard-bundler', '~> 1.0.0'
16
- gem 'guard-rspec', '~> 2.5.4'
16
+ gem 'guard-rspec', '~> 3.0.2'
17
+ gem 'guard-rubocop', '~> 0.2.0'
17
18
 
18
19
  # file system change event handling
19
- gem 'listen', '~> 1.0.2'
20
+ gem 'listen', '~> 1.2.2'
20
21
  gem 'rb-fchange', '~> 0.0.6', :require => false
21
22
  gem 'rb-fsevent', '~> 0.9.3', :require => false
22
23
  gem 'rb-inotify', '~> 0.9.0', :require => false
@@ -28,20 +29,21 @@ group :guard do
28
29
  end
29
30
 
30
31
  group :metrics do
31
- gem 'backports', '~> 3.3', '>= 3.3.0'
32
- gem 'coveralls', '~> 0.6.6'
33
- gem 'flay', '~> 2.2.0'
34
- gem 'flog', '~> 4.0.0'
35
- gem 'reek', '~> 1.3.1', :git => 'https://github.com/troessner/reek.git'
36
- gem 'simplecov', '~> 0.7.1'
37
- gem 'yardstick', '~> 0.9.6'
38
-
39
- platforms :ruby_19 do
32
+ gem 'coveralls', '~> 0.6.7'
33
+ gem 'flay', '~> 2.3.0'
34
+ gem 'flog', '~> 4.1.0'
35
+ gem 'reek', github: 'troessner/reek'
36
+ gem 'rubocop', '~> 0.9.1'
37
+ gem 'simplecov', github: 'colszowka/simplecov'
38
+ gem 'yardstick', '~> 0.9.6'
39
+
40
+ platforms :ruby_19, :ruby_20 do
41
+ #gem 'mutant', '~> 0.3.0.beta13'
40
42
  gem 'yard-spellcheck', '~> 0.1.5'
41
43
  end
42
44
 
43
- platforms :mri_19, :rbx do
44
- gem 'mutant', '~> 0.2.20'
45
+ platforms :ruby_19 do
46
+ gem 'json', '~> 1.8.0'
45
47
  end
46
48
 
47
49
  platforms :rbx do
@@ -1,36 +1,43 @@
1
1
  GIT
2
- remote: git://github.com/dkubb/equalizer.git
3
- revision: 7b0a30dee57ed0378df6b32e5defda64adaff0da
2
+ remote: git://github.com/colszowka/simplecov.git
3
+ revision: a3387f7b25100939df6a5af339580cbe3055cdc6
4
4
  specs:
5
- equalizer (0.0.5)
6
- adamantium (~> 0.0.7)
7
- backports (~> 3.2, >= 3.2.0)
5
+ simplecov (0.8.0.pre)
6
+ multi_json
7
+ simplecov-html (~> 0.7.1)
8
8
 
9
9
  GIT
10
- remote: https://github.com/datamapper/devtools.git
11
- revision: f0e3a3a42673266c46b983bc79a4ab6e1623bccc
10
+ remote: git://github.com/rom-rb/devtools.git
11
+ revision: 49e6b05b9915c990a2e45dc24f7318b4d7a95e88
12
12
  specs:
13
- devtools (0.0.1)
14
- ice_nine (~> 0.7.0)
13
+ devtools (0.0.2)
15
14
 
16
15
  GIT
17
- remote: https://github.com/troessner/reek.git
18
- revision: f302390f533dd6b59f837821d63249d0c729f931
16
+ remote: git://github.com/troessner/reek.git
17
+ revision: c901c37f8a1de8e8a89221710ae37ea89a768db0
19
18
  specs:
20
- reek (1.3.1)
19
+ reek (1.3.2)
21
20
  ruby2ruby (~> 2.0.2)
22
21
  ruby_parser (~> 3.1.1)
23
22
  sexp_processor
24
23
 
24
+ PATH
25
+ remote: .
26
+ specs:
27
+ hexp (0.2.0)
28
+ equalizer (~> 0.0)
29
+ ice_nine (~> 0.8)
30
+ nokogiri (~> 1.6)
31
+ sass (~> 3.2)
32
+
25
33
  GEM
26
34
  remote: https://rubygems.org/
27
35
  specs:
28
- abstract_type (0.0.5)
29
- backports (~> 3.0, >= 3.0.3)
30
- adamantium (0.0.7)
31
- backports (~> 3.0, >= 3.0.3)
32
- ice_nine (~> 0.7.0)
33
- backports (3.3.1)
36
+ adamantium (0.0.11)
37
+ ice_nine (~> 0.8.0)
38
+ ast (1.1.0)
39
+ backports (3.3.3)
40
+ bouncy-castle-java (1.5.0147)
34
41
  coderay (1.0.9)
35
42
  colorize (0.5.8)
36
43
  coveralls (0.6.7)
@@ -39,19 +46,22 @@ GEM
39
46
  rest-client
40
47
  simplecov (>= 0.7)
41
48
  thor
42
- descendants_tracker (0.0.1)
43
49
  diff-lcs (1.2.4)
44
- ffi (1.8.1)
50
+ equalizer (0.0.5)
51
+ adamantium (~> 0.0.6)
52
+ backports (~> 3.0, >= 3.0.3)
53
+ ffi (1.9.0)
54
+ ffi (1.9.0-java)
45
55
  ffi-hunspell (0.3.0)
46
56
  ffi (~> 1.0)
47
- flay (2.2.0)
57
+ flay (2.3.1)
48
58
  ruby_parser (~> 3.0)
49
59
  sexp_processor (~> 4.0)
50
- flog (4.0.0)
60
+ flog (4.1.1)
51
61
  ruby_parser (~> 3.1, > 3.1.0)
52
62
  sexp_processor (~> 4.0)
53
63
  formatador (0.2.4)
54
- guard (1.8.0)
64
+ guard (1.8.2)
55
65
  formatador (>= 0.2.4)
56
66
  listen (>= 1.0.0)
57
67
  lumberjack (>= 1.0.2)
@@ -60,46 +70,51 @@ GEM
60
70
  guard-bundler (1.0.0)
61
71
  bundler (~> 1.0)
62
72
  guard (~> 1.1)
63
- guard-rspec (2.5.4)
64
- guard (>= 1.1)
65
- rspec (~> 2.11)
66
- ice_nine (0.7.0)
67
- inflecto (0.0.2)
73
+ guard-rspec (3.0.2)
74
+ guard (>= 1.8)
75
+ rspec (~> 2.13)
76
+ guard-rubocop (0.2.1)
77
+ guard (~> 1.8)
78
+ rubocop (~> 0.9)
79
+ ice_nine (0.8.0)
80
+ jruby-openssl (0.8.8)
81
+ bouncy-castle-java (>= 1.5.0147)
68
82
  json (1.8.0)
69
- kramdown (1.0.2)
70
- libnotify (0.8.0)
83
+ kramdown (1.1.0)
84
+ libnotify (0.8.1)
71
85
  ffi (>= 1.0.11)
72
- listen (1.0.3)
86
+ listen (1.2.3)
73
87
  rb-fsevent (>= 0.9.3)
74
88
  rb-inotify (>= 0.9)
75
89
  rb-kqueue (>= 0.2)
76
- lumberjack (1.0.3)
77
- method_source (0.8.1)
78
- mime-types (1.23)
79
- multi_json (1.7.4)
80
- mutant (0.2.20)
81
- abstract_type (~> 0.0.3)
82
- adamantium (~> 0.0.7)
83
- backports (~> 3.0, >= 3.0.3)
84
- descendants_tracker (~> 0.0.1)
85
- diff-lcs (~> 1.2.1)
86
- equalizer (~> 0.0.5)
87
- ice_nine (~> 0.7.0)
88
- inflecto (~> 0.0.2)
89
- rspec (~> 2.13.0)
90
- to_source (~> 0.2.19)
91
- mutant-melbourne (2.0.3)
92
- nokogiri (1.5.9)
90
+ lumberjack (1.0.4)
91
+ method_source (0.8.2)
92
+ mime-types (1.24)
93
+ mini_portile (0.5.1)
94
+ multi_json (1.7.9)
95
+ nokogiri (1.6.0)
96
+ mini_portile (~> 0.5.0)
97
+ nokogiri (1.6.0-java)
98
+ mini_portile (~> 0.5.0)
99
+ parser (2.0.0.pre1)
100
+ ast (~> 1.1)
101
+ slop (~> 3.4, >= 3.4.5)
93
102
  pelusa (0.2.2)
94
103
  pry (0.9.12.2)
95
104
  coderay (~> 1.0.5)
96
105
  method_source (~> 0.8)
97
106
  slop (~> 3.4)
98
- rake (10.0.4)
107
+ pry (0.9.12.2-java)
108
+ coderay (~> 1.0.5)
109
+ method_source (~> 0.8)
110
+ slop (~> 3.4)
111
+ spoon (~> 0.0)
112
+ rainbow (1.1.4)
113
+ rake (10.1.0)
99
114
  rb-fchange (0.0.6)
100
115
  ffi
101
116
  rb-fsevent (0.9.3)
102
- rb-inotify (0.9.0)
117
+ rb-inotify (0.9.1)
103
118
  ffi (>= 0.5.0)
104
119
  rb-kqueue (0.2.0)
105
120
  ffi (>= 0.5.0)
@@ -107,33 +122,31 @@ GEM
107
122
  rbench (0.2.3)
108
123
  rest-client (1.6.7)
109
124
  mime-types (>= 1.16)
110
- rspec (2.13.0)
111
- rspec-core (~> 2.13.0)
112
- rspec-expectations (~> 2.13.0)
113
- rspec-mocks (~> 2.13.0)
114
- rspec-core (2.13.1)
115
- rspec-expectations (2.13.0)
125
+ rspec (2.14.1)
126
+ rspec-core (~> 2.14.0)
127
+ rspec-expectations (~> 2.14.0)
128
+ rspec-mocks (~> 2.14.0)
129
+ rspec-core (2.14.5)
130
+ rspec-expectations (2.14.2)
116
131
  diff-lcs (>= 1.1.3, < 2.0)
117
- rspec-mocks (2.13.1)
118
- ruby2ruby (2.0.5)
132
+ rspec-mocks (2.14.3)
133
+ rubocop (0.9.1)
134
+ parser (= 2.0.0.pre1)
135
+ rainbow (>= 1.1.4)
136
+ ruby2ruby (2.0.6)
119
137
  ruby_parser (~> 3.1)
120
138
  sexp_processor (~> 4.0)
121
139
  ruby_parser (3.1.3)
122
140
  sexp_processor (~> 4.1)
141
+ sass (3.2.10)
123
142
  sexp_processor (4.2.1)
124
- simplecov (0.7.1)
125
- multi_json (~> 1.0)
126
- simplecov-html (~> 0.7.1)
127
143
  simplecov-html (0.7.1)
128
- slop (3.4.5)
144
+ slop (3.4.6)
145
+ spoon (0.0.4)
146
+ ffi
129
147
  terminal-notifier-guard (1.5.3)
130
148
  thor (0.18.1)
131
- to_source (0.2.20)
132
- abstract_type (~> 0.0.5)
133
- adamantium (~> 0.0.7)
134
- equalizer (~> 0.0.5)
135
- mutant-melbourne (~> 2.0.3)
136
- yard (0.8.6.1)
149
+ yard (0.8.6.2)
137
150
  yard-spellcheck (0.1.5)
138
151
  ffi-hunspell (~> 0.2)
139
152
  yard (~> 0.6)
@@ -142,36 +155,36 @@ GEM
142
155
  yard (~> 0.8, >= 0.8.6)
143
156
 
144
157
  PLATFORMS
158
+ java
145
159
  ruby
146
160
 
147
161
  DEPENDENCIES
148
- backports (~> 3.3, >= 3.3.0)
149
- coveralls (~> 0.6.6)
162
+ coveralls (~> 0.6.7)
150
163
  devtools!
151
- equalizer!
152
- flay (~> 2.2.0)
153
- flog (~> 4.0.0)
154
- guard (~> 1.8.0)
164
+ flay (~> 2.3.0)
165
+ flog (~> 4.1.0)
166
+ guard (~> 1.8.1)
155
167
  guard-bundler (~> 1.0.0)
156
- guard-rspec (~> 2.5.4)
168
+ guard-rspec (~> 3.0.2)
169
+ guard-rubocop (~> 0.2.0)
170
+ hexp!
157
171
  jruby-openssl (~> 0.8.5)
158
172
  json (~> 1.8.0)
159
- kramdown (~> 1.0.1)
173
+ kramdown (~> 1.1.0)
160
174
  libnotify (~> 0.8.0)
161
- listen (~> 1.0.2)
162
- mutant (~> 0.2.20)
163
- nokogiri
175
+ listen (~> 1.2.2)
164
176
  pelusa (~> 0.2.2)
165
- rake (~> 10.0.4)
177
+ rake (~> 10.1.0)
166
178
  rb-fchange (~> 0.0.6)
167
179
  rb-fsevent (~> 0.9.3)
168
180
  rb-inotify (~> 0.9.0)
169
181
  rb-notifu (~> 0.0.4)
170
182
  rbench (~> 0.2.3)
171
- reek (~> 1.3.1)!
172
- rspec (~> 2.13.0)
173
- simplecov (~> 0.7.1)
183
+ reek!
184
+ rspec (~> 2.14.0)
185
+ rubocop (~> 0.9.1)
186
+ simplecov!
174
187
  terminal-notifier-guard (~> 1.5.3)
175
- yard (~> 0.8.6.1)
188
+ yard (~> 0.8.6.2)
176
189
  yard-spellcheck (~> 0.1.5)
177
190
  yardstick (~> 0.9.6)
data/Rakefile CHANGED
@@ -3,6 +3,22 @@ require 'rubygems/package_task'
3
3
 
4
4
  Devtools.init_rake_tasks
5
5
 
6
+ # Redefine rake:ci:metrics to disable rubocop, will tackle that laundry list
7
+ # some other time
8
+ namespace :ci do
9
+ desc 'Run metrics (except mutant, rubocop) and spec'
10
+ task travis: %w[
11
+ metrics:coverage
12
+ spec:integration
13
+ metrics:yardstick:verify
14
+ metrics:flog
15
+ metrics:flay
16
+ metrics:reek
17
+ ]
18
+ # metrics:rubocop
19
+ end
20
+
21
+
6
22
  spec = Gem::Specification.load(File.expand_path('../hexp.gemspec', __FILE__))
7
23
  gem = Gem::PackageTask.new(spec)
8
24
  gem.define
@@ -1,3 +1,3 @@
1
1
  ---
2
- threshold: 7
3
- total_score: 94.0
2
+ threshold: 11
3
+ total_score: 293.0
@@ -1,2 +1,2 @@
1
1
  ---
2
- threshold: 29.4
2
+ threshold: 45.7
@@ -10,7 +10,10 @@ ClassVariable:
10
10
  exclude: []
11
11
  ControlParameter:
12
12
  enabled: true
13
- exclude: []
13
+ exclude:
14
+ - Hexp::Builder#initialize
15
+ - Hexp::Node#rewrite
16
+ - Hexp::Node#select
14
17
  DataClump:
15
18
  enabled: true
16
19
  exclude: []
@@ -18,23 +21,35 @@ DataClump:
18
21
  min_clump_size: 2
19
22
  DuplicateMethodCall:
20
23
  enabled: true
21
- exclude: []
24
+ exclude:
25
+ - Hexp::CssSelector::Parser#rewrite_simple
26
+ - Hexp::CssSelector::Attribute#matches?
22
27
  max_calls: 2
23
28
  allow_calls: []
24
29
  FeatureEnvy:
25
30
  enabled: true
26
31
  exclude:
32
+ - Hexp::List#initialize
27
33
  - Hexp::Node::Domize#set_attributes
28
34
  - Hexp::Node::Normalize#children
29
35
  - Hexp::Node::Normalize#normalized_children
30
36
  - Hexp::Node::PP#pp_attributes
31
37
  - Hexp::Node::PP#pp_children
38
+ - Hexp::Node#process
39
+ - Hexp::Node#rewrite_children
40
+ - Hexp::Node::Children#text
41
+ - Hexp::Node::Attributes#merge_attrs
42
+ - Hexp::Node::Rewriter#coerce_rewrite_response
43
+ - Hexp::CssSelector::Parser#rewrite_simple
44
+ - Hexp::CssSelector::CommaSequence#matches?
45
+ - Hexp::Nokogiri::Reader#call
32
46
  IrresponsibleModule:
33
47
  enabled: true
34
48
  exclude: []
35
49
  LongParameterList:
36
50
  enabled: true
37
- exclude: []
51
+ exclude:
52
+ - Hexp::CssSelector::Attribute
38
53
  max_params: 2
39
54
  overrides:
40
55
  initialize:
@@ -46,35 +61,41 @@ LongYieldList:
46
61
  NestedIterators:
47
62
  enabled: true
48
63
  exclude: []
49
- max_allowed_nesting: 1
64
+ max_allowed_nesting: 2
50
65
  ignore_iterators:
51
66
  - any?
52
67
  NilCheck:
53
- enabled: true
54
- exclude:
55
- - Hexp::Node#rewrite
68
+ enabled: false
69
+ exclude: []
56
70
  RepeatedConditional:
57
71
  enabled: true
58
- exclude: []
72
+ exclude:
73
+ - Hexp::Builder
74
+ - Hexp::Node::CssSelection
59
75
  max_ifs: 1
60
76
  TooManyInstanceVariables:
61
77
  enabled: true
62
- exclude: []
63
- max_instance_variables: 3
78
+ exclude:
79
+ - Hexp::Node::Domize
80
+ - Hexp::CssSelector::Attribute
81
+ max_instance_variables: 4
64
82
  TooManyMethods:
65
83
  enabled: true
66
- exclude: []
84
+ exclude:
85
+ - Hexp::Node
86
+ - Hexp::TextNode
67
87
  max_methods: 10
68
88
  TooManyStatements:
69
89
  enabled: true
70
90
  exclude:
71
- - each
72
- - Hexp::Node#rewrite
73
- - Hexp::Node::Normalize#normalized_children
74
- max_statements: 5
91
+ - Hexp::Builder#tag!
92
+ - Hexp::CssSelector::Attribute#matches?
93
+ - Hexp::CssSelector::Parser#rewrite_simple
94
+ max_statements: 6
75
95
  UncommunicativeMethodName:
76
96
  enabled: true
77
- exclude: []
97
+ exclude:
98
+ - Hexp#self.Array
78
99
  reject:
79
100
  - !ruby/regexp /^[a-z]$/
80
101
  - !ruby/regexp /[0-9]$/
@@ -97,7 +118,8 @@ UncommunicativeParameterName:
97
118
  accept: []
98
119
  UncommunicativeVariableName:
99
120
  enabled: true
100
- exclude: []
121
+ exclude:
122
+ - Hexp::Node::Attributes#set_attrs
101
123
  reject:
102
124
  - !ruby/regexp /^.$/
103
125
  - !ruby/regexp /[0-9]$/
@@ -105,11 +127,13 @@ UncommunicativeVariableName:
105
127
  accept: []
106
128
  UnusedParameters:
107
129
  enabled: true
108
- exclude: []
130
+ exclude:
131
+ - Hexp::TextNode#class?
109
132
  UtilityFunction:
110
133
  enabled: true
111
134
  exclude:
112
135
  - Hexp::List#initialize
113
136
  - Hexp::Node::Domize#set_attributes
114
137
  - Hexp::TextNode#attributes
138
+ - Hexp::TextNode#children
115
139
  max_helper_calls: 0