puppet-lint-param_comment-check 0.1.1 → 0.1.2

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: b4b8ad42633483b29d912da99b108a9bcd277b7c6b1d21ebaeeedb4aa9634e12
4
- data.tar.gz: 768790358859c7375df58da9fbbd2b932a94f606647d9f13e513fc119cbd29e3
3
+ metadata.gz: 57edfb5e9c1716c1bfb583619d1a36bf57f7f4492af64f33a828dba5f4b1eec2
4
+ data.tar.gz: 3350c35a78495a1d4de4f25567af5da91cbed2601c25e3fe8e13e273e31e8f09
5
5
  SHA512:
6
- metadata.gz: eee0e509c76c55d1cc9b97ed444bdadbf1caa8a970e03e339618083d1e5019f0a18e70d627b4f691f1aa255a78a8240972db6a68d38b2a41c9f9993f3a3714e4
7
- data.tar.gz: 6af8ad1b81d6d0b9f2e4d8cbf9cee33507e6813f025691187edab23adc9f0510372e4cd88362f614066904c32243bc3bc0a550fddfe238f9e5c250bfc897f592
6
+ metadata.gz: 0e58accb1fe706bb94f24ccbe8ed80f50aee634f942360f4b29c203a206c84a7196fc0bda9c882561f7d2b9420919d703fb7444a41ac47da9d3c4a998d54ae48
7
+ data.tar.gz: 10e7eef3b38f933c9f871e727d912c88e1fc76193158dd909c6c99e9d084dd585dce554dc5573d7eb206170b2d07c7fbe530a888903e3ca15446d9fbb29fbdd7
@@ -35,7 +35,7 @@ def analyze_param_token(token, current_param)
35
35
  case token.type
36
36
  when :VARIABLE
37
37
  current_param[:name] = token.value
38
- when :CLASSREF
38
+ when :CLASSREF, :TYPE
39
39
  current_param[:type] = token.value
40
40
  when :EQUALS
41
41
  current_param[:has_default] = true
@@ -47,10 +47,15 @@ end
47
47
  # Analyze the parameters of a class or a defined type
48
48
  #
49
49
  # @param param_tokens The parameter tokens to analyze
50
- def analyze_params(param_tokens)
50
+ def analyze_params(param_tokens) # rubocop:disable Metrics/AbcSize,Metrics/CyclomaticComplexity,Metrics/MethodLength,Metrics/PerceivedComplexity
51
51
  params = []
52
52
  current_param = EMPTY_PARAM.dup
53
+ in_brackets = false
53
54
  param_tokens.reject { |token| %i[WHITESPACE NEWLINE].include? token.type }.each do |token|
55
+ in_brackets = true if token.type == :LBRACK
56
+ in_brackets = false if token.type == :RBRACK
57
+ next if in_brackets
58
+
54
59
  current_param = analyze_param_token(token, current_param) unless token.type == :COMMA
55
60
  if token.type == :COMMA
56
61
  params.append(current_param)
@@ -100,7 +105,7 @@ PuppetLint.new_check(:param_comment) do # rubocop:disable Metrics/BlockLength
100
105
  next unless comment.value.match?(/@param/) || comment.value.match?(/@option/)
101
106
  next if comment.value.strip.match?(REGEXP_PARAM_HEADER) || comment.value.strip.match?(REGEXP_OPTION_HEADER)
102
107
 
103
- return warn('Invalid param or hash option header', comment.line, comment.column)
108
+ return warn("Invalid param or hash option header: #{comment.value.strip}", comment.line, comment.column)
104
109
  end
105
110
  true
106
111
  end
@@ -34,6 +34,25 @@ describe 'param_comment' do
34
34
  end
35
35
  end
36
36
 
37
+ context 'valid code with spaces in the type' do
38
+ let(:code) do
39
+ <<~CODE
40
+ # @summary
41
+ # some class
42
+ #
43
+ # @param ensure
44
+ # Ensure it
45
+ class my_class (
46
+ Enum['present', 'absent'] $ensure = 'present'
47
+ ) {}
48
+ CODE
49
+ end
50
+
51
+ it 'should not detect any problems' do
52
+ expect(problems).to have(0).problems
53
+ end
54
+ end
55
+
37
56
  context 'code with missing parameter comment' do
38
57
  let(:code) do
39
58
  <<~CODE
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-lint-param_comment-check
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dennis Ploeger
@@ -10,6 +10,20 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2022-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: finite_machine
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: puppet-lint
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -25,13 +39,13 @@ dependencies:
25
39
  - !ruby/object:Gem::Version
26
40
  version: '1.0'
27
41
  - !ruby/object:Gem::Dependency
28
- name: finite_machine
42
+ name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - ">="
32
46
  - !ruby/object:Gem::Version
33
47
  version: '0'
34
- type: :runtime
48
+ type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
@@ -53,7 +67,7 @@ dependencies:
53
67
  - !ruby/object:Gem::Version
54
68
  version: '3.0'
55
69
  - !ruby/object:Gem::Dependency
56
- name: rspec-its
70
+ name: rspec-collection_matchers
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
@@ -67,7 +81,7 @@ dependencies:
67
81
  - !ruby/object:Gem::Version
68
82
  version: '1.0'
69
83
  - !ruby/object:Gem::Dependency
70
- name: rspec-collection_matchers
84
+ name: rspec-its
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
87
  - - "~>"
@@ -80,20 +94,6 @@ dependencies:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
96
  version: '1.0'
83
- - !ruby/object:Gem::Dependency
84
- name: rake
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rubocop
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -158,8 +158,7 @@ requirements: []
158
158
  rubygems_version: 3.0.3.1
159
159
  signing_key:
160
160
  specification_version: 4
161
- summary: '["A puppet-lint plugin to check @param comments", " A puppet-lint plugin
162
- to check that manifest files contain properly formatted @param comments.\n"]'
161
+ summary: A puppet-lint plugin to check @param comments
163
162
  test_files:
164
163
  - spec/spec_helper.rb
165
164
  - spec/puppet-lint/plugins/check_param_comment_spec.rb