puppet-lint-absolute_classname-check 1.0.0 → 2.0.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
  SHA256:
3
- metadata.gz: 8151b5f2ac93aa1535818002c3f0a9a506c2de42a4e48c34aa178de66e306f77
4
- data.tar.gz: 35557e3d473126306e915a2938d1f76c7e63894e8f037ec441989380cf93afd8
3
+ metadata.gz: 0f8457df6a20dcdc3263f3a9d07c24a46affe2ead023a08da5ae0ed52dc22763
4
+ data.tar.gz: 34e1a29a81bffae3cdcb73d47837576778d3ca36146d196822e7b59795b06254
5
5
  SHA512:
6
- metadata.gz: 258fdd9e006ba53677ffcf094656e8ee4d2a8e5578e0cac65add4be569a91f7c9bf27728199dd5705e4de350f58a363d2244c8ab69bb149ff25498192bfa1b5e
7
- data.tar.gz: 9ece5d2055e39f6dd4cbe737d9aad9627b2bb22a3c2bd598d1cd32a2381e5f978a5522f4bd36de9c48d0b3feaa5cca3291f368ca47404a2f0d03d410482fee8d
6
+ metadata.gz: 8f84c2b01a0d6d5eaa56279b24459889f3e00be262dfb931c9e5ad0f9b9f24bc7b4eeb7c8975d7e66ddea506837828a82b0f8fc1968cf8afb8886f6ff70b9e0c
7
+ data.tar.gz: 2a804b84105435ff4be5e344e2b9cb95270c7d3ecda64e733cff498eb77f4379988119504b8a7f7a66599af2998c7ef91d1a07b491bfb7b9f6062bc5ac0fa62a
data/README.md CHANGED
@@ -5,7 +5,6 @@ puppet-lint-absolute_classname-check
5
5
  [![Gem Version](https://img.shields.io/gem/v/puppet-lint-absolute_classname-check.svg)](https://rubygems.org/gems/puppet-lint-absolute_classname-check)
6
6
  [![Gem Downloads](https://img.shields.io/gem/dt/puppet-lint-absolute_classname-check.svg)](https://rubygems.org/gems/puppet-lint-absolute_classname-check)
7
7
  [![Coverage Status](https://img.shields.io/coveralls/voxpupuli/puppet-lint-absolute_classname-check.svg)](https://coveralls.io/r/voxpupuli/puppet-lint-absolute_classname-check?branch=master)
8
- [![Gemnasium](https://img.shields.io/gemnasium/voxpupuli/puppet-lint-absolute_classname-check.svg)](https://gemnasium.com/voxpupuli/puppet-lint-absolute_classname-check)
9
8
  [![Donated by Camptocamp](https://img.shields.io/badge/donated%20by-camptocamp-fb7047.svg)](#transfer-notice)
10
9
 
11
10
  A puppet-lint plugin to check that classes are included by their absolute name.
@@ -39,26 +38,18 @@ gem 'puppet-lint-absolute_classname-check', :require => false
39
38
 
40
39
  ### Relative class name inclusion
41
40
 
42
- Including a class by a relative name might lead to unexpected results [in Puppet 3](https://docs.puppet.com/puppet/3/lang_namespaces.html#relative-name-lookup-and-incorrect-name-resolution).
41
+ Including a class by a relative name might lead to unexpected results [in Puppet 3](https://docs.puppet.com/puppet/3/lang_namespaces.html#relative-name-lookup-and-incorrect-name-resolution). That's why a lot of manifests explicitly include by the absolute name. Since Puppet 4 names are always absolute and this is no longer needed. This lint check helps to clean up your manifests.
43
42
 
44
43
  #### What you have done
45
44
 
46
45
  ```puppet
47
- include foobar
46
+ include ::foobar
48
47
  ```
49
48
 
50
49
  #### What you should have done
51
50
 
52
51
  ```puppet
53
- include ::foobar
54
- ```
55
-
56
- #### Reverse this check
57
-
58
- This check can be reversed to check for Puppet > 4.
59
-
60
- ```ruby
61
- PuppetLint.configuration.absolute_classname_reverse = true
52
+ include foobar
62
53
  ```
63
54
 
64
55
  #### Disabling the check
@@ -87,7 +78,6 @@ Previously: https://github.com/camptocamp/puppet-lint-absolute_classname-check
87
78
 
88
79
  To make a new release, please do:
89
80
  * Update the version in the `puppet-lint-absolute_classname-check.gemspec` file
90
- * Update the version in the Rakefile
91
81
  * Install gems with `bundle install --with release --path .vendor`
92
82
  * generate the changelog with `bundle exec rake changelog`
93
83
  * Create a PR with it
@@ -1,14 +1,8 @@
1
1
  PuppetLint.new_check(:relative_classname_inclusion) do
2
2
  def check
3
+ message = 'class included by absolute name (::$class)'
4
+
3
5
  tokens.each_with_index do |token, token_idx|
4
- reverse = PuppetLint.configuration.absolute_classname_reverse || false
5
- if reverse
6
- pattern = '^(?!::)'
7
- message = 'class included by absolute name (::$class)'
8
- else
9
- pattern = '^::'
10
- message = 'class included by relative name'
11
- end
12
6
  if [:NAME,:FUNCTION_NAME].include?(token.type) && ['include','contain','require'].include?(token.value)
13
7
  s = token.next_code_token
14
8
  next if s.nil?
@@ -22,7 +16,7 @@ PuppetLint.new_check(:relative_classname_inclusion) do
22
16
  in_function += 1
23
17
  elsif in_function > 0 && n && n.type == :RPAREN
24
18
  in_function -= 1
25
- elsif in_function.zero? && s.value !~ /#{pattern}/
19
+ elsif in_function.zero? && s.value.start_with?('::')
26
20
  notify :warning, {
27
21
  message: message,
28
22
  line: s.line,
@@ -36,7 +30,7 @@ PuppetLint.new_check(:relative_classname_inclusion) do
36
30
  elsif token.type == :CLASS and token.next_code_token.type == :LBRACE
37
31
  s = token.next_code_token
38
32
  while s.type != :COLON
39
- if (s.type == :NAME || s.type == :SSTRING) && s.value !~ /#{pattern}/
33
+ if (s.type == :NAME || s.type == :SSTRING) && s.value.start_with?('::')
40
34
  notify :warning, {
41
35
  message: message,
42
36
  line: s.line,
@@ -51,11 +45,6 @@ PuppetLint.new_check(:relative_classname_inclusion) do
51
45
  end
52
46
 
53
47
  def fix(problem)
54
- reverse = PuppetLint.configuration.absolute_classname_reverse || false
55
- problem[:token].value = if reverse
56
- problem[:token].value[2..-1]
57
- else
58
- '::' + problem[:token].value
59
- end
48
+ problem[:token].value = problem[:token].value[2..-1]
60
49
  end
61
50
  end
@@ -1,419 +1,202 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'relative_classname_inclusion' do
4
- describe '(default)' do
5
- let(:msg) { 'class included by relative name' }
6
-
7
- context 'with fix disabled' do
8
- context 'when absolute names are used' do
9
- let(:code) do
10
- <<-EOS
11
- include ::foobar
12
- include('::foobar')
13
- include(foobar(baz))
14
- include(foobar('baz'))
15
-
16
- include ::foo, ::bar
17
- include('::foo', '::bar')
18
-
19
- class { '::foobar': }
20
-
21
- class foobar {
22
- }
23
-
24
- contain ::foobar
25
- contain('::foobar')
26
- contain(foobar(baz))
27
- contain(foobar('baz'))
28
-
29
- require ::foobar
30
- require('::foobar')
31
- require(foobar(baz))
32
- require(foobar('baz'))
33
- EOS
34
- end
35
-
36
- it 'should not detect any problems' do
37
- expect(problems).to have(0).problems
38
- end
39
- end
4
+ let(:msg) { 'class included by absolute name (::$class)' }
5
+
6
+ context 'with fix disabled' do
7
+ context 'when absolute names are used' do
8
+ let(:code) do
9
+ <<-EOS
10
+ include ::foobar
11
+ include('::foobar')
12
+ include(foobar(baz))
13
+ include(foobar('baz'))
14
+
15
+ include ::foo, ::bar
16
+ include('::foo', '::bar')
17
+
18
+ class { '::foobar': }
40
19
 
41
- context 'when relative names are used' do
42
- let(:code) do
43
- <<-EOS
44
- include foobar
45
- include(foobar)
46
- class { 'foobar': }
47
- contain foobar
48
- contain(foobar)
49
- require foobar
50
- require(foobar)
51
- EOS
52
- end
53
-
54
- it 'should detect 7 problems' do
55
- expect(problems).to have(7).problems
56
- end
57
-
58
- it 'should create warnings' do
59
- expect(problems).to contain_warning(msg).on_line(1).in_column(19)
60
- expect(problems).to contain_warning(msg).on_line(2).in_column(19)
61
- expect(problems).to contain_warning(msg).on_line(3).in_column(19)
62
- expect(problems).to contain_warning(msg).on_line(4).in_column(19)
63
- expect(problems).to contain_warning(msg).on_line(5).in_column(19)
64
- expect(problems).to contain_warning(msg).on_line(6).in_column(19)
65
- expect(problems).to contain_warning(msg).on_line(7).in_column(19)
66
- end
20
+ class foobar {
21
+ }
22
+
23
+ contain ::foobar
24
+ contain('::foobar')
25
+ contain(foobar(baz))
26
+ contain(foobar('baz'))
27
+
28
+ require ::foobar
29
+ require('::foobar')
30
+ require(foobar(baz))
31
+ require(foobar('baz'))
32
+ EOS
67
33
  end
68
34
 
69
- context 'when the require metadata parameter is used' do
70
- let(:code) do
71
- <<-EOS
72
- file { '/path':
73
- ensure => present,
74
- require => Shellvar['http_proxy'],
75
- }
76
- EOS
77
- end
78
-
79
- it 'should detect no problems' do
80
- expect(problems).to have(0).problems
81
- end
35
+ it 'should detect 11 problems' do
36
+ expect(problems).to have(11).problems
82
37
  end
83
38
 
84
- context 'when require is a hash key' do
85
- let(:code) do
86
- <<-EOS
87
- $defaults = {
88
- require => Exec['apt_update'],
89
- }
90
- $defaults = {
91
- 'require' => Exec['apt_update'],
92
- }
93
- EOS
94
- end
95
-
96
- it 'should detect no problems' do
97
- expect(problems).to have(0).problems
98
- end
39
+ it 'should create warnings' do
40
+ expect(problems).to contain_warning(msg).on_line(1).in_column(17)
41
+ expect(problems).to contain_warning(msg).on_line(2).in_column(17)
42
+ expect(problems).to contain_warning(msg).on_line(6).in_column(17)
43
+ expect(problems).to contain_warning(msg).on_line(6).in_column(24)
44
+ expect(problems).to contain_warning(msg).on_line(7).in_column(17)
45
+ expect(problems).to contain_warning(msg).on_line(7).in_column(26)
46
+ expect(problems).to contain_warning(msg).on_line(9).in_column(17)
47
+ expect(problems).to contain_warning(msg).on_line(14).in_column(17)
48
+ expect(problems).to contain_warning(msg).on_line(15).in_column(17)
49
+ expect(problems).to contain_warning(msg).on_line(19).in_column(17)
50
+ expect(problems).to contain_warning(msg).on_line(20).in_column(17)
99
51
  end
100
52
  end
101
53
 
102
- context 'with fix enabled' do
103
- before do
104
- PuppetLint.configuration.fix = true
54
+ context 'when relative names are used' do
55
+ let(:code) do
56
+ <<-EOS
57
+ include foobar
58
+ include(foobar)
59
+ class { 'foobar': }
60
+ contain foobar
61
+ contain(foobar)
62
+ require foobar
63
+ require(foobar)
64
+ EOS
105
65
  end
106
66
 
107
- after do
108
- PuppetLint.configuration.fix = false
67
+ it 'should not detect a problem' do
68
+ expect(problems).to have(0).problems
109
69
  end
70
+ end
110
71
 
111
- context 'when absolute names are used' do
112
- let(:code) do
113
- <<-EOS
114
- include ::foobar
115
- include('::foobar')
116
- include(foobar(baz))
117
- include(foobar('baz'))
118
-
119
- include ::foo, ::bar
120
- include('::foo', '::bar')
121
-
122
- class { '::foobar': }
123
-
124
- class foobar {
125
- }
126
-
127
- contain ::foobar
128
- contain('::foobar')
129
- contain(foobar(baz))
130
- contain(foobar('baz'))
131
-
132
- require ::foobar
133
- require('::foobar')
134
- require(foobar(baz))
135
- require(foobar('baz'))
136
- EOS
137
- end
138
-
139
- it 'should not detect any problems' do
140
- expect(problems).to have(0).problems
141
- end
72
+ context 'when the require metadata parameter is used' do
73
+ let(:code) do
74
+ <<-EOS
75
+ file { '/path':
76
+ ensure => present,
77
+ require => Shellvar['http_proxy'],
78
+ }
79
+ EOS
142
80
  end
143
81
 
144
- context 'when relative names are used' do
145
- let(:code) do
146
- <<-EOS
147
- include foobar
148
- include(foobar)
149
- class { 'foobar': }
150
- contain foobar
151
- contain(foobar)
152
- require foobar
153
- require(foobar)
154
- EOS
155
- end
156
-
157
- it 'should detect 7 problems' do
158
- expect(problems).to have(7).problems
159
- end
160
-
161
- it 'should fix the problems' do
162
- expect(problems).to contain_fixed(msg).on_line(1).in_column(19)
163
- expect(problems).to contain_fixed(msg).on_line(2).in_column(19)
164
- expect(problems).to contain_fixed(msg).on_line(3).in_column(19)
165
- expect(problems).to contain_fixed(msg).on_line(4).in_column(19)
166
- expect(problems).to contain_fixed(msg).on_line(5).in_column(19)
167
- expect(problems).to contain_fixed(msg).on_line(6).in_column(19)
168
- expect(problems).to contain_fixed(msg).on_line(7).in_column(19)
169
- end
170
-
171
- it 'should should add colons' do
172
- expect(manifest).to eq(
173
- <<-EOS
174
- include ::foobar
175
- include(::foobar)
176
- class { '::foobar': }
177
- contain ::foobar
178
- contain(::foobar)
179
- require ::foobar
180
- require(::foobar)
181
- EOS
182
- )
183
- end
82
+ it 'should detect no problems' do
83
+ expect(problems).to have(0).problems
184
84
  end
185
85
  end
186
86
 
187
- describe '(#12) behavior of lookup("foo", {merge => unique}).include' do
188
- let(:msg) { '(#12) class included with lookup("foo", {merge => unique}).include' }
189
-
87
+ context 'when require is a hash key' do
190
88
  let(:code) do
191
89
  <<-EOS
192
- lookup(foo, {merge => unique}).include
90
+ $defaults = {
91
+ require => Exec['apt_update'],
92
+ }
93
+ $defaults = {
94
+ 'require' => Exec['apt_update'],
95
+ }
193
96
  EOS
194
97
  end
195
98
 
196
- it 'should not detect any problems' do
99
+ it 'should detect no problems' do
197
100
  expect(problems).to have(0).problems
198
101
  end
199
102
  end
200
103
  end
201
104
 
202
- describe '(reversed)' do
105
+ context 'with fix enabled' do
203
106
  before do
204
- PuppetLint.configuration.absolute_classname_reverse = true
107
+ PuppetLint.configuration.fix = true
205
108
  end
206
- let(:msg) { 'class included by absolute name (::$class)' }
207
-
208
- context 'with fix disabled' do
209
- context 'when absolute names are used' do
210
- let(:code) do
211
- <<-EOS
212
- include ::foobar
213
- include('::foobar')
214
- include(foobar(baz))
215
- include(foobar('baz'))
216
-
217
- include ::foo, ::bar
218
- include('::foo', '::bar')
219
-
220
- class { '::foobar': }
221
-
222
- class foobar {
223
- }
224
-
225
- contain ::foobar
226
- contain('::foobar')
227
- contain(foobar(baz))
228
- contain(foobar('baz'))
229
-
230
- require ::foobar
231
- require('::foobar')
232
- require(foobar(baz))
233
- require(foobar('baz'))
234
- EOS
235
- end
236
-
237
- it 'should detect 11 problems' do
238
- expect(problems).to have(11).problems
239
- end
240
-
241
- it 'should create warnings' do
242
- expect(problems).to contain_warning(msg).on_line(1).in_column(19)
243
- expect(problems).to contain_warning(msg).on_line(2).in_column(19)
244
- expect(problems).to contain_warning(msg).on_line(6).in_column(19)
245
- expect(problems).to contain_warning(msg).on_line(6).in_column(26)
246
- expect(problems).to contain_warning(msg).on_line(7).in_column(19)
247
- expect(problems).to contain_warning(msg).on_line(7).in_column(28)
248
- expect(problems).to contain_warning(msg).on_line(9).in_column(19)
249
- expect(problems).to contain_warning(msg).on_line(14).in_column(19)
250
- expect(problems).to contain_warning(msg).on_line(15).in_column(19)
251
- expect(problems).to contain_warning(msg).on_line(19).in_column(19)
252
- expect(problems).to contain_warning(msg).on_line(20).in_column(19)
253
- end
254
- end
255
109
 
256
- context 'when relative names are used' do
257
- let(:code) do
258
- <<-EOS
259
- include foobar
260
- include(foobar)
261
- class { 'foobar': }
262
- contain foobar
263
- contain(foobar)
264
- require foobar
265
- require(foobar)
266
- EOS
267
- end
268
-
269
- it 'should not detect a problem' do
270
- expect(problems).to have(0).problems
271
- end
272
- end
110
+ after do
111
+ PuppetLint.configuration.fix = false
112
+ end
273
113
 
274
- context 'when the require metadata parameter is used' do
275
- let(:code) do
276
- <<-EOS
277
- file { '/path':
278
- ensure => present,
279
- require => Shellvar['http_proxy'],
280
- }
281
- EOS
282
- end
283
-
284
- it 'should detect no problems' do
285
- expect(problems).to have(0).problems
286
- end
287
- end
114
+ context 'when absolute names are used' do
115
+ let(:code) do
116
+ <<-EOS
117
+ include ::foobar
118
+ include('::foobar')
119
+ include(foobar(baz))
120
+ include(foobar('baz'))
288
121
 
289
- context 'when require is a hash key' do
290
- let(:code) do
291
- <<-EOS
292
- $defaults = {
293
- require => Exec['apt_update'],
294
- }
295
- $defaults = {
296
- 'require' => Exec['apt_update'],
297
- }
298
- EOS
299
- end
300
-
301
- it 'should detect no problems' do
302
- expect(problems).to have(0).problems
303
- end
304
- end
305
- end
122
+ include ::foo, ::bar
123
+ include('::foo', '::bar')
124
+
125
+ class { '::foobar': }
306
126
 
307
- context 'with fix enabled' do
308
- before do
309
- PuppetLint.configuration.fix = true
127
+ class foobar {
128
+ }
129
+
130
+ contain ::foobar
131
+ contain('::foobar')
132
+ contain(foobar(baz))
133
+ contain(foobar('baz'))
134
+
135
+ require ::foobar
136
+ require('::foobar')
137
+ require(foobar(baz))
138
+ require(foobar('baz'))
139
+ EOS
310
140
  end
311
141
 
312
- after do
313
- PuppetLint.configuration.fix = false
142
+ it 'should detect 11 problems' do
143
+ expect(problems).to have(11).problems
314
144
  end
315
145
 
316
- context 'when absolute names are used' do
317
- let(:code) do
318
- <<-EOS
319
- include ::foobar
320
- include('::foobar')
321
- include(foobar(baz))
322
- include(foobar('baz'))
323
-
324
- include ::foo, ::bar
325
- include('::foo', '::bar')
326
-
327
- class { '::foobar': }
328
-
329
- class foobar {
330
- }
331
-
332
- contain ::foobar
333
- contain('::foobar')
334
- contain(foobar(baz))
335
- contain(foobar('baz'))
336
-
337
- require ::foobar
338
- require('::foobar')
339
- require(foobar(baz))
340
- require(foobar('baz'))
341
- EOS
342
- end
343
-
344
- it 'should detect 11 problems' do
345
- expect(problems).to have(11).problems
346
- end
347
-
348
- it 'should fix the problems' do
349
- expect(problems).to contain_fixed(msg).on_line(1).in_column(19)
350
- expect(problems).to contain_fixed(msg).on_line(2).in_column(19)
351
- expect(problems).to contain_fixed(msg).on_line(6).in_column(19)
352
- expect(problems).to contain_fixed(msg).on_line(6).in_column(26)
353
- expect(problems).to contain_fixed(msg).on_line(7).in_column(19)
354
- expect(problems).to contain_fixed(msg).on_line(7).in_column(28)
355
- expect(problems).to contain_fixed(msg).on_line(9).in_column(19)
356
- expect(problems).to contain_fixed(msg).on_line(14).in_column(19)
357
- expect(problems).to contain_fixed(msg).on_line(15).in_column(19)
358
- expect(problems).to contain_fixed(msg).on_line(19).in_column(19)
359
- expect(problems).to contain_fixed(msg).on_line(20).in_column(19)
360
- end
361
-
362
- it 'should should remove colons' do
363
- expect(manifest).to eq(
364
- <<-EOS
365
- include foobar
366
- include('foobar')
367
- include(foobar(baz))
368
- include(foobar('baz'))
369
-
370
- include foo, bar
371
- include('foo', 'bar')
372
-
373
- class { 'foobar': }
374
-
375
- class foobar {
376
- }
377
-
378
- contain foobar
379
- contain('foobar')
380
- contain(foobar(baz))
381
- contain(foobar('baz'))
382
-
383
- require foobar
384
- require('foobar')
385
- require(foobar(baz))
386
- require(foobar('baz'))
387
- EOS
388
- )
389
- end
146
+ it 'should fix the problems' do
147
+ expect(problems).to contain_fixed(msg).on_line(1).in_column(17)
148
+ expect(problems).to contain_fixed(msg).on_line(2).in_column(17)
149
+ expect(problems).to contain_fixed(msg).on_line(6).in_column(17)
150
+ expect(problems).to contain_fixed(msg).on_line(6).in_column(24)
151
+ expect(problems).to contain_fixed(msg).on_line(7).in_column(17)
152
+ expect(problems).to contain_fixed(msg).on_line(7).in_column(26)
153
+ expect(problems).to contain_fixed(msg).on_line(9).in_column(17)
154
+ expect(problems).to contain_fixed(msg).on_line(14).in_column(17)
155
+ expect(problems).to contain_fixed(msg).on_line(15).in_column(17)
156
+ expect(problems).to contain_fixed(msg).on_line(19).in_column(17)
157
+ expect(problems).to contain_fixed(msg).on_line(20).in_column(17)
390
158
  end
391
159
 
392
- context 'when relative names are used' do
393
- let(:code) do
394
- <<-EOS
395
- include foobar
396
- include(foobar)
397
- class { 'foobar': }
398
- contain foobar
399
- contain(foobar)
400
- require foobar
401
- require(foobar)
402
- EOS
403
- end
404
-
405
- it 'should not detect any problems' do
406
- expect(problems).to have(0).problems
407
- end
160
+ it 'should should remove colons' do
161
+ expect(manifest).to eq(
162
+ <<-EOS
163
+ include foobar
164
+ include('foobar')
165
+ include(foobar(baz))
166
+ include(foobar('baz'))
167
+
168
+ include foo, bar
169
+ include('foo', 'bar')
170
+
171
+ class { 'foobar': }
172
+
173
+ class foobar {
174
+ }
175
+
176
+ contain foobar
177
+ contain('foobar')
178
+ contain(foobar(baz))
179
+ contain(foobar('baz'))
180
+
181
+ require foobar
182
+ require('foobar')
183
+ require(foobar(baz))
184
+ require(foobar('baz'))
185
+ EOS
186
+ )
408
187
  end
409
188
  end
410
189
 
411
- describe '(#12) behavior of lookup("foo", {merge => unique}).include' do
412
- let(:msg) { '(#12) class included with lookup("foo", {merge => unique}).include' }
413
-
190
+ context 'when relative names are used' do
414
191
  let(:code) do
415
192
  <<-EOS
416
- lookup(foo, {merge => unique}).include
193
+ include foobar
194
+ include(foobar)
195
+ class { 'foobar': }
196
+ contain foobar
197
+ contain(foobar)
198
+ require foobar
199
+ require(foobar)
417
200
  EOS
418
201
  end
419
202
 
@@ -422,4 +205,18 @@ describe 'relative_classname_inclusion' do
422
205
  end
423
206
  end
424
207
  end
208
+
209
+ describe '(#12) behavior of lookup("foo", {merge => unique}).include' do
210
+ let(:msg) { '(#12) class included with lookup("foo", {merge => unique}).include' }
211
+
212
+ let(:code) do
213
+ <<-EOS
214
+ lookup(foo, {merge => unique}).include
215
+ EOS
216
+ end
217
+
218
+ it 'should not detect any problems' do
219
+ expect(problems).to have(0).problems
220
+ end
221
+ end
425
222
  end
@@ -1,8 +1,5 @@
1
- unless RUBY_VERSION =~ /^1\.8/
2
- require 'coveralls'
3
- Coveralls.wear!
4
- end
1
+ require 'coveralls'
2
+ Coveralls.wear!
5
3
 
6
4
  require 'puppet-lint'
7
-
8
5
  PuppetLint::Plugins.load_spec_helper
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-lint-absolute_classname-check
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-09 00:00:00.000000000 Z
11
+ date: 2019-12-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: puppet-lint
@@ -44,20 +44,6 @@ dependencies:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: '0'
47
- - !ruby/object:Gem::Dependency
48
- name: mime-types
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: '0'
61
47
  - !ruby/object:Gem::Dependency
62
48
  name: rake
63
49
  requirement: !ruby/object:Gem::Requirement
@@ -138,14 +124,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
138
124
  requirements:
139
125
  - - ">="
140
126
  - !ruby/object:Gem::Version
141
- version: '0'
127
+ version: 2.1.0
142
128
  required_rubygems_version: !ruby/object:Gem::Requirement
143
129
  requirements:
144
130
  - - ">="
145
131
  - !ruby/object:Gem::Version
146
132
  version: '0'
147
133
  requirements: []
148
- rubygems_version: 3.0.2
134
+ rubyforge_project:
135
+ rubygems_version: 2.7.7
149
136
  signing_key:
150
137
  specification_version: 4
151
138
  summary: A puppet-lint plugin to check that classes are included by their absolute