danger-android_lint 0.0.2 → 0.0.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/CHANGELOG.md +6 -3
- data/lib/android_lint/gem_version.rb +1 -1
- data/lib/android_lint/plugin.rb +14 -4
- data/spec/android_lint_spec.rb +34 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 14a8b24ca402a1f8615991280e363bf0fe02eb9d
|
4
|
+
data.tar.gz: 4be292fab2a1db392f729bda485a831f1533c611
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f5842a73db7eaac24acc5a704c582bbbcd690b95499392f57214e45fb6bd9eb71dbd510cc17456017922823a1544bda1bf8ee63dd62371cd1c47bdbc06c48301
|
7
|
+
data.tar.gz: 205b8756e1b4f3fdf34256b4baa551475fcec0e5ec239dc68fde22616856c6ae7052b44b66bd9898d6683c5aceeba93e44a7cef7d8427a715ef0f6d2fbada307
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
|
+
# 0.0.3
|
2
|
+
- Add `report_file` parameter, so users can set a custom path for their report xmls (@churowa)
|
3
|
+
|
1
4
|
## 0.0.2
|
2
|
-
- Fix check for inexistent report file
|
3
|
-
- Fix markdown message being printed without any issues reported
|
5
|
+
- Fix check for inexistent report file (@barbosa)
|
6
|
+
- Fix markdown message being printed without any issues reported (@barbosa)
|
4
7
|
|
5
8
|
## 0.0.1
|
6
|
-
- Initial version
|
9
|
+
- Initial version (@barbosa)
|
data/lib/android_lint/plugin.rb
CHANGED
@@ -25,7 +25,17 @@ module Danger
|
|
25
25
|
class DangerAndroidLint < Plugin
|
26
26
|
|
27
27
|
SEVERITY_LEVELS = ["Warning", "Error", "Fatal"]
|
28
|
-
|
28
|
+
|
29
|
+
# Location of lint report file
|
30
|
+
# If your Android lint task outputs to a different location, you can specify it here.
|
31
|
+
# Defaults to "app/build/reports/lint/lint-result.xml".
|
32
|
+
# @return [String]
|
33
|
+
attr_accessor :report_file
|
34
|
+
# A getter for `report_file`.
|
35
|
+
# @return [String]
|
36
|
+
def report_file
|
37
|
+
return @report_file || 'app/build/reports/lint/lint-result.xml'
|
38
|
+
end
|
29
39
|
|
30
40
|
# Custom gradle task to run.
|
31
41
|
# This is useful when your project has different flavors.
|
@@ -59,8 +69,8 @@ module Danger
|
|
59
69
|
|
60
70
|
system "./gradlew #{gradle_task || 'lint'}"
|
61
71
|
|
62
|
-
unless File.exists?(
|
63
|
-
fail("Lint report not found at `#{
|
72
|
+
unless File.exists?(report_file)
|
73
|
+
fail("Lint report not found at `#{report_file}`. "\
|
64
74
|
"Have you forgot to add `xmlReport true` to your `build.gradle` file?")
|
65
75
|
end
|
66
76
|
|
@@ -80,7 +90,7 @@ module Danger
|
|
80
90
|
private
|
81
91
|
|
82
92
|
def read_issues_from_report
|
83
|
-
file = File.open(
|
93
|
+
file = File.open(report_file)
|
84
94
|
|
85
95
|
require 'oga'
|
86
96
|
report = Oga.parse_xml(file)
|
data/spec/android_lint_spec.rb
CHANGED
@@ -21,6 +21,7 @@ module Danger
|
|
21
21
|
|
22
22
|
it "Fails if severity is an unknown value" do
|
23
23
|
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
24
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file()).and_return(true)
|
24
25
|
|
25
26
|
@android_lint.severity = "Dummy"
|
26
27
|
@android_lint.lint
|
@@ -30,21 +31,46 @@ module Danger
|
|
30
31
|
|
31
32
|
it "Sets severity to 'Warning' if no severity param is provided" do
|
32
33
|
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
33
|
-
allow(File).to receive(:exists?).with(
|
34
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file).and_return(true)
|
34
35
|
|
35
36
|
fake_result = File.open("spec/fixtures/lint-result-with-everything.xml")
|
36
|
-
allow(File).to receive(:open).with(
|
37
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
37
38
|
|
38
39
|
@android_lint.lint
|
39
40
|
expect(@android_lint.severity).to eq("Warning")
|
40
41
|
end
|
41
42
|
|
43
|
+
it "Sets the report file to a default location if no param is provided" do
|
44
|
+
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
45
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file).and_return(true)
|
46
|
+
|
47
|
+
fake_result = File.open("spec/fixtures/lint-result-with-everything.xml")
|
48
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
49
|
+
|
50
|
+
@android_lint.lint
|
51
|
+
expect(@android_lint.report_file).to eq("app/build/reports/lint/lint-result.xml")
|
52
|
+
end
|
53
|
+
|
54
|
+
it "Sets the report_file to the user's preference in the Dangerfile'" do
|
55
|
+
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
56
|
+
|
57
|
+
@android_lint.report_file = 'some/other/location/lint-result.xml'
|
58
|
+
|
59
|
+
fake_result = File.open("spec/fixtures/lint-result-with-everything.xml")
|
60
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
61
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file).and_return(true)
|
62
|
+
|
63
|
+
@android_lint.lint
|
64
|
+
|
65
|
+
expect(@android_lint.report_file).to eq('some/other/location/lint-result.xml')
|
66
|
+
end
|
67
|
+
|
42
68
|
it "Fails if report file does not exist" do
|
43
69
|
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
44
|
-
allow(File).to receive(:exists?).with(
|
70
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file).and_return(false)
|
45
71
|
|
46
72
|
fake_result = File.open("spec/fixtures/lint-result-with-everything.xml")
|
47
|
-
allow(File).to receive(:open).with(
|
73
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
48
74
|
|
49
75
|
@android_lint.lint
|
50
76
|
|
@@ -55,12 +81,12 @@ module Danger
|
|
55
81
|
describe 'lint' do
|
56
82
|
before do
|
57
83
|
allow(@android_lint).to receive(:`).with("ls gradlew").and_return("gradlew")
|
58
|
-
allow(File).to receive(:exists?).with(
|
84
|
+
allow(File).to receive(:exists?).with(@android_lint.report_file).and_return(false)
|
59
85
|
end
|
60
86
|
|
61
87
|
it 'Prints markdown if issues were found' do
|
62
88
|
fake_result = File.open("spec/fixtures/lint-result-with-everything.xml")
|
63
|
-
allow(File).to receive(:open).with(
|
89
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
64
90
|
|
65
91
|
@android_lint.lint
|
66
92
|
|
@@ -79,7 +105,7 @@ module Danger
|
|
79
105
|
|
80
106
|
it 'Doesn`t print anything if no errors were found' do
|
81
107
|
fake_result = File.open("spec/fixtures/lint-result-empty.xml")
|
82
|
-
allow(File).to receive(:open).with(
|
108
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
83
109
|
|
84
110
|
@android_lint.lint
|
85
111
|
|
@@ -89,7 +115,7 @@ module Danger
|
|
89
115
|
|
90
116
|
it 'Doesn`t print anything if no errors were found' do
|
91
117
|
fake_result = File.open("spec/fixtures/lint-result-without-fatal.xml")
|
92
|
-
allow(File).to receive(:open).with(
|
118
|
+
allow(File).to receive(:open).with(@android_lint.report_file).and_return(fake_result)
|
93
119
|
|
94
120
|
@android_lint.severity = "Fatal"
|
95
121
|
@android_lint.lint
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: danger-android_lint
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gustavo Barbosa
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: oga
|