danger-lgtm 0.1.1 → 0.2.0
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 +1 -0
- data/.rubocop.yml +3 -0
- data/Gemfile.lock +10 -11
- data/README.md +1 -0
- data/lib/danger_lgtm.rb +2 -0
- data/lib/danger_plugin.rb +2 -0
- data/lib/lgtm/gem_version.rb +3 -1
- data/lib/lgtm/plugin.rb +39 -4
- data/spec/lgtm_spec.rb +13 -1
- data/spec/spec_helper.rb +2 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2003b650eca71ba9c3c9ac91b86eda29757349c7
|
4
|
+
data.tar.gz: 9d258b59a6f6f0ab638f556ae7b91b7b4cf11563
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48166fec2e2aa69503e71431839aacb146864505efb2cf26297b9d2fcf36823b9dab78b7b42c94da1dee51a394a44c92de810f91a9ee1fc4419066cc23f4473f
|
7
|
+
data.tar.gz: 2309634a33d3d73baf5a429ac054bbcd4d01f4d27234b7187f336e3fa41d80226569707ddffe9d79e1ad0b4eb2fd8b70db2a3a956e887eac60be632a3180a4f3
|
data/.gitignore
CHANGED
data/.rubocop.yml
ADDED
data/Gemfile.lock
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
danger-lgtm (0.
|
4
|
+
danger-lgtm (0.2.0)
|
5
5
|
danger-plugin-api (~> 1.0)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
addressable (2.5.
|
10
|
+
addressable (2.5.1)
|
11
11
|
public_suffix (~> 2.0, >= 2.0.2)
|
12
12
|
ast (2.3.0)
|
13
13
|
claide (1.0.1)
|
@@ -16,11 +16,10 @@ GEM
|
|
16
16
|
nap
|
17
17
|
open4 (~> 1.3)
|
18
18
|
coderay (1.1.1)
|
19
|
-
colored (1.2)
|
20
19
|
colored2 (3.1.2)
|
21
|
-
cork (0.
|
22
|
-
|
23
|
-
danger (
|
20
|
+
cork (0.3.0)
|
21
|
+
colored2 (~> 3.1)
|
22
|
+
danger (5.2.2)
|
24
23
|
claide (~> 1.0)
|
25
24
|
claide-plugins (>= 0.9.2)
|
26
25
|
colored2 (~> 3.1)
|
@@ -34,7 +33,7 @@ GEM
|
|
34
33
|
danger-plugin-api (1.0.0)
|
35
34
|
danger (> 2.0)
|
36
35
|
diff-lcs (1.3)
|
37
|
-
faraday (0.
|
36
|
+
faraday (0.12.1)
|
38
37
|
multipart-post (>= 1.2, < 3)
|
39
38
|
faraday-http-cache (1.3.1)
|
40
39
|
faraday (~> 0.8)
|
@@ -67,7 +66,7 @@ GEM
|
|
67
66
|
notiffany (0.1.1)
|
68
67
|
nenv (~> 0.1)
|
69
68
|
shellany (~> 0.0)
|
70
|
-
octokit (4.
|
69
|
+
octokit (4.7.0)
|
71
70
|
sawyer (~> 0.8.0, >= 0.5.3)
|
72
71
|
open4 (1.3.4)
|
73
72
|
parser (2.4.0.0)
|
@@ -108,8 +107,8 @@ GEM
|
|
108
107
|
faraday (~> 0.8, < 1.0)
|
109
108
|
shellany (0.0.1)
|
110
109
|
slop (3.6.0)
|
111
|
-
terminal-table (1.
|
112
|
-
unicode-display_width (~> 1.1.1)
|
110
|
+
terminal-table (1.8.0)
|
111
|
+
unicode-display_width (~> 1.1, >= 1.1.1)
|
113
112
|
thor (0.19.4)
|
114
113
|
unicode-display_width (1.1.3)
|
115
114
|
yard (0.9.8)
|
@@ -130,4 +129,4 @@ DEPENDENCIES
|
|
130
129
|
yard (~> 0.8)
|
131
130
|
|
132
131
|
BUNDLED WITH
|
133
|
-
1.
|
132
|
+
1.15.0
|
data/README.md
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
[](https://rubygems.org/gems/danger-lgtm)
|
2
|
+
[](https://rubygems.org/gems/danger-lgtm)
|
2
3
|
[](https://rubygems.org/gems/danger-lgtm)
|
3
4
|
[](https://travis-ci.org/leonhartX/danger-lgtm)
|
4
5
|
# danger-lgtm
|
data/lib/danger_lgtm.rb
CHANGED
data/lib/danger_plugin.rb
CHANGED
data/lib/lgtm/gem_version.rb
CHANGED
data/lib/lgtm/plugin.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'uri'
|
4
|
+
require 'json'
|
1
5
|
require 'net/http'
|
2
6
|
|
3
7
|
module Danger
|
@@ -12,6 +16,8 @@ module Danger
|
|
12
16
|
# @tags lgtm, github
|
13
17
|
#
|
14
18
|
class DangerLgtm < Plugin
|
19
|
+
RANDOM_LGTM_POST_URL = 'http://lgtm.in/g'.freeze
|
20
|
+
|
15
21
|
# Check status report, say lgtm if no violations
|
16
22
|
# Generates a `markdown` of a lgtm iamge.
|
17
23
|
#
|
@@ -22,11 +28,40 @@ module Danger
|
|
22
28
|
def check_lgtm(image_url: nil)
|
23
29
|
return unless status_report[:errors].length.zero? &&
|
24
30
|
status_report[:warnings].length.zero?
|
25
|
-
|
26
|
-
|
27
|
-
|
31
|
+
|
32
|
+
image_url ||= fetch_image_url
|
33
|
+
|
34
|
+
markdown(
|
35
|
+
markdown_template(image_url)
|
36
|
+
)
|
37
|
+
end
|
38
|
+
|
39
|
+
private
|
40
|
+
|
41
|
+
def fetch_image_url
|
42
|
+
lgtm_post_url = process_request(RANDOM_LGTM_POST_URL)['location']
|
43
|
+
|
44
|
+
lgtm_post_response = process_request(lgtm_post_url) do |req|
|
45
|
+
req['Accept'] = 'application/json'
|
28
46
|
end
|
29
|
-
|
47
|
+
|
48
|
+
lgtm_post = JSON.parse(lgtm_post_response.body)
|
49
|
+
|
50
|
+
lgtm_post['actualImageUrl']
|
51
|
+
end
|
52
|
+
|
53
|
+
def process_request(url)
|
54
|
+
uri = URI(url)
|
55
|
+
|
56
|
+
req = Net::HTTP::Get.new(uri)
|
57
|
+
|
58
|
+
yield req if block_given?
|
59
|
+
|
60
|
+
Net::HTTP.start(uri.hostname, uri.port) { |http| http.request(req) }
|
61
|
+
end
|
62
|
+
|
63
|
+
def markdown_template(image_url)
|
64
|
+
"<p align='center'><img src='#{image_url}' alt='LGTM' /></p>"
|
30
65
|
end
|
31
66
|
end
|
32
67
|
end
|
data/spec/lgtm_spec.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require File.expand_path('../spec_helper', __FILE__)
|
2
4
|
|
3
5
|
module Danger
|
@@ -24,9 +26,19 @@ module Danger
|
|
24
26
|
end
|
25
27
|
|
26
28
|
it 'pick random pic from lgtm.in' do
|
29
|
+
mock = double(
|
30
|
+
:[] => 'https://lgtm.in/p/sSuI4hm0q',
|
31
|
+
body: JSON.generate(
|
32
|
+
actualImageUrl: 'https://example.com/image.jpg'
|
33
|
+
)
|
34
|
+
)
|
35
|
+
|
36
|
+
allow(Net::HTTP).to receive(:start).and_return(mock)
|
37
|
+
|
27
38
|
@lgtm.check_lgtm
|
39
|
+
|
28
40
|
expect(@dangerfile.status_report[:markdowns][0].message)
|
29
|
-
.to match(%r{https:\/\/
|
41
|
+
.to match(%r{https:\/\/example.com\/image.jpg})
|
30
42
|
end
|
31
43
|
|
32
44
|
it 'use given url' do
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: danger-lgtm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- leonhartX
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: danger-plugin-api
|
@@ -158,6 +158,7 @@ extensions: []
|
|
158
158
|
extra_rdoc_files: []
|
159
159
|
files:
|
160
160
|
- ".gitignore"
|
161
|
+
- ".rubocop.yml"
|
161
162
|
- ".travis.yml"
|
162
163
|
- Gemfile
|
163
164
|
- Gemfile.lock
|
@@ -192,7 +193,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
192
193
|
version: '0'
|
193
194
|
requirements: []
|
194
195
|
rubyforge_project:
|
195
|
-
rubygems_version: 2.
|
196
|
+
rubygems_version: 2.6.11
|
196
197
|
signing_key:
|
197
198
|
specification_version: 4
|
198
199
|
summary: Danger Plugin used to post LGTM iamge when there is no violations
|