coverband 3.0.1.alpha → 3.0.1
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 -1
- data/.travis.yml +3 -0
- data/Gemfile +1 -0
- data/Gemfile.rails4 +7 -0
- data/Gemfile.rails4.lock +164 -0
- data/README.md +14 -13
- data/changes.md +10 -3
- data/coverband.gemspec +1 -0
- data/lib/coverband/version.rb +1 -1
- data/test/benchmarks/benchmark.rake +39 -6
- data/test/rails4_dummy/app/controllers/dummy_controller.rb +5 -0
- data/test/rails4_dummy/config.ru +4 -0
- data/test/rails4_dummy/config/application.rb +15 -0
- data/test/rails4_dummy/config/boot.rb +3 -0
- data/test/rails4_dummy/config/coverband.rb +8 -0
- data/test/rails4_dummy/config/environment.rb +5 -0
- data/test/rails4_dummy/config/routes.rb +3 -0
- data/test/rails4_dummy/config/secrets.yml +3 -0
- data/test/rails5_dummy/app/controllers/dummy_controller.rb +5 -0
- data/test/rails5_dummy/config.ru +3 -0
- data/test/rails5_dummy/config/application.rb +16 -0
- data/test/rails5_dummy/config/coverband.rb +8 -0
- data/test/rails5_dummy/config/environment.rb +2 -0
- data/test/rails5_dummy/config/routes.rb +3 -0
- data/test/rails_test_helper.rb +11 -0
- data/test/test_helper.rb +0 -10
- data/test/unit/configuration_test.rb +12 -0
- data/test/unit/rails_full_stack_test.rb +16 -0
- metadata +52 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6e6e4e2aa7c0271b100b0ce9dc5740719a85b6be
|
|
4
|
+
data.tar.gz: 4be906bc977953bcba78c7d2bcf11f288fa21d15
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f60a464c8df70d9663ae550ce40e85a3d3c72dc3e32fc27f5ea64af405b57b7354aec420b78cd83a3e60fe018cecd9b80d8f0ae26424a44b90a97f294a488345
|
|
7
|
+
data.tar.gz: fee9a14503b7009ac42025df790d1c70ab78a33e79eb89bf18349ec25db1213ae6730036f866e1211cb9d4f652fda29becfacf18b0bf82052bc9834328af2056
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/Gemfile.rails4
ADDED
data/Gemfile.rails4.lock
ADDED
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
coverband (3.0.1.alpha)
|
|
5
|
+
simplecov (> 0.11.1)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
actionmailer (4.2.10)
|
|
11
|
+
actionpack (= 4.2.10)
|
|
12
|
+
actionview (= 4.2.10)
|
|
13
|
+
activejob (= 4.2.10)
|
|
14
|
+
mail (~> 2.5, >= 2.5.4)
|
|
15
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
|
16
|
+
actionpack (4.2.10)
|
|
17
|
+
actionview (= 4.2.10)
|
|
18
|
+
activesupport (= 4.2.10)
|
|
19
|
+
rack (~> 1.6)
|
|
20
|
+
rack-test (~> 0.6.2)
|
|
21
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
|
22
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
23
|
+
actionview (4.2.10)
|
|
24
|
+
activesupport (= 4.2.10)
|
|
25
|
+
builder (~> 3.1)
|
|
26
|
+
erubis (~> 2.7.0)
|
|
27
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
|
28
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
|
29
|
+
activejob (4.2.10)
|
|
30
|
+
activesupport (= 4.2.10)
|
|
31
|
+
globalid (>= 0.3.0)
|
|
32
|
+
activemodel (4.2.10)
|
|
33
|
+
activesupport (= 4.2.10)
|
|
34
|
+
builder (~> 3.1)
|
|
35
|
+
activerecord (4.2.10)
|
|
36
|
+
activemodel (= 4.2.10)
|
|
37
|
+
activesupport (= 4.2.10)
|
|
38
|
+
arel (~> 6.0)
|
|
39
|
+
activesupport (4.2.10)
|
|
40
|
+
i18n (~> 0.7)
|
|
41
|
+
minitest (~> 5.1)
|
|
42
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
|
43
|
+
tzinfo (~> 1.1)
|
|
44
|
+
arel (6.0.4)
|
|
45
|
+
aws-sdk (2.11.174)
|
|
46
|
+
aws-sdk-resources (= 2.11.174)
|
|
47
|
+
aws-sdk-core (2.11.174)
|
|
48
|
+
aws-sigv4 (~> 1.0)
|
|
49
|
+
jmespath (~> 1.0)
|
|
50
|
+
aws-sdk-resources (2.11.174)
|
|
51
|
+
aws-sdk-core (= 2.11.174)
|
|
52
|
+
aws-sigv4 (1.0.3)
|
|
53
|
+
benchmark-ips (2.7.2)
|
|
54
|
+
builder (3.2.3)
|
|
55
|
+
byebug (10.0.2)
|
|
56
|
+
classifier-reborn (2.2.0)
|
|
57
|
+
fast-stemmer (~> 1.0)
|
|
58
|
+
coderay (1.1.2)
|
|
59
|
+
concurrent-ruby (1.1.3)
|
|
60
|
+
crass (1.0.4)
|
|
61
|
+
docile (1.3.1)
|
|
62
|
+
erubis (2.7.0)
|
|
63
|
+
fast-stemmer (1.0.2)
|
|
64
|
+
globalid (0.4.1)
|
|
65
|
+
activesupport (>= 4.2.0)
|
|
66
|
+
i18n (0.9.5)
|
|
67
|
+
concurrent-ruby (~> 1.0)
|
|
68
|
+
jmespath (1.4.0)
|
|
69
|
+
json (2.1.0)
|
|
70
|
+
loofah (2.2.3)
|
|
71
|
+
crass (~> 1.0.2)
|
|
72
|
+
nokogiri (>= 1.5.9)
|
|
73
|
+
m (1.5.1)
|
|
74
|
+
method_source (>= 0.6.7)
|
|
75
|
+
rake (>= 0.9.2.2)
|
|
76
|
+
mail (2.7.1)
|
|
77
|
+
mini_mime (>= 0.1.1)
|
|
78
|
+
memory_profiler (0.9.12)
|
|
79
|
+
metaclass (0.0.4)
|
|
80
|
+
method_source (0.9.2)
|
|
81
|
+
mini_mime (1.0.1)
|
|
82
|
+
mini_portile2 (2.3.0)
|
|
83
|
+
minitest (5.11.3)
|
|
84
|
+
mocha (0.14.0)
|
|
85
|
+
metaclass (~> 0.0.1)
|
|
86
|
+
nokogiri (1.8.5)
|
|
87
|
+
mini_portile2 (~> 2.3.0)
|
|
88
|
+
power_assert (1.1.3)
|
|
89
|
+
pry (0.12.2)
|
|
90
|
+
coderay (~> 1.1.0)
|
|
91
|
+
method_source (~> 0.9.0)
|
|
92
|
+
pry-byebug (3.6.0)
|
|
93
|
+
byebug (~> 10.0)
|
|
94
|
+
pry (~> 0.10)
|
|
95
|
+
rack (1.6.11)
|
|
96
|
+
rack-test (0.6.3)
|
|
97
|
+
rack (>= 1.0)
|
|
98
|
+
rails (4.2.10)
|
|
99
|
+
actionmailer (= 4.2.10)
|
|
100
|
+
actionpack (= 4.2.10)
|
|
101
|
+
actionview (= 4.2.10)
|
|
102
|
+
activejob (= 4.2.10)
|
|
103
|
+
activemodel (= 4.2.10)
|
|
104
|
+
activerecord (= 4.2.10)
|
|
105
|
+
activesupport (= 4.2.10)
|
|
106
|
+
bundler (>= 1.3.0, < 2.0)
|
|
107
|
+
railties (= 4.2.10)
|
|
108
|
+
sprockets-rails
|
|
109
|
+
rails-deprecated_sanitizer (1.0.3)
|
|
110
|
+
activesupport (>= 4.2.0.alpha)
|
|
111
|
+
rails-dom-testing (1.0.9)
|
|
112
|
+
activesupport (>= 4.2.0, < 5.0)
|
|
113
|
+
nokogiri (~> 1.6)
|
|
114
|
+
rails-deprecated_sanitizer (>= 1.0.1)
|
|
115
|
+
rails-html-sanitizer (1.0.4)
|
|
116
|
+
loofah (~> 2.2, >= 2.2.2)
|
|
117
|
+
railties (4.2.10)
|
|
118
|
+
actionpack (= 4.2.10)
|
|
119
|
+
activesupport (= 4.2.10)
|
|
120
|
+
rake (>= 0.8.7)
|
|
121
|
+
thor (>= 0.18.1, < 2.0)
|
|
122
|
+
rake (12.3.1)
|
|
123
|
+
redis (4.0.3)
|
|
124
|
+
simplecov (0.16.1)
|
|
125
|
+
docile (~> 1.1)
|
|
126
|
+
json (>= 1.8, < 3)
|
|
127
|
+
simplecov-html (~> 0.10.0)
|
|
128
|
+
simplecov-html (0.10.2)
|
|
129
|
+
sprockets (3.7.2)
|
|
130
|
+
concurrent-ruby (~> 1.0)
|
|
131
|
+
rack (> 1, < 3)
|
|
132
|
+
sprockets-rails (3.2.1)
|
|
133
|
+
actionpack (>= 4.0)
|
|
134
|
+
activesupport (>= 4.0)
|
|
135
|
+
sprockets (>= 3.0.0)
|
|
136
|
+
test-unit (3.2.8)
|
|
137
|
+
power_assert
|
|
138
|
+
thor (0.20.3)
|
|
139
|
+
thread_safe (0.3.6)
|
|
140
|
+
tzinfo (1.2.5)
|
|
141
|
+
thread_safe (~> 0.1)
|
|
142
|
+
|
|
143
|
+
PLATFORMS
|
|
144
|
+
ruby
|
|
145
|
+
|
|
146
|
+
DEPENDENCIES
|
|
147
|
+
aws-sdk (~> 2)
|
|
148
|
+
benchmark-ips
|
|
149
|
+
bundler (~> 1.3)
|
|
150
|
+
classifier-reborn
|
|
151
|
+
coverband!
|
|
152
|
+
m
|
|
153
|
+
memory_profiler
|
|
154
|
+
mocha (~> 0.14.0)
|
|
155
|
+
pry-byebug
|
|
156
|
+
rack
|
|
157
|
+
rack-test
|
|
158
|
+
rails (~> 4)
|
|
159
|
+
rake
|
|
160
|
+
redis
|
|
161
|
+
test-unit
|
|
162
|
+
|
|
163
|
+
BUNDLED WITH
|
|
164
|
+
1.16.2
|
data/README.md
CHANGED
|
@@ -470,21 +470,20 @@ end
|
|
|
470
470
|
|
|
471
471
|
# protect with http basic auth
|
|
472
472
|
# curl --user foo:bar http://localhost:3000/coverage
|
|
473
|
-
basic_constraint = lambda do |request|
|
|
474
|
-
return true if Rails.env.development?
|
|
475
|
-
if ActionController::HttpAuthentication::Basic.has_basic_credentials?(request)
|
|
476
|
-
credentials = ActionController::HttpAuthentication::Basic.decode_credentials(request)
|
|
477
|
-
email, password = credentials.split(':')
|
|
478
|
-
|
|
479
|
-
email == 'foo' && password = 'bar'
|
|
480
|
-
end
|
|
481
|
-
end
|
|
482
|
-
|
|
483
473
|
Rails.application.routes.draw do
|
|
484
474
|
# ... lots of routes
|
|
485
|
-
|
|
486
|
-
|
|
475
|
+
|
|
476
|
+
# Create a Rack wrapper around the Coverband Web Reporter to support & prompt the user for basic authentication.
|
|
477
|
+
AuthenticatedCoverband = Rack::Builder.new do
|
|
478
|
+
use Rack::Auth::Basic do |username, password|
|
|
479
|
+
username == 'foo' && password == 'bar'
|
|
480
|
+
end
|
|
481
|
+
|
|
482
|
+
run Coverband::Reporters::Web.new
|
|
487
483
|
end
|
|
484
|
+
|
|
485
|
+
# Connect the wrapper app to your desired endpoint.
|
|
486
|
+
mount AuthenticatedCoverband, at: '/coverage'
|
|
488
487
|
end
|
|
489
488
|
```
|
|
490
489
|
|
|
@@ -527,7 +526,9 @@ If you are working on adding features, PRs, or bugfixes to Coverband this sectio
|
|
|
527
526
|
|
|
528
527
|
If you submit a change please make sure the tests and benchmarks are passing.
|
|
529
528
|
|
|
530
|
-
* run tests:
|
|
529
|
+
* run tests:
|
|
530
|
+
* `bundle exec rake`
|
|
531
|
+
* `BUNDLE_GEMFILE=Gemfile.rails4 bundle exec rake` (Same tests using rails 4 instead of 5)
|
|
531
532
|
* view test coverage: `open coverage/index.html`
|
|
532
533
|
* run the benchmarks before and after your change to see impact
|
|
533
534
|
* `rake benchmarks`
|
data/changes.md
CHANGED
|
@@ -45,7 +45,8 @@ Will be a stable and fast release that drops maintenance legacy support in favor
|
|
|
45
45
|
- add memory benchmarks showing memory overhead of coverband
|
|
46
46
|
- add articles / podcasts like prontos readme https://github.com/prontolabs/pronto
|
|
47
47
|
- add meta data information first seen last recorded to the coverage report views (probably need to drop simplecov for that).
|
|
48
|
-
- more details in this issue: https://github.com/danmayer/coverband/issues/118
|
|
48
|
+
- more details in this issue: https://github.com/danmayer/coverband/issues/118
|
|
49
|
+
- use full stack tests to prove no memory leaks when used in Rails
|
|
49
50
|
|
|
50
51
|
### Coverband_jam_session
|
|
51
52
|
|
|
@@ -70,6 +71,12 @@ Feature Ideas:
|
|
|
70
71
|
|
|
71
72
|
# Alpha
|
|
72
73
|
|
|
74
|
+
### Coverband ???
|
|
75
|
+
|
|
76
|
+
* Add support for Railties integration
|
|
77
|
+
|
|
78
|
+
# Released
|
|
79
|
+
|
|
73
80
|
### Coverband 3.0.1
|
|
74
81
|
|
|
75
82
|
* update documentation around verification steps (https://github.com/danmayer/coverband/issues/135), thanks @kbaum
|
|
@@ -78,8 +85,8 @@ Feature Ideas:
|
|
|
78
85
|
* auto-detection of Rack & Rails thanks @kbaum
|
|
79
86
|
* improved tests allowing exceptions to raise in tests @kbaum
|
|
80
87
|
* add support for both aws-sdk 1.x and 2.x thanks @jared
|
|
81
|
-
|
|
82
|
-
|
|
88
|
+
* adds memory test ensuring no memory leaks
|
|
89
|
+
* full stack Rails tests for Rails 4 and 5 thanks @kbaum
|
|
83
90
|
|
|
84
91
|
### Coverband 3.0.0
|
|
85
92
|
|
data/coverband.gemspec
CHANGED
|
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
|
|
|
32
32
|
spec.add_development_dependency 'redis'
|
|
33
33
|
spec.add_development_dependency 'test-unit'
|
|
34
34
|
spec.add_development_dependency 'm'
|
|
35
|
+
spec.add_development_dependency 'memory_profiler'
|
|
35
36
|
|
|
36
37
|
# used for benchmarking and tests
|
|
37
38
|
spec.add_development_dependency 'classifier-reborn'
|
data/lib/coverband/version.rb
CHANGED
|
@@ -166,11 +166,7 @@ namespace :benchmarks do
|
|
|
166
166
|
report
|
|
167
167
|
end
|
|
168
168
|
|
|
169
|
-
def
|
|
170
|
-
report = fake_report
|
|
171
|
-
store = benchmark_redis_store
|
|
172
|
-
store.clear!
|
|
173
|
-
|
|
169
|
+
def mock_files(store)
|
|
174
170
|
###
|
|
175
171
|
# this is a hack because in the benchmark we don't have real files
|
|
176
172
|
###
|
|
@@ -181,6 +177,13 @@ namespace :benchmarks do
|
|
|
181
177
|
@file_hash_cache[file] = Digest::MD5.file(__FILE__).hexdigest
|
|
182
178
|
end
|
|
183
179
|
end
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
def reporting_speed
|
|
183
|
+
report = fake_report
|
|
184
|
+
store = benchmark_redis_store
|
|
185
|
+
store.clear!
|
|
186
|
+
mock_files(store)
|
|
184
187
|
|
|
185
188
|
5.times { store.save_report(report) }
|
|
186
189
|
Benchmark.ips do |x|
|
|
@@ -189,6 +192,36 @@ namespace :benchmarks do
|
|
|
189
192
|
end
|
|
190
193
|
end
|
|
191
194
|
|
|
195
|
+
def measure_memory
|
|
196
|
+
require 'memory_profiler'
|
|
197
|
+
report = fake_report
|
|
198
|
+
store = benchmark_redis_store
|
|
199
|
+
store.clear!
|
|
200
|
+
mock_files(store)
|
|
201
|
+
|
|
202
|
+
# warmup
|
|
203
|
+
3.times { store.save_report(report) }
|
|
204
|
+
|
|
205
|
+
previous_out = $stdout
|
|
206
|
+
capture = StringIO.new
|
|
207
|
+
$stdout = capture
|
|
208
|
+
|
|
209
|
+
MemoryProfiler.report do
|
|
210
|
+
10.times { store.save_report(report) }
|
|
211
|
+
end.pretty_print
|
|
212
|
+
data = $stdout.string
|
|
213
|
+
$stdout = previous_out
|
|
214
|
+
raise 'leaking memory!!!' unless data.match('Total retained: 0 bytes')
|
|
215
|
+
ensure
|
|
216
|
+
$stdout = previous_out
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
desc 'runs memory reporting on Redis store'
|
|
220
|
+
task memory_reporting: [:setup] do
|
|
221
|
+
puts 'runs memory benchmarking to ensure we dont leak'
|
|
222
|
+
measure_memory
|
|
223
|
+
end
|
|
224
|
+
|
|
192
225
|
desc 'runs benchmarks on reporting large sets of files to redis'
|
|
193
226
|
task redis_reporting: [:setup] do
|
|
194
227
|
puts 'runs benchmarks on reporting large sets of files to redis'
|
|
@@ -218,7 +251,7 @@ namespace :benchmarks do
|
|
|
218
251
|
task :coverband_demo_graph do
|
|
219
252
|
# for local testing
|
|
220
253
|
# puts `ab -n 200 -c 5 "http://127.0.0.1:3000/posts"`
|
|
221
|
-
#puts `ab -n 500 -c 10 -g tmp/ab_brench.tsv "http://127.0.0.1:3000/posts"`
|
|
254
|
+
# puts `ab -n 500 -c 10 -g tmp/ab_brench.tsv "http://127.0.0.1:3000/posts"`
|
|
222
255
|
puts `ab -n 2000 -c 10 -g tmp/ab_brench.tsv "https://coverband-demo.herokuapp.com/posts"`
|
|
223
256
|
puts `test/benchmarks/graph_bench.sh`
|
|
224
257
|
`open tmp/timeseries.jpg`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
require File.expand_path('../boot', __FILE__)
|
|
2
|
+
|
|
3
|
+
require "rails"
|
|
4
|
+
require "action_controller/railtie"
|
|
5
|
+
module Rails4Dummy
|
|
6
|
+
class Application < Rails::Application
|
|
7
|
+
# Coverband needs to be setup before any of the initializers to capture usage of them
|
|
8
|
+
Coverband.configure(File.open("#{Rails.root}/config/coverband.rb"))
|
|
9
|
+
config.middleware.use Coverband::Middleware
|
|
10
|
+
config.before_initialize do
|
|
11
|
+
Coverband.start
|
|
12
|
+
end
|
|
13
|
+
config.eager_load = false
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Coverband.configure do |config|
|
|
2
|
+
config.root = Dir.pwd
|
|
3
|
+
config.store = Coverband::Adapters::RedisStore.new(Redis.new(url: ENV['REDIS_URL'])) if defined? Redis
|
|
4
|
+
config.ignore = %w[vendor .erb$ .slim$]
|
|
5
|
+
config.root_paths = []
|
|
6
|
+
config.reporting_frequency = 100.0
|
|
7
|
+
config.logger = Rails.logger
|
|
8
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
require "rails"
|
|
2
|
+
require "action_controller/railtie"
|
|
3
|
+
require 'coverband'
|
|
4
|
+
|
|
5
|
+
module Dummy
|
|
6
|
+
class Application < Rails::Application
|
|
7
|
+
# Coverband needs to be setup before any of the initializers to capture usage of them
|
|
8
|
+
Coverband.configure(File.open("#{Rails.root}/config/coverband.rb"))
|
|
9
|
+
config.middleware.use Coverband::Middleware
|
|
10
|
+
config.before_initialize do
|
|
11
|
+
Coverband.start
|
|
12
|
+
end
|
|
13
|
+
config.eager_load = false
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Coverband.configure do |config|
|
|
2
|
+
config.root = Dir.pwd
|
|
3
|
+
config.store = Coverband::Adapters::RedisStore.new(Redis.new(url: ENV['REDIS_URL'])) if defined? Redis
|
|
4
|
+
config.ignore = %w[vendor .erb$ .slim$]
|
|
5
|
+
config.root_paths = []
|
|
6
|
+
config.reporting_frequency = 100.0
|
|
7
|
+
config.logger = Rails.logger
|
|
8
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Configure Rails Environment
|
|
2
|
+
ENV["RAILS_ENV"] = "test"
|
|
3
|
+
require 'rails'
|
|
4
|
+
require File.expand_path('./test_helper', File.dirname(__FILE__))
|
|
5
|
+
|
|
6
|
+
if Rails::VERSION::MAJOR >= 5
|
|
7
|
+
require_relative "../test/rails5_dummy/config/environment"
|
|
8
|
+
else
|
|
9
|
+
require_relative "../test/rails4_dummy/config/environment"
|
|
10
|
+
end
|
|
11
|
+
|
data/test/test_helper.rb
CHANGED
|
@@ -68,16 +68,6 @@ end
|
|
|
68
68
|
|
|
69
69
|
require 'coverband'
|
|
70
70
|
|
|
71
|
-
Coverband.configure do |config|
|
|
72
|
-
config.root = Dir.pwd
|
|
73
|
-
config.s3_bucket = nil
|
|
74
|
-
config.root_paths = ['/app_path/']
|
|
75
|
-
config.ignore = ['vendor']
|
|
76
|
-
config.reporting_frequency = 100.0
|
|
77
|
-
config.reporter = 'std_out'
|
|
78
|
-
config.store = Coverband::Adapters::RedisStore.new(Redis.new)
|
|
79
|
-
end
|
|
80
|
-
|
|
81
71
|
Coverband::Configuration.class_eval do
|
|
82
72
|
def test_env
|
|
83
73
|
true
|
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
require File.expand_path('../test_helper', File.dirname(__FILE__))
|
|
4
4
|
|
|
5
5
|
class BaseTest < Test::Unit::TestCase
|
|
6
|
+
def setup
|
|
7
|
+
Coverband.configure do |config|
|
|
8
|
+
config.root = Dir.pwd
|
|
9
|
+
config.s3_bucket = nil
|
|
10
|
+
config.root_paths = ['/app_path/']
|
|
11
|
+
config.ignore = ['vendor']
|
|
12
|
+
config.reporting_frequency = 100.0
|
|
13
|
+
config.reporter = 'std_out'
|
|
14
|
+
config.store = Coverband::Adapters::RedisStore.new(Redis.new)
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
6
18
|
test 'defaults ' do
|
|
7
19
|
coverband = Coverband::Collectors::Coverage.instance.reset_instance
|
|
8
20
|
assert_equal ['vendor', 'internal:prelude', 'schema.rb'], coverband.instance_variable_get('@ignore_patterns')
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require File.expand_path('../rails_test_helper', File.dirname(__FILE__))
|
|
4
|
+
|
|
5
|
+
class RailsFullStackTest < ActionDispatch::IntegrationTest
|
|
6
|
+
def setup
|
|
7
|
+
Coverband.configuration.store.clear!
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
test 'this is how we do it' do
|
|
11
|
+
get '/dummy/show'
|
|
12
|
+
assert_response :success
|
|
13
|
+
assert_equal "I am no dummy", response.body
|
|
14
|
+
assert_equal [1, 1, 1, nil, nil], Coverband.configuration.store.coverage["#{Rails.root}/app/controllers/dummy_controller.rb"]
|
|
15
|
+
end
|
|
16
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: coverband
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.0.1
|
|
4
|
+
version: 3.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Dan Mayer
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-11-
|
|
11
|
+
date: 2018-11-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: aws-sdk
|
|
@@ -150,6 +150,20 @@ dependencies:
|
|
|
150
150
|
- - ">="
|
|
151
151
|
- !ruby/object:Gem::Version
|
|
152
152
|
version: '0'
|
|
153
|
+
- !ruby/object:Gem::Dependency
|
|
154
|
+
name: memory_profiler
|
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
|
156
|
+
requirements:
|
|
157
|
+
- - ">="
|
|
158
|
+
- !ruby/object:Gem::Version
|
|
159
|
+
version: '0'
|
|
160
|
+
type: :development
|
|
161
|
+
prerelease: false
|
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
163
|
+
requirements:
|
|
164
|
+
- - ">="
|
|
165
|
+
- !ruby/object:Gem::Version
|
|
166
|
+
version: '0'
|
|
153
167
|
- !ruby/object:Gem::Dependency
|
|
154
168
|
name: classifier-reborn
|
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -203,6 +217,8 @@ files:
|
|
|
203
217
|
- ".rubocop.yml"
|
|
204
218
|
- ".travis.yml"
|
|
205
219
|
- Gemfile
|
|
220
|
+
- Gemfile.rails4
|
|
221
|
+
- Gemfile.rails4.lock
|
|
206
222
|
- LICENSE
|
|
207
223
|
- LICENSE.txt
|
|
208
224
|
- README.md
|
|
@@ -231,6 +247,21 @@ files:
|
|
|
231
247
|
- test/benchmarks/dog.rb
|
|
232
248
|
- test/benchmarks/graph_bench.sh
|
|
233
249
|
- test/fake_app/basic_rack.rb
|
|
250
|
+
- test/rails4_dummy/app/controllers/dummy_controller.rb
|
|
251
|
+
- test/rails4_dummy/config.ru
|
|
252
|
+
- test/rails4_dummy/config/application.rb
|
|
253
|
+
- test/rails4_dummy/config/boot.rb
|
|
254
|
+
- test/rails4_dummy/config/coverband.rb
|
|
255
|
+
- test/rails4_dummy/config/environment.rb
|
|
256
|
+
- test/rails4_dummy/config/routes.rb
|
|
257
|
+
- test/rails4_dummy/config/secrets.yml
|
|
258
|
+
- test/rails5_dummy/app/controllers/dummy_controller.rb
|
|
259
|
+
- test/rails5_dummy/config.ru
|
|
260
|
+
- test/rails5_dummy/config/application.rb
|
|
261
|
+
- test/rails5_dummy/config/coverband.rb
|
|
262
|
+
- test/rails5_dummy/config/environment.rb
|
|
263
|
+
- test/rails5_dummy/config/routes.rb
|
|
264
|
+
- test/rails_test_helper.rb
|
|
234
265
|
- test/test_helper.rb
|
|
235
266
|
- test/unit/adapters_base_test.rb
|
|
236
267
|
- test/unit/adapters_file_store_test.rb
|
|
@@ -243,6 +274,7 @@ files:
|
|
|
243
274
|
- test/unit/full_stack_test.rb
|
|
244
275
|
- test/unit/middleware_test.rb
|
|
245
276
|
- test/unit/rack_server_checkout_test.rb
|
|
277
|
+
- test/unit/rails_full_stack_test.rb
|
|
246
278
|
- test/unit/reports_base_test.rb
|
|
247
279
|
- test/unit/reports_console_test.rb
|
|
248
280
|
- test/unit/reports_simple_cov_test.rb
|
|
@@ -263,9 +295,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
263
295
|
version: '0'
|
|
264
296
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
265
297
|
requirements:
|
|
266
|
-
- - "
|
|
298
|
+
- - ">="
|
|
267
299
|
- !ruby/object:Gem::Version
|
|
268
|
-
version:
|
|
300
|
+
version: '0'
|
|
269
301
|
requirements: []
|
|
270
302
|
rubyforge_project:
|
|
271
303
|
rubygems_version: 2.5.1
|
|
@@ -278,6 +310,21 @@ test_files:
|
|
|
278
310
|
- test/benchmarks/dog.rb
|
|
279
311
|
- test/benchmarks/graph_bench.sh
|
|
280
312
|
- test/fake_app/basic_rack.rb
|
|
313
|
+
- test/rails4_dummy/app/controllers/dummy_controller.rb
|
|
314
|
+
- test/rails4_dummy/config.ru
|
|
315
|
+
- test/rails4_dummy/config/application.rb
|
|
316
|
+
- test/rails4_dummy/config/boot.rb
|
|
317
|
+
- test/rails4_dummy/config/coverband.rb
|
|
318
|
+
- test/rails4_dummy/config/environment.rb
|
|
319
|
+
- test/rails4_dummy/config/routes.rb
|
|
320
|
+
- test/rails4_dummy/config/secrets.yml
|
|
321
|
+
- test/rails5_dummy/app/controllers/dummy_controller.rb
|
|
322
|
+
- test/rails5_dummy/config.ru
|
|
323
|
+
- test/rails5_dummy/config/application.rb
|
|
324
|
+
- test/rails5_dummy/config/coverband.rb
|
|
325
|
+
- test/rails5_dummy/config/environment.rb
|
|
326
|
+
- test/rails5_dummy/config/routes.rb
|
|
327
|
+
- test/rails_test_helper.rb
|
|
281
328
|
- test/test_helper.rb
|
|
282
329
|
- test/unit/adapters_base_test.rb
|
|
283
330
|
- test/unit/adapters_file_store_test.rb
|
|
@@ -290,6 +337,7 @@ test_files:
|
|
|
290
337
|
- test/unit/full_stack_test.rb
|
|
291
338
|
- test/unit/middleware_test.rb
|
|
292
339
|
- test/unit/rack_server_checkout_test.rb
|
|
340
|
+
- test/unit/rails_full_stack_test.rb
|
|
293
341
|
- test/unit/reports_base_test.rb
|
|
294
342
|
- test/unit/reports_console_test.rb
|
|
295
343
|
- test/unit/reports_simple_cov_test.rb
|