puppet-lint-manifest_whitespace-check 0.1.4 → 0.1.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 82fd48a0b533bc6357b7e250f945f8ab3f0ba80625a19fa060fde543bf854dae
4
- data.tar.gz: 5289f75f1e16b08fb0b18c6798326017625d6a9b71cb061e9f020e4267630a45
3
+ metadata.gz: e80c80c6f7e442284b4e19c5ba0dc556dedaca26bbdb2ab51cca142cea6000b9
4
+ data.tar.gz: ba85e3831db963d8a5dac5f423377bd1bc8cb780a0e780fc3eb892d854d7419a
5
5
  SHA512:
6
- metadata.gz: 4ff960cc339885dfbfa62823058381bb609ca8de39f1047837f2882efb325e176251dcec6f9786907b5fa14145e4f8ad0dfea52e942eadc6909ebc1f8f8f3dd1
7
- data.tar.gz: 9a4f2cd1929e5ca731efb25894730e0ec793d4f2ebc9f3a46baa045deb9d6891e092402afe42acdd8cb83e6cfa808d7033fdb515d60360a4be1a7452e83f54dd
6
+ metadata.gz: d6bc3ffe70c55c49dd71149291fae2be47b25fd9f4409026f69330be7c2368a5ea97f259f2e4899844e4bfeeff7311b492a80ad0882340e8398709b06be13887
7
+ data.tar.gz: d4d4c42cfa65144d4d5ce71edf7d46ce278a1e2a1efcaff866c73f73b3bbe9c573500592b82c0689314c77dd665f4eca0c325f12552b9b5e5b95239d57dfb1c2
@@ -4,7 +4,7 @@ PuppetLint.new_check(:manifest_whitespace_closing_brace_before) do
4
4
  def check
5
5
  tokens.select { |token| token.type == :RBRACE }.each do |brace_token|
6
6
  prev_token = brace_token.prev_token
7
- prev_code_token = brace_token.prev_code_token
7
+ prev_code_token = prev_non_space_token(brace_token)
8
8
 
9
9
  next unless prev_token && prev_code_token
10
10
  next if %i[LBRACE RBRACK RBRACE].include?(prev_token.type)
@@ -66,7 +66,7 @@ PuppetLint.new_check(:manifest_whitespace_closing_brace_after) do
66
66
  next if after_bracket_tokens.include?(next_token.type)
67
67
 
68
68
  if next_token.type == :WHITESPACE
69
- next_code_token = brace_token.next_code_token
69
+ next_code_token = next_non_space_token(brace_token)
70
70
  next unless next_code_token
71
71
  next unless after_bracket_tokens.include?(next_code_token.type)
72
72
  end
@@ -6,7 +6,7 @@ PuppetLint.new_check(:manifest_whitespace_closing_bracket_before) do
6
6
  prev_token = bracket_token.prev_token
7
7
  next unless prev_token
8
8
 
9
- prev_code_token = bracket_token.prev_code_token
9
+ prev_code_token = prev_non_space_token(bracket_token)
10
10
  next unless prev_code_token
11
11
 
12
12
  next unless %i[NEWLINE INDENT WHITESPACE].include?(prev_token.type)
@@ -56,7 +56,7 @@ PuppetLint.new_check(:manifest_whitespace_closing_bracket_after) do
56
56
  next if after_bracket_tokens.include?(next_token.type)
57
57
 
58
58
  if next_token.type == :WHITESPACE
59
- next_code_token = bracket_token.next_code_token
59
+ next_code_token = next_non_space_token(bracket_token)
60
60
  next unless next_code_token
61
61
  next unless after_bracket_tokens.include?(next_code_token.type)
62
62
  end
@@ -4,10 +4,10 @@ PuppetLint.new_check(:manifest_whitespace_opening_brace_before) do
4
4
  def check
5
5
  tokens.select { |token| token.type == :LBRACE }.each do |brace_token|
6
6
  prev_token = brace_token.prev_token
7
- prev_code_token = brace_token.prev_code_token
7
+ prev_code_token = prev_non_space_token(brace_token)
8
8
 
9
9
  next unless prev_token && prev_code_token
10
- next if %i[LBRACK LBRACE COMMA].include?(prev_code_token.type)
10
+ next if %i[LBRACK LBRACE COMMA COMMENT].include?(prev_code_token.type)
11
11
  next unless tokens.index(prev_code_token) != tokens.index(brace_token) - 2 ||
12
12
  !is_single_space(prev_token)
13
13
 
@@ -24,7 +24,7 @@ PuppetLint.new_check(:manifest_whitespace_opening_brace_before) do
24
24
  def fix(problem)
25
25
  token = problem[:token]
26
26
  prev_token = token.prev_token
27
- prev_code_token = token.prev_code_token
27
+ prev_code_token = prev_non_space_token(token)
28
28
 
29
29
  while prev_code_token != prev_token
30
30
  unless %i[WHITESPACE INDENT NEWLINE].include?(prev_token.type)
@@ -4,7 +4,7 @@ PuppetLint.new_check(:manifest_whitespace_opening_bracket_before) do
4
4
  def check
5
5
  tokens.select { |token| token.type == :LBRACK }.each do |bracket_token|
6
6
  prev_token = bracket_token.prev_token
7
- prev_code_token = bracket_token.prev_code_token
7
+ prev_code_token = prev_non_space_token(bracket_token)
8
8
 
9
9
  next unless prev_token && prev_code_token
10
10
  next if %i[LBRACK LBRACE COMMA SEMIC].include?(prev_code_token.type)
