jlint 0.1.2 → 0.1.3
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 +4 -4
- data/.gitignore +2 -0
- data/.travis.yml +7 -0
- data/Gemfile.lock +1 -1
- data/README.md +2 -0
- data/Rakefile +4 -3
- data/bin/checkstyle-6.5-all.jar +0 -0
- data/bin/current +0 -0
- data/doc/sun_checks.xml +3 -4
- data/lib/jlint.rb +9 -2
- data/lib/jlint/version.rb +1 -1
- data/test/jlint/test_jlint.rb +46 -5
- data/test/support/custom_config_errors.yml +15 -0
- data/test/support/sample_errors.yml +15 -0
- metadata +21 -15
- data/bin/checkstyle.jar +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1dc85e460dbf3ca0098ab8c8364a9fbfd06ef17c
|
4
|
+
data.tar.gz: 45c220242b42d9a3f9ced119354afba3fdfbdf73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 07083e17bec494f19545e54cc91b64bb62f90642c126f213a098eebbc74bf64aca321df8ed56c6fb2b88e97707b7b010a4ea10758d51525210ca371267e3eb04
|
7
|
+
data.tar.gz: 01566ea4227f4bb4d95d5abf2eff6b109967dbdfda7e27f1a1a690e900f6c10ec77d3d8c187c7bc1c377d47bb820fedd370ca4ce5dc34288e57d443aab596507
|
data/.gitignore
CHANGED
data/.travis.yml
ADDED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
data/Rakefile
CHANGED
Binary file
|
data/bin/current
ADDED
Binary file
|
data/doc/sun_checks.xml
CHANGED
@@ -41,7 +41,7 @@
|
|
41
41
|
|
42
42
|
<!-- Checks that a package-info.java file exists for each package. -->
|
43
43
|
<!-- See http://checkstyle.sf.net/config_javadoc.html#JavadocPackage -->
|
44
|
-
|
44
|
+
<!--module name="JavadocPackage"/-->
|
45
45
|
|
46
46
|
<!-- Checks whether files end with a new line. -->
|
47
47
|
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
|
@@ -50,11 +50,11 @@
|
|
50
50
|
<!-- Checks that property files contain the same keys. -->
|
51
51
|
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
|
52
52
|
<module name="Translation"/>
|
53
|
-
|
53
|
+
|
54
54
|
<!-- Checks for Size Violations. -->
|
55
55
|
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
56
56
|
<module name="FileLength"/>
|
57
|
-
|
57
|
+
|
58
58
|
<!-- Checks for whitespace -->
|
59
59
|
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
60
60
|
<module name="FileTabCharacter"/>
|
@@ -154,7 +154,6 @@
|
|
154
154
|
<module name="InnerAssignment"/>
|
155
155
|
<module name="MagicNumber"/>
|
156
156
|
<module name="MissingSwitchDefault"/>
|
157
|
-
<module name="RedundantThrows"/>
|
158
157
|
<module name="SimplifyBooleanExpression"/>
|
159
158
|
<module name="SimplifyBooleanReturn"/>
|
160
159
|
|
data/lib/jlint.rb
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
require 'tempfile'
|
2
|
+
require 'yaml'
|
3
|
+
|
2
4
|
class Jlint
|
3
5
|
def self.lint content
|
4
6
|
new.lint content
|
@@ -32,7 +34,12 @@ class Jlint
|
|
32
34
|
private
|
33
35
|
|
34
36
|
def parse_lint command, config_path, file_path
|
35
|
-
|
37
|
+
output = `java -jar #{checkstyle_command} -c #{config_path} #{file_path}`
|
38
|
+
if /Unable to create Checker|Error loading configuration file/ =~ output
|
39
|
+
raise output
|
40
|
+
else
|
41
|
+
parse output
|
42
|
+
end
|
36
43
|
end
|
37
44
|
|
38
45
|
def as_file content, format = ".java"
|
@@ -49,7 +56,7 @@ class Jlint
|
|
49
56
|
end
|
50
57
|
|
51
58
|
def checkstyle_command
|
52
|
-
File.join(File.dirname(__FILE__), '..', 'bin', '
|
59
|
+
File.join(File.dirname(__FILE__), '..', 'bin', 'current')
|
53
60
|
end
|
54
61
|
|
55
62
|
def checkstyle_config
|
data/lib/jlint/version.rb
CHANGED
data/test/jlint/test_jlint.rb
CHANGED
@@ -6,7 +6,7 @@ describe Jlint do
|
|
6
6
|
file_path = File.join(File.dirname(__FILE__), "..", "support", "sample.java")
|
7
7
|
result = Jlint.file_lint(file_path)
|
8
8
|
assert result.is_a?(Array)
|
9
|
-
|
9
|
+
assert_equal(result.to_yaml, File.read('test/support/sample_errors.yml'))
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should lint for file content with newline" do
|
@@ -20,12 +20,12 @@ describe Jlint do
|
|
20
20
|
}]
|
21
21
|
result = Jlint.lint(content)
|
22
22
|
assert result.is_a?(Array)
|
23
|
-
|
24
|
-
assert result.include?(["Missing package-info.java file.", 0])
|
23
|
+
assert_equal(result.to_yaml, File.read('test/support/custom_config_errors.yml'))
|
25
24
|
end
|
26
25
|
|
27
26
|
it "should lint with custom config content" do
|
28
|
-
content = %Q[
|
27
|
+
content = %Q[import java.util.*;
|
28
|
+
public class Sample {
|
29
29
|
public static void Sample() {
|
30
30
|
}
|
31
31
|
|
@@ -38,10 +38,51 @@ describe Jlint do
|
|
38
38
|
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
39
39
|
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
40
40
|
<module name="Checker">
|
41
|
+
<module name="TreeWalker">
|
42
|
+
<module name="AvoidStarImport"/>
|
43
|
+
</module>
|
41
44
|
</module>]
|
42
45
|
result = Jlint.new(config_content).lint(content)
|
43
46
|
assert result.is_a?(Array)
|
44
|
-
assert
|
47
|
+
assert result.include?(["Using the '.*' form of import should be avoided - java.util.*.", 1])
|
48
|
+
end
|
49
|
+
|
50
|
+
it "should error on bad custom config content" do
|
51
|
+
content = %Q[public class Sample {
|
52
|
+
public static void Sample() {
|
53
|
+
}
|
54
|
+
|
55
|
+
public void hi(long name) {
|
56
|
+
system.out.printf("Hi, " + name);
|
57
|
+
}
|
58
|
+
}]
|
59
|
+
config_content = %Q[<?xml version="1.0"?>
|
60
|
+
<!DOCTYPE module PUBLIC
|
61
|
+
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
62
|
+
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
63
|
+
<module name="Checker">
|
64
|
+
<module name="AvoidStarImport"/>
|
65
|
+
</module>]
|
66
|
+
assert_raises(RuntimeError) { Jlint.new(config_content).lint(content) }
|
67
|
+
end
|
68
|
+
|
69
|
+
it "should error on bad XML" do
|
70
|
+
content = %Q[public class Sample {
|
71
|
+
public static void Sample() {
|
72
|
+
}
|
73
|
+
|
74
|
+
public void hi(long name) {
|
75
|
+
system.out.printf("Hi, " + name);
|
76
|
+
}
|
77
|
+
}]
|
78
|
+
config_content = %Q[<?xml version="1.0"?>
|
79
|
+
<!DOCTYPE module PUBLIC
|
80
|
+
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
81
|
+
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
82
|
+
<module name="Checker">
|
83
|
+
<module name="AvoidStarImport"/>
|
84
|
+
</module]
|
85
|
+
assert_raises(RuntimeError) { Jlint.new(config_content).lint(content) }
|
45
86
|
end
|
46
87
|
|
47
88
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
- - Missing a Javadoc comment.
|
3
|
+
- 1
|
4
|
+
- - Missing a Javadoc comment.
|
5
|
+
- 2
|
6
|
+
- - Method Name 'Sample' must not equal the enclosing class name.
|
7
|
+
- 2
|
8
|
+
- - Name 'Sample' must match pattern '^[a-z][a-zA-Z0-9]*$'.
|
9
|
+
- 2
|
10
|
+
- - Method 'hi' is not designed for extension - needs to be abstract, final or empty.
|
11
|
+
- 5
|
12
|
+
- - Missing a Javadoc comment.
|
13
|
+
- 5
|
14
|
+
- - Parameter name should be final.
|
15
|
+
- 5
|
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
- - Missing a Javadoc comment.
|
3
|
+
- 1
|
4
|
+
- - Missing a Javadoc comment.
|
5
|
+
- 2
|
6
|
+
- - Method Name 'Sample' must not equal the enclosing class name.
|
7
|
+
- 2
|
8
|
+
- - Name 'Sample' must match pattern '^[a-z][a-zA-Z0-9]*$'.
|
9
|
+
- 2
|
10
|
+
- - Method 'hi' is not designed for extension - needs to be abstract, final or empty.
|
11
|
+
- 5
|
12
|
+
- - Missing a Javadoc comment.
|
13
|
+
- 5
|
14
|
+
- - Parameter name should be final.
|
15
|
+
- 5
|
metadata
CHANGED
@@ -1,72 +1,75 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jlint
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- soffolk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-04-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.5'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.5'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: minitest
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
description: 'Ruby Warp for CheckStyle: https://github.com/checkstyle/checkstyle'
|
56
56
|
email:
|
57
57
|
- zlx.star@gmail.com
|
58
58
|
executables:
|
59
|
-
- checkstyle.jar
|
59
|
+
- checkstyle-6.5-all.jar
|
60
|
+
- current
|
60
61
|
extensions: []
|
61
62
|
extra_rdoc_files: []
|
62
63
|
files:
|
63
|
-
- .gitignore
|
64
|
+
- ".gitignore"
|
65
|
+
- ".travis.yml"
|
64
66
|
- Gemfile
|
65
67
|
- Gemfile.lock
|
66
68
|
- LICENSE.txt
|
67
69
|
- README.md
|
68
70
|
- Rakefile
|
69
|
-
- bin/checkstyle.jar
|
71
|
+
- bin/checkstyle-6.5-all.jar
|
72
|
+
- bin/current
|
70
73
|
- doc/google_checks.xml
|
71
74
|
- doc/sun_checks.xml
|
72
75
|
- jlint.gemspec
|
@@ -74,7 +77,9 @@ files:
|
|
74
77
|
- lib/jlint/version.rb
|
75
78
|
- test/jlint/test_jlint.rb
|
76
79
|
- test/support/custom.xml
|
80
|
+
- test/support/custom_config_errors.yml
|
77
81
|
- test/support/sample.java
|
82
|
+
- test/support/sample_errors.yml
|
78
83
|
- test/test_helper.rb
|
79
84
|
homepage: ''
|
80
85
|
licenses:
|
@@ -86,23 +91,24 @@ require_paths:
|
|
86
91
|
- lib
|
87
92
|
required_ruby_version: !ruby/object:Gem::Requirement
|
88
93
|
requirements:
|
89
|
-
- -
|
94
|
+
- - ">="
|
90
95
|
- !ruby/object:Gem::Version
|
91
96
|
version: '0'
|
92
97
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
93
98
|
requirements:
|
94
|
-
- -
|
99
|
+
- - ">="
|
95
100
|
- !ruby/object:Gem::Version
|
96
101
|
version: '0'
|
97
102
|
requirements: []
|
98
103
|
rubyforge_project:
|
99
|
-
rubygems_version: 2.
|
104
|
+
rubygems_version: 2.4.5
|
100
105
|
signing_key:
|
101
106
|
specification_version: 4
|
102
107
|
summary: 'Ruby Warp for CheckStyle: https://github.com/checkstyle/checkstyle'
|
103
108
|
test_files:
|
104
109
|
- test/jlint/test_jlint.rb
|
105
110
|
- test/support/custom.xml
|
111
|
+
- test/support/custom_config_errors.yml
|
106
112
|
- test/support/sample.java
|
113
|
+
- test/support/sample_errors.yml
|
107
114
|
- test/test_helper.rb
|
108
|
-
has_rdoc:
|
data/bin/checkstyle.jar
DELETED
Binary file
|