danger-junit 0.6.4 → 0.7.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 -1
- data/Gemfile.lock +4 -4
- data/README.md +5 -1
- data/danger-junit.gemspec +1 -1
- data/lib/junit/gem_version.rb +1 -1
- data/lib/junit/plugin.rb +27 -9
- data/spec/fixtures/danger-junit-fail.xml +67 -0
- data/spec/fixtures/fastlane_trainer.xml +11 -0
- data/spec/junit_spec.rb +12 -5
- metadata +6 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f82fa75a940b47aec4595195cb3c22a2efd6c245
|
|
4
|
+
data.tar.gz: acea0f9b7335b0fb7ca4ec013f4529ec031e772c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a3ae64fc76315bc2eeaf01cf58bd5eaf1b8f7d984b948cfc50a9eb2904c7e2cfcce8e226d05b5b7fd1ff5a83d457665c8a6539e2b7ce992041877e4e79d799dc
|
|
7
|
+
data.tar.gz: 9612320f665727ba7d3330c59cab98e7bdc9aa27456ed1cc92d235e5501834bfd0e5efc6f8ac985cfdf2137601387d519019dcab25c3f5852c333991fd62117b
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
danger-junit (0.6.
|
|
4
|
+
danger-junit (0.6.4)
|
|
5
5
|
danger (~> 2.0)
|
|
6
6
|
ox (~> 2.0)
|
|
7
7
|
|
|
@@ -20,7 +20,7 @@ GEM
|
|
|
20
20
|
colored (1.2)
|
|
21
21
|
cork (0.1.0)
|
|
22
22
|
colored (~> 1.2)
|
|
23
|
-
danger (2.
|
|
23
|
+
danger (2.1.1)
|
|
24
24
|
claide (~> 1.0)
|
|
25
25
|
claide-plugins (> 0.9.0)
|
|
26
26
|
colored (~> 1.2)
|
|
@@ -28,8 +28,8 @@ GEM
|
|
|
28
28
|
faraday (~> 0)
|
|
29
29
|
faraday-http-cache (~> 1.0)
|
|
30
30
|
git (~> 1)
|
|
31
|
+
kramdown (~> 1.5)
|
|
31
32
|
octokit (~> 4.2)
|
|
32
|
-
redcarpet (~> 3.3)
|
|
33
33
|
terminal-table (~> 1)
|
|
34
34
|
diff-lcs (1.2.5)
|
|
35
35
|
faraday (0.9.2)
|
|
@@ -53,6 +53,7 @@ GEM
|
|
|
53
53
|
guard (~> 2.1)
|
|
54
54
|
guard-compat (~> 1.1)
|
|
55
55
|
rspec (>= 2.99.0, < 4.0)
|
|
56
|
+
kramdown (1.11.1)
|
|
56
57
|
listen (3.0.7)
|
|
57
58
|
rb-fsevent (>= 0.9.3)
|
|
58
59
|
rb-inotify (>= 0.9.7)
|
|
@@ -80,7 +81,6 @@ GEM
|
|
|
80
81
|
rb-fsevent (0.9.7)
|
|
81
82
|
rb-inotify (0.9.7)
|
|
82
83
|
ffi (>= 0.5.0)
|
|
83
|
-
redcarpet (3.3.4)
|
|
84
84
|
rspec (3.5.0)
|
|
85
85
|
rspec-core (~> 3.5.0)
|
|
86
86
|
rspec-expectations (~> 3.5.0)
|
data/README.md
CHANGED
|
@@ -39,7 +39,11 @@ Then you can pass the `junit-results.xml` file to the plugin in your `Dangerfile
|
|
|
39
39
|
|
|
40
40
|
### iOS
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
You have a lot of options:
|
|
43
|
+
|
|
44
|
+
* [trainer](https://github.com/krausefx/trainer) is the fastest way to generate the junit file.
|
|
45
|
+
* [xcpretty](https://github.com/supermarin/xcpretty#reporters) is used in both Fastlane, and a lot of standard setups.
|
|
46
|
+
* [XCTool](https://github.com/facebook/xctool#included-reporters) includes it's own reporter for creating the file.
|
|
43
47
|
|
|
44
48
|
### junit
|
|
45
49
|
|
data/danger-junit.gemspec
CHANGED
|
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
spec.add_runtime_dependency 'ox', '~> 2.0'
|
|
23
23
|
|
|
24
24
|
# So we can run our specs with junit
|
|
25
|
-
spec.add_development_dependency
|
|
25
|
+
spec.add_development_dependency 'rspec_junit_formatter', '~> 0.2'
|
|
26
26
|
|
|
27
27
|
# General ruby development
|
|
28
28
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
data/lib/junit/gem_version.rb
CHANGED
data/lib/junit/plugin.rb
CHANGED
|
@@ -39,11 +39,12 @@ module Danger
|
|
|
39
39
|
# message "#{slowest_test[:time]} took #{slowest_test[:time]} seconds"
|
|
40
40
|
#
|
|
41
41
|
#
|
|
42
|
-
# @see orta/danger-junit
|
|
42
|
+
# @see orta/danger-junit
|
|
43
|
+
# @see danger/danger
|
|
44
|
+
# @see artsy/eigen
|
|
43
45
|
# @tags testing, reporting, junit, rspec, jasmine, jest, xcpretty
|
|
44
46
|
#
|
|
45
47
|
class DangerJunit < Plugin
|
|
46
|
-
|
|
47
48
|
# All the tests for introspection
|
|
48
49
|
#
|
|
49
50
|
# @return [Array<Ox::Element>]
|
|
@@ -80,15 +81,15 @@ module Danger
|
|
|
80
81
|
# @return [Array<Symbol>]
|
|
81
82
|
attr_accessor :headers
|
|
82
83
|
|
|
83
|
-
# Parses an XML file, which fills all the attributes
|
|
84
|
+
# Parses an XML file, which fills all the attributes,
|
|
84
85
|
# will `raise` for errors
|
|
85
86
|
# @return [void]
|
|
86
87
|
def parse(file)
|
|
87
88
|
require 'ox'
|
|
88
89
|
raise "No Junit file was found at #{file}" unless File.exist? file
|
|
89
90
|
|
|
90
|
-
xml_string = File.read
|
|
91
|
-
@doc = Ox.parse
|
|
91
|
+
xml_string = File.read(file)
|
|
92
|
+
@doc = Ox.parse(xml_string)
|
|
92
93
|
|
|
93
94
|
suite_root = @doc.nodes.first.value == 'testsuites' ? @doc.nodes.first : @doc
|
|
94
95
|
@tests = suite_root.nodes.map(&:nodes).flatten.select { |node| node.value == 'testcase' }
|
|
@@ -96,9 +97,26 @@ module Danger
|
|
|
96
97
|
failed_suites = suite_root.nodes.select { |suite| suite[:failures].to_i > 0 || suite[:errors].to_i > 0 }
|
|
97
98
|
failed_tests = failed_suites.map(&:nodes).flatten.select { |node| node.value == 'testcase' }
|
|
98
99
|
|
|
99
|
-
@failures = failed_tests.select
|
|
100
|
-
|
|
101
|
-
|
|
100
|
+
@failures = failed_tests.select do |test|
|
|
101
|
+
test.nodes.count > 0
|
|
102
|
+
end.select do |test|
|
|
103
|
+
node = test.nodes.first
|
|
104
|
+
node.kind_of?(Ox::Element) && node.value == 'failure'
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
@errors = failed_tests.select do |test|
|
|
108
|
+
test.nodes.count > 0
|
|
109
|
+
end.select do |test|
|
|
110
|
+
node = test.nodes.first
|
|
111
|
+
node.kind_of?(Ox::Element) && node.value == 'error'
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
@skipped = tests.select do |test|
|
|
115
|
+
test.nodes.count > 0
|
|
116
|
+
end.select do |test|
|
|
117
|
+
node = test.nodes.first
|
|
118
|
+
node.kind_of?(Ox::Element) && node.value == 'skipped'
|
|
119
|
+
end
|
|
102
120
|
|
|
103
121
|
@passes = tests - @failures - @errors - @skipped
|
|
104
122
|
end
|
|
@@ -112,7 +130,7 @@ module Danger
|
|
|
112
130
|
warn("Skipped #{skipped.count} tests.") if show_skipped_tests && skipped.count > 0
|
|
113
131
|
|
|
114
132
|
unless failures.empty? && errors.empty?
|
|
115
|
-
fail(
|
|
133
|
+
fail('Tests have failed, see below for more information.', sticky: false)
|
|
116
134
|
message = "### Tests: \n\n"
|
|
117
135
|
|
|
118
136
|
tests = (failures + errors)
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<testsuite name="rspec" tests="48" failures="1" errors="0" time="1.485178" timestamp="2016-08-06T20:02:41-04:00">
|
|
3
|
+
<!-- Randomized with seed 55363 -->
|
|
4
|
+
<properties/>
|
|
5
|
+
<testcase classname="spec.lib.danger.ci_sources.buildkite_spec" name="Danger::Buildkite validates when buildkite all env vars is found" file="./spec/lib/danger/ci_sources/buildkite_spec.rb" time="0.000594"/>
|
|
6
|
+
<testcase classname="spec.lib.danger.ci_sources.buildkite_spec" name="Danger::Buildkite doesnt validate when buildkite is not found" file="./spec/lib/danger/ci_sources/buildkite_spec.rb" time="0.000111"/>
|
|
7
|
+
<testcase classname="spec.lib.danger.ci_sources.buildkite_spec" name="Danger::Buildkite gets out a repo slug from a git+ssh repo and pull request number" file="./spec/lib/danger/ci_sources/buildkite_spec.rb" time="0.000425"/>
|
|
8
|
+
<testcase classname="spec.lib.danger.ci_sources.buildkite_spec" name="Danger::Buildkite gets out a repo slug from a https repo and pull request number" file="./spec/lib/danger/ci_sources/buildkite_spec.rb" time="0.000091"/>
|
|
9
|
+
<testcase classname="spec.lib.danger.ci_sources.buildkite_spec" name="Danger::Buildkite doesn't continue when the build is not a pull request" file="./spec/lib/danger/ci_sources/buildkite_spec.rb" time="0.000103"/>
|
|
10
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_api_spec" name="Danger::CircleAPI has a nil token as default" file="./spec/lib/danger/ci_sources/circle_api_spec.rb" time="0.000734"/>
|
|
11
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_api_spec" name="Danger::CircleAPI sets the token on initialize" file="./spec/lib/danger/ci_sources/circle_api_spec.rb" time="0.000578"/>
|
|
12
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_api_spec" name="Danger::CircleAPI creates a client with the correct base url" file="./spec/lib/danger/ci_sources/circle_api_spec.rb" time="0.001214"/>
|
|
13
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_api_spec" name="Danger::CircleAPI fetches the build info without token" file="./spec/lib/danger/ci_sources/circle_api_spec.rb" time="0.006071"/>
|
|
14
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_api_spec" name="Danger::CircleAPI fetches the build info with token" file="./spec/lib/danger/ci_sources/circle_api_spec.rb" time="0.001416"/>
|
|
15
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI validates when circle all env vars are set" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.000105"/>
|
|
16
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI validates when circle env var is found and it has a bad PR url" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.000091"/>
|
|
17
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI doesnt get a PR id when it has a bad PR url" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.009006"/>
|
|
18
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI does validate when circle env var is found and it has no PR url" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.000128"/>
|
|
19
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI doesnt validate when circle ci is not found" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.000095"/>
|
|
20
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI gets out a repo slug and pull request number" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.009844"/>
|
|
21
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI gets out a repo slug, pull request number and commit refs when PR url is not found" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.012487"/>
|
|
22
|
+
<testcase classname="spec.lib.danger.ci_sources.circle_spec" name="Danger::CircleCI uses Circle CI API token if available" file="./spec/lib/danger/ci_sources/circle_spec.rb" time="0.010687"/>
|
|
23
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone validates when DRONE variable is set" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.000145"/>
|
|
24
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone does not validate when DRONE is not set" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.000126"/>
|
|
25
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone does not validate PR when DRONE_PULL_REQUEST is set to non int value" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.000402"/>
|
|
26
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone does not validate PRwhen DRONE_PULL_REQUEST is set to non positive int value" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.000116"/>
|
|
27
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone gets the pull request ID" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.008783"/>
|
|
28
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone gets the repo address" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.008404"/>
|
|
29
|
+
<testcase classname="spec.lib.danger.ci_sources.drone_spec" name="Danger::Drone gets out a repo slug and pull request number" file="./spec/lib/danger/ci_sources/drone_spec.rb" time="0.011970"/>
|
|
30
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo Return Types #modified_files returns a FileList object" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.079570"/>
|
|
31
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo Return Types #added_files returns a FileList object" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.080882"/>
|
|
32
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo Return Types #deleted_files returns a FileList object" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.081833"/>
|
|
33
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo with files handles adding a new file to a git repo" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.093674"/>
|
|
34
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo with files handles file deletions as expected" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.095147"/>
|
|
35
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo with files handles modified as expected" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.082327"/>
|
|
36
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo lines of code handles code insertions as expected" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.085685"/>
|
|
37
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo lines of code handles code deletions as expected" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.091486"/>
|
|
38
|
+
<testcase classname="spec.lib.danger.ci_sources.git_spec" name="Danger::GitRepo lines of code #commits returns the commits" file="./spec/lib/danger/ci_sources/git_spec.rb" time="0.082046"/>
|
|
39
|
+
<testcase classname="spec.lib.danger.ci_sources.jenkins_spec" name="Danger::Jenkins validates when jenkins env var is found" file="./spec/lib/danger/ci_sources/jenkins_spec.rb" time="0.000128"/>
|
|
40
|
+
<testcase classname="spec.lib.danger.ci_sources.jenkins_spec" name="Danger::Jenkins doesnt validate when jenkins is not found" file="./spec/lib/danger/ci_sources/jenkins_spec.rb" time="0.000082"/>
|
|
41
|
+
<testcase classname="spec.lib.danger.ci_sources.jenkins_spec" name="Danger::Jenkins gets out a repo slug from a git+ssh repo and pull request number" file="./spec/lib/danger/ci_sources/jenkins_spec.rb" time="0.000155"/>
|
|
42
|
+
<testcase classname="spec.lib.danger.ci_sources.jenkins_spec" name="Danger::Jenkins gets out a repo slug from a https repo and pull request number" file="./spec/lib/danger/ci_sources/jenkins_spec.rb" time="0.000093"/>
|
|
43
|
+
<testcase classname="spec.lib.danger.ci_sources.jenkins_spec" name="Danger::Jenkins Is classed as a PR when ghprbPullId exists" file="./spec/lib/danger/ci_sources/jenkins_spec.rb" time="0.000138"/>
|
|
44
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo validates when run by danger local" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.000082"/>
|
|
45
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo doesnt validate when the local git flag is missing" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.000117"/>
|
|
46
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo gets the pull request ID" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.099535"/>
|
|
47
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos gets the repo address when it uses https" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.000019">
|
|
48
|
+
<skipped/>
|
|
49
|
+
</testcase>
|
|
50
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos gets the repo address when it uses git@" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.110539"/>
|
|
51
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos gets the repo address when it contains .git" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.103677"/>
|
|
52
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos gets the repo address when it starts with git://" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.110886"/>
|
|
53
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos gets the repo address when it starts with git://git@" file="./spec/lib/danger/ci_sources/local_git_repo_spec.rb" time="0.098927"/>
|
|
54
|
+
<testcase classname="spec.lib.danger.ci_sources.local_git_repo_spec" name="Danger::LocalGitRepo github repos does not set a repo_slug if the repo has a non-gh remote" file="./spec/spec_helper.rb" time="0.095487">
|
|
55
|
+
<failure message="undefined method `split' for nil:NilClass" type="NoMethodError">
|
|
56
|
+
<![CDATA[undefined method `split' for nil:NilClass
|
|
57
|
+
./lib/danger/ci_source/local_git_repo.rb:31:in `initialize'
|
|
58
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:91:in `new'
|
|
59
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:91:in `block (4 levels) in <top (required)>'
|
|
60
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:17:in `block (2 levels) in run_in_repo'
|
|
61
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:6:in `chdir'
|
|
62
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:6:in `block in run_in_repo'
|
|
63
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:5:in `run_in_repo'
|
|
64
|
+
./spec/lib/danger/ci_sources/local_git_repo_spec.rb:88:in `block (3 levels) in <top (required)>']]>
|
|
65
|
+
</failure>
|
|
66
|
+
</testcase>
|
|
67
|
+
</testsuite>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<testsuites tests="2" failures="1">
|
|
3
|
+
<testsuite name="ThemojiUITests" tests="2" failures="1">
|
|
4
|
+
<testcase classname="ThemojiUITests" name="testExample()">
|
|
5
|
+
</testcase>
|
|
6
|
+
<testcase classname="ThemojiUITests" name="testIsBroken()">
|
|
7
|
+
<failure message="XCTAssertTrue failed - /Users/krausefx/Developer/hacking/themoji_copy/ThemojiUITests/ThemojiUITests.swift:24">
|
|
8
|
+
</failure>
|
|
9
|
+
</testcase>
|
|
10
|
+
</testsuite>
|
|
11
|
+
</testsuites>
|
data/spec/junit_spec.rb
CHANGED
|
@@ -31,6 +31,15 @@ module Danger
|
|
|
31
31
|
expect(@junit.skipped.count).to eq 0
|
|
32
32
|
end
|
|
33
33
|
|
|
34
|
+
it 'gets the right results for trainer generated files' do
|
|
35
|
+
@junit.parse 'spec/fixtures/fastlane_trainer.xml'
|
|
36
|
+
|
|
37
|
+
expect(@junit.failures.count).to eq 1
|
|
38
|
+
expect(@junit.passes.count).to eq 1
|
|
39
|
+
expect(@junit.errors.count).to eq 0
|
|
40
|
+
expect(@junit.skipped.count).to eq 0
|
|
41
|
+
end
|
|
42
|
+
|
|
34
43
|
it 'gets the right results for the danger rspec failure' do
|
|
35
44
|
@junit.parse 'spec/fixtures/rspec_fail.xml'
|
|
36
45
|
|
|
@@ -49,7 +58,7 @@ module Danger
|
|
|
49
58
|
expect(output).to include(row)
|
|
50
59
|
end
|
|
51
60
|
|
|
52
|
-
|
|
61
|
+
it 'shows a known markdown row' do
|
|
53
62
|
@junit.parse 'spec/fixtures/rspec_fail.xml'
|
|
54
63
|
@junit.headers = [:time]
|
|
55
64
|
@junit.report
|
|
@@ -69,10 +78,8 @@ module Danger
|
|
|
69
78
|
end
|
|
70
79
|
|
|
71
80
|
it 'links paths that are files' do
|
|
72
|
-
allow(@dangerfile.github).to receive(:pr_json).and_return({
|
|
73
|
-
|
|
74
|
-
})
|
|
75
|
-
allow(@dangerfile.github).to receive(:head_commit).and_return("hello")
|
|
81
|
+
allow(@dangerfile.github).to receive(:pr_json).and_return(head: { repo: { html_url: 'https://github.com/thing/thingy' } })
|
|
82
|
+
allow(@dangerfile.github).to receive(:head_commit).and_return('hello')
|
|
76
83
|
|
|
77
84
|
@junit.parse 'spec/fixtures/danger-junit-fail.xml'
|
|
78
85
|
@junit.report
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: danger-junit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.7.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Orta Therox
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-08-
|
|
11
|
+
date: 2016-08-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: danger
|
|
@@ -199,7 +199,9 @@ files:
|
|
|
199
199
|
- lib/danger_plugin.rb
|
|
200
200
|
- lib/junit/gem_version.rb
|
|
201
201
|
- lib/junit/plugin.rb
|
|
202
|
+
- spec/fixtures/danger-junit-fail.xml
|
|
202
203
|
- spec/fixtures/eigen_fail.xml
|
|
204
|
+
- spec/fixtures/fastlane_trainer.xml
|
|
203
205
|
- spec/fixtures/rspec_fail.xml
|
|
204
206
|
- spec/fixtures/selenium.xml
|
|
205
207
|
- spec/junit_spec.rb
|
|
@@ -229,7 +231,9 @@ signing_key:
|
|
|
229
231
|
specification_version: 4
|
|
230
232
|
summary: Get automatic inline test reporting for JUnit-conforming XML files
|
|
231
233
|
test_files:
|
|
234
|
+
- spec/fixtures/danger-junit-fail.xml
|
|
232
235
|
- spec/fixtures/eigen_fail.xml
|
|
236
|
+
- spec/fixtures/fastlane_trainer.xml
|
|
233
237
|
- spec/fixtures/rspec_fail.xml
|
|
234
238
|
- spec/fixtures/selenium.xml
|
|
235
239
|
- spec/junit_spec.rb
|