@@ -25,7 +25,7 @@ PuppetLint.new_check(:manifest_whitespace_opening_bracket_before) do
25
25
  def fix(problem)
26
26
  token = problem[:token]
27
27
  prev_token = token.prev_token
28
- prev_code_token = token.prev_code_token
28
+ prev_code_token = prev_non_space_token(token)
29
29
 
30
30
  while prev_code_token != prev_token
31
31
  unless %i[WHITESPACE INDENT NEWLINE].include?(prev_token.type)
@@ -11,3 +11,15 @@ end
11
11
  def after_bracket_tokens
12
12
  %i[RBRACE RBRACK RPAREN SEMIC COMMA COLON NEWLINE DQPOST]
13
13
  end
14
+
15
+ def prev_non_space_token(token)
16
+ while token = token.prev_token
17
+ return token unless %i[WHITESPACE INDENT NEWLINE].include?(token.type)
18
+ end
19
+ end
20
+
21
+ def next_non_space_token(token)
22
+ while token = token.next_token
23
+ return token unless %i[WHITESPACE INDENT NEWLINE].include?(token.type)
24
+ end
25
+ end
@@ -5,6 +5,20 @@ require 'spec_helper'
5
5
  describe 'manifest_whitespace_closing_brace_before' do
6
6
  let(:closing_brace_msg) { 'there should be a bracket or a single newline before a closing brace' }
7
7
 
8
+ context 'with comment only' do
9
+ let(:code) do
10
+ <<~EOF
11
+ $value7 = {
12
+ # nothing
13
+ }
14
+ EOF
15
+ end
16
+
17
+ it 'should detect no problems' do
18
+ expect(problems).to have(0).problem
19
+ end
20
+ end
21
+
8
22
  context 'with no spaces' do
9
23
  let(:code) do
10
24
  <<~EOF
@@ -30,6 +44,9 @@ describe 'manifest_whitespace_closing_brace_before' do
30
44
  $value5 = []
31
45
  $value6 = {}
32
46
  $value7 = "x${server_facts['environment']}y"
47
+ $value8 = {
48
+ # nothing
49
+ }
33
50
 
34
51
  if someothercondition { include ::otherclass}
35
52
  if somecondition {
@@ -91,6 +108,9 @@ describe 'manifest_whitespace_closing_brace_before' do
91
108
  $value5 = []
92
109
  $value6 = {}
93
110
  $value7 = "x${server_facts['environment']}y"
111
+ $value8 = {
112
+ # nothing
113
+ }
94
114
 
95
115
  if someothercondition { include ::otherclass }
96
116
  if somecondition {
@@ -5,6 +5,20 @@ require 'spec_helper'
5
5
  describe 'manifest_whitespace_opening_brace_before' do
6
6
  let(:opening_brace_msg) { 'there should be a single space before an opening brace' }
7
7
 
8
+ context 'with comment only' do
9
+ let(:code) do
10
+ <<~EOF
11
+ $value7 = {
12
+ # nothing
13
+ }
14
+ EOF
15
+ end
16
+
17
+ it 'should detect no problems' do
18
+ expect(problems).to have(0).problem
19
+ end
20
+ end
21
+
8
22
  context 'with no spaces' do
9
23
  let(:code) do
10
24
  <<~EOF
@@ -29,6 +43,9 @@ describe 'manifest_whitespace_opening_brace_before' do
29
43
  $value4 = ['somekey']
30
44
  $value5 = []
31
45
  $value6 = {}
46
+ $value7 = {
47
+ # nothing
48
+ }
32
49
 
33
50
  if somecondition{
34
51
  class{ 'example2':
@@ -91,6 +108,9 @@ describe 'manifest_whitespace_opening_brace_before' do
91
108
  $value4 = ['somekey']
92
109
  $value5 = []
93
110
  $value6 = {}
111
+ $value7 = {
112
+ # nothing
113
+ }
94
114
 
95
115
  if somecondition {
96
116
  class { 'example2':
@@ -332,29 +352,7 @@ describe 'manifest_whitespace_opening_brace_before' do
332
352
 
333
353
  context 'with fix disabled' do
334
354
  it 'should detect a single problem' do
335
- expect(problems).to have(2).problem
336
- end
337
-
338
- it 'should create a error' do
339
- expect(problems).to contain_error(opening_brace_msg).on_line(9).in_column(1)
340
- end
341
- end
342
-
343
- context 'with fix enabled' do
344
- before do
345
- PuppetLint.configuration.fix = true
346
- end
347
-
348
- after do
349
- PuppetLint.configuration.fix = false
350
- end
351
-
352
- it 'should detect a single problem' do
353
- expect(problems).to have(2).problem
354
- end
355
-
356
- it 'should not fix the manifest' do
357
- expect(problems).to contain_error(opening_brace_msg).on_line(9).in_column(1)
355
+ expect(problems).to have(0).problem
358
356
  end
359
357
  end
360
358
  end
@@ -516,6 +514,9 @@ describe 'manifest_whitespace_opening_brace_after' do
516
514
  $value4 = ['somekey']
517
515
  $value5 = []
518
516
  $value6 = {}
517
+ $value7 = {
518
+ # nothing
519
+ }
519
520
 
520
521
  if somecondition {
521
522
  class { 'example2':
@@ -578,6 +579,9 @@ describe 'manifest_whitespace_opening_brace_after' do
578
579
  $value4 = ['somekey']
579
580
  $value5 = []
580
581
  $value6 = {}
582
+ $value7 = {
583
+ # nothing
584
+ }
581
585
 
582
586
  if somecondition {
583
587
  class { 'example2':
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-lint-manifest_whitespace-check
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jo Vandeginste