probe-dock-rspec 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/CHANGELOG.md +13 -0
- data/Gemfile +2 -1
- data/README.md +5 -1
- data/VERSION +1 -1
- data/lib/probe_dock_rspec.rb +1 -1
- data/lib/probe_dock_rspec/client.rb +1 -1
- data/lib/probe_dock_rspec/config.rb +40 -15
- data/lib/probe_dock_rspec/formatter.rb +0 -1
- data/lib/probe_dock_rspec/server.rb +8 -7
- metadata +47 -35
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NmU1M2JjNzY2Y2E5MjE1OWIyOTQ1ZjI4MjcxYTkxODBkZGZiMGVlNg==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 20a879769e8aeb7363116ac88ea1583e9d8e7027
|
4
|
+
data.tar.gz: 27f5d23864d0a4ee0264cc7787c61dcdaf166002
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
ZjhmN2ExZWQ2MTJjMDFkMjNmMDcyN2U5MGU3ZTcwMjIxOTFlMDVjZTM0Zjhj
|
11
|
-
NTM4OGU5MjBiMTQyZTY3MjUxMGU2ZjM3MDNhNDkzMjg2ZTc5MDY=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NGIwZmM2NWJiZjc2MTExMjU3MWFlNDFiM2UxMjVjYjFlZmRhN2U4M2VjZjBi
|
14
|
-
NTI3ODBkMzJjNTg0MGVhMzg2YmZjYTNhNjIxZmU1MzE5ZWQ3MGI3YzI2OWIz
|
15
|
-
ODIyYTE4ZWExODQxOTI3NjBiYTFhODFmYzg1ZmUzYjg5MDU5NjE=
|
6
|
+
metadata.gz: 785e9872d8ffa21fe7e66970463423017be0f93e546654e6ca328d91b3306f04bc1482fc725f333f502149b14cae3458b82f336cc07277990c317fe8d371fffe
|
7
|
+
data.tar.gz: bad0389e98fb6fece95f0fa20a719565ec15edbe1cf82640e8e0ef8ba3517cfda93f13306396ec561946f8a0e654d6f8772938838e9735b05d378ea040f68792
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## v0.4.0 - September 11, 2014
|
4
|
+
|
5
|
+
* Upgraded to RSpec 3.1.
|
6
|
+
|
7
|
+
## v0.3.1 - December 13, 2013
|
8
|
+
|
9
|
+
* The `servers` key in the YAML configuration file is now a hash instead of an array.
|
10
|
+
|
11
|
+
## v0.3.0 - October 25, 2013
|
12
|
+
|
13
|
+
* First open source version.
|
data/Gemfile
CHANGED
@@ -14,8 +14,9 @@ gem 'rake', '~> 10.1'
|
|
14
14
|
group :development do
|
15
15
|
gem 'jeweler', '~> 2.0'
|
16
16
|
gem 'rake-version', '~> 0.4'
|
17
|
-
gem 'simplecov', '~> 0.10'
|
17
|
+
gem 'simplecov', '~> 0.10', require: false
|
18
18
|
gem 'fakefs', '~> 0.6', require: 'fakefs/safe'
|
19
19
|
gem 'rspec-its', '~> 1.2'
|
20
20
|
gem 'rspec-collection_matchers', '~> 1.1'
|
21
|
+
gem 'coveralls', '~> 0.8', require: false
|
21
22
|
end
|
data/README.md
CHANGED
@@ -2,7 +2,11 @@
|
|
2
2
|
|
3
3
|
**RSpec probe for [Probe Dock](https://github.com/probe-dock/probe-dock).**
|
4
4
|
|
5
|
-
[![Gem Version](https://badge.fury.io/rb/probe-dock-rspec.
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/probe-dock-rspec.svg)](http://badge.fury.io/rb/probe-dock-rspec)
|
6
|
+
[![Dependency Status](https://gemnasium.com/probe-dock/probe-dock-rspec.svg)](https://gemnasium.com/probe-dock/probe-dock-rspec)
|
7
|
+
[![Build Status](https://secure.travis-ci.org/probe-dock/probe-dock-rspec.svg)](http://travis-ci.org/probe-dock/probe-dock-rspec)
|
8
|
+
[![Coverage Status](https://coveralls.io/repos/probe-dock/probe-dock-rspec/badge.svg)](https://coveralls.io/r/probe-dock/probe-dock-rspec?branch=master)
|
9
|
+
[![License](https://img.shields.io/github/license/probe-dock/probe-dock-rspec.svg)](LICENSE.txt)
|
6
10
|
|
7
11
|
## Requirements
|
8
12
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.1
|
data/lib/probe_dock_rspec.rb
CHANGED
@@ -4,13 +4,18 @@ require 'yaml'
|
|
4
4
|
module ProbeDockRSpec
|
5
5
|
|
6
6
|
def self.config
|
7
|
-
@config ||= Config.new.tap(&:load)
|
7
|
+
@config ||= Config.new.tap(&:load!)
|
8
8
|
end
|
9
9
|
|
10
10
|
def self.configure options = {}
|
11
|
+
|
11
12
|
yield config if block_given?
|
13
|
+
|
14
|
+
config.check!
|
12
15
|
config.load_warnings.each{ |w| warn Paint["Probe Dock - #{w}", :yellow] }
|
16
|
+
|
13
17
|
config.setup! if options[:setup] != false
|
18
|
+
|
14
19
|
config
|
15
20
|
end
|
16
21
|
|
@@ -22,6 +27,7 @@ module ProbeDockRSpec
|
|
22
27
|
|
23
28
|
def initialize
|
24
29
|
@servers = []
|
30
|
+
@server = Server.new
|
25
31
|
@project = Project.new
|
26
32
|
@publish, @local_mode, @cache_payload, @print_payload, @save_payload = false, false, false, false, false
|
27
33
|
@load_warnings = []
|
@@ -57,7 +63,10 @@ module ProbeDockRSpec
|
|
57
63
|
}.select{ |k,v| !v.nil? }
|
58
64
|
end
|
59
65
|
|
60
|
-
def load
|
66
|
+
def load!
|
67
|
+
|
68
|
+
@server.clear
|
69
|
+
@servers.clear
|
61
70
|
|
62
71
|
@load_warnings = []
|
63
72
|
return unless config = load_config_files
|
@@ -71,16 +80,20 @@ module ProbeDockRSpec
|
|
71
80
|
@print_payload = parse_env_flag :print_payload, !!config[:payload][:print]
|
72
81
|
@save_payload = parse_env_flag :save_payload, !!config[:payload][:save]
|
73
82
|
|
74
|
-
@servers,
|
83
|
+
@servers, server = build_servers config
|
75
84
|
|
76
|
-
if
|
77
|
-
@
|
78
|
-
|
79
|
-
@
|
80
|
-
elsif !@server
|
81
|
-
@load_warnings << "Unknown server '#{@server_name}'"
|
85
|
+
if server
|
86
|
+
@server = server
|
87
|
+
else
|
88
|
+
@server.name = @server_name
|
82
89
|
end
|
83
90
|
|
91
|
+
{
|
92
|
+
api_url: parse_env_option(:server_api_url),
|
93
|
+
api_token: parse_env_option(:server_api_token),
|
94
|
+
project_api_id: parse_env_option(:server_project_api_id)
|
95
|
+
}.each{ |k,v| @server.send "#{k}=", v if v }
|
96
|
+
|
84
97
|
project_options = config[:project]
|
85
98
|
project_options.merge! api_id: @server.project_api_id if @server and @server.project_api_id
|
86
99
|
@project.update project_options
|
@@ -88,6 +101,22 @@ module ProbeDockRSpec
|
|
88
101
|
self
|
89
102
|
end
|
90
103
|
|
104
|
+
def check!
|
105
|
+
|
106
|
+
configs = [ home_config_file, working_config_file ]
|
107
|
+
actual_configs = configs.select{ |f| File.exists? f }
|
108
|
+
|
109
|
+
if actual_configs.empty?
|
110
|
+
@load_warnings << %|no config file found, looking for:\n #{configs.join "\n "}|
|
111
|
+
end
|
112
|
+
|
113
|
+
if @servers.empty?
|
114
|
+
@load_warnings << "No server defined"
|
115
|
+
elsif !@server_name && !@server.name
|
116
|
+
@load_warnings << "No server name given"
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
91
120
|
private
|
92
121
|
|
93
122
|
def build_servers config
|
@@ -105,11 +134,7 @@ module ProbeDockRSpec
|
|
105
134
|
|
106
135
|
configs = [ home_config_file, working_config_file ]
|
107
136
|
actual_configs = configs.select{ |f| File.exists? f }
|
108
|
-
|
109
|
-
if actual_configs.empty?
|
110
|
-
@load_warnings << %|no config file found, looking for:\n #{configs.join "\n "}|
|
111
|
-
return false
|
112
|
-
end
|
137
|
+
return false if actual_configs.empty?
|
113
138
|
|
114
139
|
actual_configs.collect!{ |f| YAML.load_file f }
|
115
140
|
|
@@ -141,7 +166,7 @@ module ProbeDockRSpec
|
|
141
166
|
|
142
167
|
def parse_env_flag name, default = false
|
143
168
|
val = parse_env_option name
|
144
|
-
val ? !!val.to_s.strip.match(/\A(1|t|true)\Z/i) : default
|
169
|
+
val ? !!val.to_s.strip.match(/\A(1|y|yes|t|true)\Z/i) : default
|
145
170
|
end
|
146
171
|
|
147
172
|
def parse_env_option name
|
@@ -4,7 +4,7 @@ require 'httparty'
|
|
4
4
|
module ProbeDockRSpec
|
5
5
|
|
6
6
|
class Server
|
7
|
-
|
7
|
+
attr_accessor :name, :api_url, :api_token, :project_api_id
|
8
8
|
|
9
9
|
class Error < ProbeDockRSpec::Error
|
10
10
|
attr_reader :response
|
@@ -16,15 +16,17 @@ module ProbeDockRSpec
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def initialize options = {}
|
19
|
-
@name = options[:name].to_s.strip
|
19
|
+
@name = options[:name].to_s.strip if options[:name]
|
20
20
|
@api_url = options[:api_url].to_s if options[:api_url]
|
21
21
|
@api_token = options[:api_token].to_s if options[:api_token]
|
22
|
-
@api_version = options[:api_version] || 1
|
23
22
|
@project_api_id = options[:project_api_id].to_s if options[:project_api_id]
|
24
23
|
end
|
25
24
|
|
26
|
-
def
|
27
|
-
|
25
|
+
def clear
|
26
|
+
@name = nil
|
27
|
+
@api_url = nil
|
28
|
+
@api_token = nil
|
29
|
+
@project_api_id = nil
|
28
30
|
end
|
29
31
|
|
30
32
|
def upload payload
|
@@ -41,8 +43,7 @@ module ProbeDockRSpec
|
|
41
43
|
private
|
42
44
|
|
43
45
|
def validate!
|
44
|
-
required = { "apiUrl" => @api_url }
|
45
|
-
required.merge!({ "apiToken" => @api_token, "projectApiId" => @project_api_id }) if @api_version >= 1
|
46
|
+
required = { "name" => @name, "apiUrl" => @api_url, "apiToken" => @api_token, "projectApiId" => @project_api_id }
|
46
47
|
missing = required.inject([]){ |memo,(k,v)| v.to_s.strip.length <= 0 ? memo << k : memo }
|
47
48
|
raise Error.new("Server #{@name} is missing the following options: #{missing.join ', '}") if missing.any?
|
48
49
|
end
|
metadata
CHANGED
@@ -1,182 +1,194 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: probe-dock-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Simon Oulevay (Alpha Hydrae)
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-05-
|
11
|
+
date: 2015-05-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '3.1'
|
20
20
|
type: :runtime
|
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: '3.1'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: oj
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '2.1'
|
34
34
|
type: :runtime
|
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: '2.1'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: httparty
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
-
MC4xMw==
|
47
|
+
version: '0.13'
|
49
48
|
type: :runtime
|
50
49
|
prerelease: false
|
51
50
|
version_requirements: !ruby/object:Gem::Requirement
|
52
51
|
requirements:
|
53
|
-
- - ~>
|
52
|
+
- - "~>"
|
54
53
|
- !ruby/object:Gem::Version
|
55
|
-
version:
|
56
|
-
MC4xMw==
|
54
|
+
version: '0.13'
|
57
55
|
- !ruby/object:Gem::Dependency
|
58
56
|
name: paint
|
59
57
|
requirement: !ruby/object:Gem::Requirement
|
60
58
|
requirements:
|
61
|
-
- - ~>
|
59
|
+
- - "~>"
|
62
60
|
- !ruby/object:Gem::Version
|
63
61
|
version: '1.0'
|
64
62
|
type: :runtime
|
65
63
|
prerelease: false
|
66
64
|
version_requirements: !ruby/object:Gem::Requirement
|
67
65
|
requirements:
|
68
|
-
- - ~>
|
66
|
+
- - "~>"
|
69
67
|
- !ruby/object:Gem::Version
|
70
68
|
version: '1.0'
|
71
69
|
- !ruby/object:Gem::Dependency
|
72
70
|
name: rake
|
73
71
|
requirement: !ruby/object:Gem::Requirement
|
74
72
|
requirements:
|
75
|
-
- - ~>
|
73
|
+
- - "~>"
|
76
74
|
- !ruby/object:Gem::Version
|
77
75
|
version: '10.1'
|
78
76
|
type: :runtime
|
79
77
|
prerelease: false
|
80
78
|
version_requirements: !ruby/object:Gem::Requirement
|
81
79
|
requirements:
|
82
|
-
- - ~>
|
80
|
+
- - "~>"
|
83
81
|
- !ruby/object:Gem::Version
|
84
82
|
version: '10.1'
|
85
83
|
- !ruby/object:Gem::Dependency
|
86
84
|
name: jeweler
|
87
85
|
requirement: !ruby/object:Gem::Requirement
|
88
86
|
requirements:
|
89
|
-
- - ~>
|
87
|
+
- - "~>"
|
90
88
|
- !ruby/object:Gem::Version
|
91
89
|
version: '2.0'
|
92
90
|
type: :development
|
93
91
|
prerelease: false
|
94
92
|
version_requirements: !ruby/object:Gem::Requirement
|
95
93
|
requirements:
|
96
|
-
- - ~>
|
94
|
+
- - "~>"
|
97
95
|
- !ruby/object:Gem::Version
|
98
96
|
version: '2.0'
|
99
97
|
- !ruby/object:Gem::Dependency
|
100
98
|
name: rake-version
|
101
99
|
requirement: !ruby/object:Gem::Requirement
|
102
100
|
requirements:
|
103
|
-
- - ~>
|
101
|
+
- - "~>"
|
104
102
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
106
|
-
MC40
|
103
|
+
version: '0.4'
|
107
104
|
type: :development
|
108
105
|
prerelease: false
|
109
106
|
version_requirements: !ruby/object:Gem::Requirement
|
110
107
|
requirements:
|
111
|
-
- - ~>
|
108
|
+
- - "~>"
|
112
109
|
- !ruby/object:Gem::Version
|
113
|
-
version:
|
114
|
-
MC40
|
110
|
+
version: '0.4'
|
115
111
|
- !ruby/object:Gem::Dependency
|
116
112
|
name: simplecov
|
117
113
|
requirement: !ruby/object:Gem::Requirement
|
118
114
|
requirements:
|
119
|
-
- - ~>
|
115
|
+
- - "~>"
|
120
116
|
- !ruby/object:Gem::Version
|
121
117
|
version: '0.10'
|
122
118
|
type: :development
|
123
119
|
prerelease: false
|
124
120
|
version_requirements: !ruby/object:Gem::Requirement
|
125
121
|
requirements:
|
126
|
-
- - ~>
|
122
|
+
- - "~>"
|
127
123
|
- !ruby/object:Gem::Version
|
128
124
|
version: '0.10'
|
129
125
|
- !ruby/object:Gem::Dependency
|
130
126
|
name: fakefs
|
131
127
|
requirement: !ruby/object:Gem::Requirement
|
132
128
|
requirements:
|
133
|
-
- - ~>
|
129
|
+
- - "~>"
|
134
130
|
- !ruby/object:Gem::Version
|
135
131
|
version: '0.6'
|
136
132
|
type: :development
|
137
133
|
prerelease: false
|
138
134
|
version_requirements: !ruby/object:Gem::Requirement
|
139
135
|
requirements:
|
140
|
-
- - ~>
|
136
|
+
- - "~>"
|
141
137
|
- !ruby/object:Gem::Version
|
142
138
|
version: '0.6'
|
143
139
|
- !ruby/object:Gem::Dependency
|
144
140
|
name: rspec-its
|
145
141
|
requirement: !ruby/object:Gem::Requirement
|
146
142
|
requirements:
|
147
|
-
- - ~>
|
143
|
+
- - "~>"
|
148
144
|
- !ruby/object:Gem::Version
|
149
145
|
version: '1.2'
|
150
146
|
type: :development
|
151
147
|
prerelease: false
|
152
148
|
version_requirements: !ruby/object:Gem::Requirement
|
153
149
|
requirements:
|
154
|
-
- - ~>
|
150
|
+
- - "~>"
|
155
151
|
- !ruby/object:Gem::Version
|
156
152
|
version: '1.2'
|
157
153
|
- !ruby/object:Gem::Dependency
|
158
154
|
name: rspec-collection_matchers
|
159
155
|
requirement: !ruby/object:Gem::Requirement
|
160
156
|
requirements:
|
161
|
-
- - ~>
|
157
|
+
- - "~>"
|
162
158
|
- !ruby/object:Gem::Version
|
163
159
|
version: '1.1'
|
164
160
|
type: :development
|
165
161
|
prerelease: false
|
166
162
|
version_requirements: !ruby/object:Gem::Requirement
|
167
163
|
requirements:
|
168
|
-
- - ~>
|
164
|
+
- - "~>"
|
169
165
|
- !ruby/object:Gem::Version
|
170
166
|
version: '1.1'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: coveralls
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0.8'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0.8'
|
171
181
|
description: RSpec client to publish test results to Probe Dock, a test tracking and
|
172
182
|
analysis server.
|
173
183
|
email: simon.oulevay@gmail.com
|
174
184
|
executables: []
|
175
185
|
extensions: []
|
176
186
|
extra_rdoc_files:
|
187
|
+
- CHANGELOG.md
|
177
188
|
- LICENSE.txt
|
178
189
|
- README.md
|
179
190
|
files:
|
191
|
+
- CHANGELOG.md
|
180
192
|
- Gemfile
|
181
193
|
- LICENSE.txt
|
182
194
|
- README.md
|
@@ -204,17 +216,17 @@ require_paths:
|
|
204
216
|
- lib
|
205
217
|
required_ruby_version: !ruby/object:Gem::Requirement
|
206
218
|
requirements:
|
207
|
-
- -
|
219
|
+
- - ">="
|
208
220
|
- !ruby/object:Gem::Version
|
209
221
|
version: '0'
|
210
222
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
211
223
|
requirements:
|
212
|
-
- -
|
224
|
+
- - ">="
|
213
225
|
- !ruby/object:Gem::Version
|
214
226
|
version: '0'
|
215
227
|
requirements: []
|
216
228
|
rubyforge_project:
|
217
|
-
rubygems_version: 2.4.
|
229
|
+
rubygems_version: 2.4.6
|
218
230
|
signing_key:
|
219
231
|
specification_version: 4
|
220
232
|
summary: RSpec client to publish test results to Probe Dock.
|