puppet-lint-param_comment-check 0.1.1 → 0.1.2
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57edfb5e9c1716c1bfb583619d1a36bf57f7f4492af64f33a828dba5f4b1eec2
|
4
|
+
data.tar.gz: 3350c35a78495a1d4de4f25567af5da91cbed2601c25e3fe8e13e273e31e8f09
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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(
|
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.
|
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:
|
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: :
|
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-
|
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-
|
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:
|
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
|