pmdtester 1.5.4 → 1.5.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: 0c6c579178746a76cc77dc88dccb3465e0f5aba7133a17f238653497ebfdb037
4
- data.tar.gz: cdba630126e5e216582dca8b5f7f4e59017e63f573009887fc6e4f51d6a18755
3
+ metadata.gz: '05486a80b029d8a896b789ebb894077c36d6a0f99a651c0b1885a808f6219b8a'
4
+ data.tar.gz: b9a98daf20b7c036a26bea412563a9df771252b338cb7f805c4d42351627b458
5
5
  SHA512:
6
- metadata.gz: 129e21d2eb726a05ed2dc1bed919f4557d169356ad7c734fbc5c9be01c15b939381e6bd0aae655f53e3d2beca837bf55b35cf414eee5573fa641d5641d823dca
7
- data.tar.gz: 312ce6f7d5b28b412b376ce3251739d7c5eacab038f9db3850050e709790087a654dd071421a80d150b2d513337e5c0bc46dad466f57a360c62f3201b54a7db9
6
+ metadata.gz: efce54ae5e36f7853427a7ccc203346335f7811d3dddbe3ae5d0f558bff3eb7b1748952fbdd31046c251ea6cb55fac5b1a261fd674c4989b5a6d11e251c1872f
7
+ data.tar.gz: fc72dbd2b79ca40655eea0587f0cb6df1293b6634a9252e428af2dddbe0209f5e74dc2497dadca99687e6e332e495979d42288b100cd55f6b293096645e2f5f5
data/History.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 1.5.5 / 2023-11-16
2
+
3
+ ## Fixed Issues
4
+ * [#121](https://github.com/pmd/pmd-regression-tester/issues/121): Violation messages should be escaped for html
5
+
1
6
  # 1.5.4 / 2023-05-27
2
7
 
3
8
  ## Enhancements
data/README.rdoc CHANGED
@@ -127,6 +127,7 @@ The tool creates the following folders:
127
127
  gem install pmdtester --pre
128
128
 
129
129
  == DEVELOPERS:
130
+
130
131
  git clone https://github.com/pmd/pmd-regression-tester.git
131
132
  cd pmd-regression-tester
132
133
  gem install bundler
@@ -117,15 +117,22 @@ module PmdTester
117
117
  'l' => violation.line,
118
118
  'f' => file_ref,
119
119
  'r' => violation.rule_name,
120
- 'm' => is_diff && violation.changed? ? diff_fragments(violation) : violation.message
120
+ 'm' => create_violation_message(violation, is_diff && violation.changed?)
121
121
  }
122
122
  h['ol'] = violation.old_line if is_diff && violation.changed? && violation.line != violation.old_line
123
123
  h
124
124
  end
125
125
 
126
- def diff_fragments(violation)
127
- diff = Differ.diff_by_word(violation.message, violation.old_message)
126
+ def create_violation_message(violation, is_diff)
127
+ return escape_html(violation.message) unless is_diff
128
+
129
+ diff = Differ.diff_by_word(escape_html(violation.message),
130
+ escape_html(violation.old_message))
128
131
  diff.format_as(:html)
129
132
  end
133
+
134
+ def escape_html(string)
135
+ CGI.escapeHTML(string)
136
+ end
130
137
  end
131
138
  end
data/lib/pmdtester.rb CHANGED
@@ -33,7 +33,7 @@ require_relative 'pmdtester/parsers/projects_parser'
33
33
  # and unexpected behaviors will not be introduced to PMD project
34
34
  # after fixing an issue and new rules can work as expected.
35
35
  module PmdTester
36
- VERSION = '1.5.4'
36
+ VERSION = '1.5.5'
37
37
  BASE = 'base'
38
38
  PATCH = 'patch'
39
39
  PR_NUM_ENV_VAR = 'PMD_CI_PULL_REQUEST_NUMBER' # see PmdBranchDetail
data/pmdtester.gemspec CHANGED
@@ -1,17 +1,17 @@
1
1
  # DO NOT EDIT THIS FILE. Instead, edit Rakefile, and run `rake hoe:spec`.
2
2
 
3
3
  # -*- encoding: utf-8 -*-
4
- # stub: pmdtester 1.5.4 ruby lib
4
+ # stub: pmdtester 1.5.5 ruby lib
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "pmdtester".freeze
8
- s.version = "1.5.4"
8
+ s.version = "1.5.5"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
11
11
  s.metadata = { "bug_tracker_uri" => "https://github.com/pmd/pmd-regression-tester/issues", "homepage_uri" => "https://pmd.github.io", "source_code_uri" => "https://github.com/pmd/pmd-regression-tester" } if s.respond_to? :metadata=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Andreas Dangel".freeze, "Binguo Bao".freeze, "Cl\u00E9ment Fournier".freeze]
14
- s.date = "2023-05-27"
14
+ s.date = "2023-11-16"
15
15
  s.description = "A regression testing tool ensure that new problems and unexpected behaviors will not be introduced to PMD project after fixing an issue , and new rules can work as expected.".freeze
16
16
  s.email = ["andreas.dangel@pmd-code.org".freeze, "djydewang@gmail.com".freeze, "clement.fournier76@gmail.com".freeze]
17
17
  s.executables = ["pmdtester".freeze]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pmdtester
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.4
4
+ version: 1.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Dangel
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2023-05-27 00:00:00.000000000 Z
13
+ date: 2023-11-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: nokogiri