checkstyle-suppression-generator 0.0.1 → 0.0.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: 42e391eb667e9f0df93569f81c1b6b6f2cfb6b870ed541d794b95ec15f71feaa
4
- data.tar.gz: 366c228d8a8d5a27cec451fe35e6a9d035f4bb03cf53e6f9a3d76cb42370d91e
3
+ metadata.gz: 3c2dfe0190d47d10a44a3a59240d91d4cb9c8bff155b5c0aeedf96315392297b
4
+ data.tar.gz: 99a3bc453897ceb46c0ceee56ad19f1c690207f90eccbc9440925d4913997c43
5
5
  SHA512:
6
- metadata.gz: 59c239fdf6265eee4930e9eccf4d96bafae357a4c461f1a74606338f876c4f4c50570bc5d546b6a0313e77e1d20a04cc7d222e4725edb845bd16c188b3fc9e4e
7
- data.tar.gz: 588388ee5b9c58b34f2fc48c2695177ffc4bb85fd795122ee12ce8bf7d09b287d96db07383dc36cc8c4a395723de7cb0718877cd627d4603d7e6db39ab7abbd6
6
+ metadata.gz: c7ece4b23329239090f0c5cfd9146876701600c3e76d8513d64302259ead07729b17171161df1fe0a268c566558a7408028fd378ae162ab8ce8db1c2f36a6740
7
+ data.tar.gz: ee047c8b9fc4b2d5099f82cf2001f9190b950830ff4967eac10b20d76a025bf9ee524b4f9923ad0e2130fc9f4250e860ae5b761de73aa0a5312a1ac460e79db9
data/README.md CHANGED
@@ -7,6 +7,22 @@
7
7
 
8
8
  A gem that takes as input the output of a maven checkstyle plugin checkstyle:check goal and generates a suppressions.xml file.
9
9
 
10
+ # Installation
11
+
12
+ ### Bundler
13
+
14
+ ```ruby
15
+ gem 'checkstyle-suppression-generator'
16
+ ```
17
+
18
+ ### Manual
19
+
20
+ ```sh
21
+ gem install checkstyle-suppression-generator
22
+ ```
23
+
24
+ ## Usage
25
+
10
26
  Example Input:
11
27
  ```sh
12
28
  [INFO] Scanning for projects...
@@ -4,13 +4,20 @@
4
4
  class CheckstyleOutputToken
5
5
  attr_reader :severity, :file_name, :offense
6
6
 
7
+ OFFENSE_CONVERSION = {
8
+ 'noTrailingWhitespace' => 'RegexpSinglelineCheck',
9
+ 'noConsecutiveLines' => 'RegexpMultilineCheck',
10
+ 'commentFirstSentenceMultiline' => 'RegexpMultilineCheck',
11
+ 'commentFirstSentenceSingleline' => 'RegexpSinglelineCheck'
12
+ }.freeze
13
+
7
14
  def initialize(token_data)
8
15
  @severity = token_data[1]
9
16
  @file_name = token_data[2]
10
- @offense = token_data[3]
17
+ @offense = OFFENSE_CONVERSION[token_data[3]] || token_data[3]
11
18
  end
12
19
 
13
20
  def to_suppression
14
- "\t<suppress checks=\"#{offense}\" files=\"#{file_name}\"/>"
21
+ " <suppress checks=\"#{offense}\" files=\"#{file_name}\"/>"
15
22
  end
16
23
  end
@@ -19,6 +19,8 @@ class SuppressionsPopulator
19
19
  end
20
20
 
21
21
  def populate
22
- "#{HEADER}\n#{@tokens.map(&:to_suppression).join("\n")}\n\n#{FOOTER}"
22
+ "#{HEADER}\n#{@tokens.uniq do |token|
23
+ [token.file_name, token.offense]
24
+ end.map(&:to_suppression).join("\n")}\n\n#{FOOTER}"
23
25
  end
24
26
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: checkstyle-suppression-generator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyler Matthews (matthewstyler)