mr_bump 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +8 -8
  2. data/bin/mr_bump +60 -33
  3. data/lib/mr_bump.rb +35 -13
  4. data/spec/mr_bump_spec.rb +200 -1
  5. data/spec/mr_bump_spec.rb.orig +626 -0
  6. data/spec/spec_helper.rb +2 -1
  7. data/spec/version_spec.rb +115 -0
  8. metadata +7 -53
  9. data/spec/coverage/assets/0.10.0/application.css +0 -799
  10. data/spec/coverage/assets/0.10.0/application.js +0 -1707
  11. data/spec/coverage/assets/0.10.0/colorbox/border.png +0 -0
  12. data/spec/coverage/assets/0.10.0/colorbox/controls.png +0 -0
  13. data/spec/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
  14. data/spec/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
  15. data/spec/coverage/assets/0.10.0/favicon_green.png +0 -0
  16. data/spec/coverage/assets/0.10.0/favicon_red.png +0 -0
  17. data/spec/coverage/assets/0.10.0/favicon_yellow.png +0 -0
  18. data/spec/coverage/assets/0.10.0/loading.gif +0 -0
  19. data/spec/coverage/assets/0.10.0/magnify.png +0 -0
  20. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  21. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  22. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  23. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  24. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  25. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  26. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  27. data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  28. data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  29. data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  30. data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  31. data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  32. data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  33. data/spec/coverage/index.html +0 -72
@@ -0,0 +1,626 @@
1
+ # This Source Code Form is subject to the terms of the Mozilla Public
2
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
3
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
+
5
+ require_relative 'spec_helper.rb'
6
+ require 'mr_bump/version'
7
+ require 'mr_bump/change'
8
+ require 'mr_bump'
9
+
10
+ describe MrBump do
11
+ describe '#all_tagged_versions' do
12
+ before(:each) { allow(MrBump).to receive(:all_tags).and_return(tag_list) }
13
+
14
+ context 'when given a mixed list of tags' do
15
+ let(:tag_list) do
16
+ [
17
+ 'safbdhasgbd',
18
+ '',
19
+ '9.1.32',
20
+ '21.1',
21
+ '132',
22
+ 'Not.A Version'
23
+ ]
24
+ end
25
+ it 'parses into versions where possible' do
26
+ expect(MrBump.all_tagged_versions).to match_array(
27
+ [
28
+ MrBump::Version.new('9.1.32'),
29
+ MrBump::Version.new('21.1'),
30
+ MrBump::Version.new('132')
31
+ ]
32
+ )
33
+ end
34
+ end
35
+ end
36
+
37
+ describe '#current_uat' do
38
+ before(:each) do
39
+ allow(MrBump).to receive(:all_tags).and_return(tag_list)
40
+ allow(MrBump).to receive(:current_uat_major).and_return(MrBump::Version.new(next_version))
41
+ end
42
+
43
+ context 'when the next release is a minor bump' do
44
+ let(:next_version) { '1.2.0' }
45
+ let(:tag_list) do
46
+ [
47
+ 'safbdhasgbd',
48
+ '',
49
+ 'Not.A Version',
50
+ '1.2.3',
51
+ '1.2.2',
52
+ '1.1.1',
53
+ '1.1.9'
54
+ ]
55
+ end
56
+ it 'returns the maximum tagged version with the same major and minor numbers' do
57
+ expect(MrBump.current_uat).to eq(MrBump::Version.new('1.2.3'))
58
+ end
59
+ end
60
+
61
+ context 'when the next release is a major bump' do
62
+ let(:next_version) { '2.0.0' }
63
+ let(:tag_list) do
64
+ [
65
+ 'safbdhasgbd',
66
+ '',
67
+ 'Not.A Version',
68
+ '1.2.3',
69
+ '1.2.2',
70
+ '1.1.1',
71
+ '1.0.9',
72
+ '2.0.0',
73
+ '2.0.1',
74
+ '2.0.9'
75
+ ]
76
+ end
77
+ it 'returns the maximum tagged version with the same major and minor numbers' do
78
+ expect(MrBump.current_uat).to eq(MrBump::Version.new('2.0.9'))
79
+ end
80
+ end
81
+ end
82
+
83
+ describe '#current_master' do
84
+ before(:each) do
85
+ allow(MrBump).to receive(:all_tags).and_return(tag_list)
86
+ allow(MrBump).to receive(:current_uat_major).and_return(MrBump::Version.new(next_version))
87
+ end
88
+
89
+ context 'when the next release is a minor bump' do
90
+ let(:next_version) { '1.2.0' }
91
+ let(:tag_list) do
92
+ [
93
+ 'safbdhasgbd',
94
+ '',
95
+ 'Not.A Version',
96
+ '1.2.3',
97
+ '1.2.2',
98
+ '1.1.1',
99
+ '1.1.9'
100
+ ]
101
+ end
102
+ it 'returns the maximum tagged version below the UAT version' do
103
+ expect(MrBump.current_master).to eq(MrBump::Version.new('1.1.9'))
104
+ end
105
+ end
106
+
107
+ context 'when the next release is a major bump' do
108
+ let(:next_version) { '2.0.0' }
109
+ let(:tag_list) do
110
+ [
111
+ 'safbdhasgbd',
112
+ '',
113
+ 'Not.A Version',
114
+ '1.2.3',
115
+ '1.2.2',
116
+ '1.1.1',
117
+ '1.0.9',
118
+ '2.0.0',
119
+ '2.0.1',
120
+ '2.0.9'
121
+ ]
122
+ end
123
+ it 'returns the maximum tagged version below the UAT version' do
124
+ expect(MrBump.current_master).to eq(MrBump::Version.new('1.2.3'))
125
+ end
126
+ end
127
+ end
128
+
129
+ describe '#latest_release_from_list' do
130
+ before(:each) { allow(MrBump).to receive(:config_file).and_return(config) }
131
+ let(:result) { MrBump.latest_release_from_list(branch_list) }
132
+ let(:config) do
133
+ {
134
+ 'release_prefix' => "release#{separator}",
135
+ 'release_suffix' => suffix
136
+ }
137
+ end
138
+ let(:suffix) { '' }
139
+ let(:separator) { '/' }
140
+
141
+ context 'With many release branches and using slash separator' do
142
+ let(:branch_list) do
143
+ [
144
+ 'origin/release/10.16.0',
145
+ 'origin/release/10.15.9',
146
+ 'origin/release/10.1.0',
147
+ 'origin/release/10.15.0',
148
+ 'origin/rse/10.16.0',
149
+ 'origin/master',
150
+ ''
151
+ ]
152
+ end
153
+
154
+ it 'extracts the highest version' do
155
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
156
+ end
157
+ end
158
+
159
+ context 'With a single release branch and using slash separator' do
160
+ let(:branch_list) do
161
+ [
162
+ 'origin/release/10.16.9',
163
+ 'origin/rse/1.2.0',
164
+ 'origin/master',
165
+ ''
166
+ ]
167
+ end
168
+
169
+ it 'extracts the version' do
170
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
171
+ end
172
+ end
173
+
174
+ context 'With many release branches and minor versions and using slash separator' do
175
+ let(:branch_list) do
176
+ [
177
+ 'origin/release/10.16.0',
178
+ 'origin/release/10.15.9',
179
+ 'origin/release/10.1.0',
180
+ 'origin/release/10.15.0',
181
+ 'origin/release/10.16.9',
182
+ 'origin/rse/10.16.0',
183
+ 'origin/master',
184
+ ''
185
+ ]
186
+ end
187
+
188
+ it 'extracts the highest version with patch version set to 0' do
189
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
190
+ end
191
+ end
192
+
193
+ context 'With a single release branch with a patch number and using slash separator' do
194
+ let(:branch_list) do
195
+ [
196
+ 'origin/release/10.16.9',
197
+ 'origin/rse/1.2.0',
198
+ 'origin/master',
199
+ ''
200
+ ]
201
+ end
202
+
203
+ it 'extracts the version with patch version set to 0' do
204
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
205
+ end
206
+ end
207
+
208
+ context 'With no release branches' do
209
+ let(:branch_list) do
210
+ [
211
+ ]
212
+ end
213
+
214
+ it 'returns 0.0.0 as the version' do
215
+ expect(result).to eq(MrBump::Version.new('0.0.0'))
216
+ end
217
+ end
218
+
219
+ context 'With many release branches and changing the default prefix' do
220
+ let(:branch_list) do
221
+ [
222
+ 'origin/release?10.16.0',
223
+ 'origin/release/10.17.0',
224
+ 'origin/release?10.15.9',
225
+ 'origin/release/10.1.0',
226
+ 'origin/release/10.15.0',
227
+ 'origin/rse/10.16.0',
228
+ 'origin/master',
229
+ ''
230
+ ]
231
+ end
232
+ let(:separator) { '?' }
233
+
234
+ it 'extracts the correct highest version, igoring branches with incorrect prefix' do
235
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
236
+ end
237
+ end
238
+
239
+ context 'With many release branches and changing the default suffix' do
240
+ let(:branch_list) do
241
+ [
242
+ 'origin/release/10.16.0.',
243
+ 'origin/release/10.17.0.',
244
+ 'origin/release/10.15.9.',
245
+ 'origin/release/10.1.0.',
246
+ 'origin/release/10.15.0',
247
+ 'origin/release/10.18.0',
248
+ 'origin/rse/10.16.0',
249
+ 'origin/master',
250
+ ''
251
+ ]
252
+ end
253
+ let(:suffix) { '.' }
254
+
255
+ it 'extracts the correct highest version, igoring branches with incorrect suffix' do
256
+ expect(result).to eq(MrBump::Version.new('10.17.0'))
257
+ end
258
+ end
259
+
260
+ context 'With many release branches and changing the default prefix' do
261
+ let(:branch_list) do
262
+ [
263
+ 'origin/release?10.16.0?',
264
+ 'origin/release/10.17.0?',
265
+ 'origin/release?10.15.9?',
266
+ 'origin/release/10.1.0?',
267
+ 'origin/release/10.15.0?',
268
+ 'origin/release/11.1.0',
269
+ 'origin/release/11.15.0',
270
+ 'origin/release?12.1.0',
271
+ 'origin/release?12.15.0',
272
+ 'origin/rse/10.16.0?',
273
+ 'origin/master',
274
+ ''
275
+ ]
276
+ end
277
+ let(:separator) { '?' }
278
+ let(:suffix) { '?' }
279
+
280
+ it 'extracts the correct highest version, igoring branches with incorrect prefix or suffix' do
281
+ expect(result).to eq(MrBump::Version.new('10.16.0'))
282
+ end
283
+ end
284
+ end
285
+
286
+ describe '#on_master_branch?' do
287
+ before(:each) { allow(MrBump).to receive(:current_branch).and_return(current_branch) }
288
+
289
+ context 'when on a branch called master' do
290
+ let(:current_branch) { 'master' }
291
+
292
+ it 'returns true' do
293
+ expect(MrBump.on_master_branch?).to eq(true)
294
+ end
295
+ end
296
+
297
+ context 'when on a branch called master$' do
298
+ let(:current_branch) { 'master$' }
299
+
300
+ it 'returns false' do
301
+ expect(MrBump.on_master_branch?).to eq(false)
302
+ end
303
+ end
304
+
305
+ context 'when on a branch called ^master' do
306
+ let(:current_branch) { '^master' }
307
+
308
+ it 'returns false' do
309
+ expect(MrBump.on_master_branch?).to eq(false)
310
+ end
311
+ end
312
+
313
+ context 'when on a branch called release' do
314
+ let(:current_branch) { 'release' }
315
+
316
+ it 'returns false' do
317
+ expect(MrBump.on_master_branch?).to eq(false)
318
+ end
319
+ end
320
+
321
+ context 'when on a branch called develop' do
322
+ let(:current_branch) { 'develop' }
323
+
324
+ it 'returns false' do
325
+ expect(MrBump.on_master_branch?).to eq(false)
326
+ end
327
+ end
328
+ end
329
+
330
+ describe '#on_develop_branch?' do
331
+ before(:each) { allow(MrBump).to receive(:current_branch).and_return(current_branch) }
332
+
333
+ context 'when on a branch called develop' do
334
+ let(:current_branch) { 'develop' }
335
+
336
+ it 'returns true' do
337
+ expect(MrBump.on_develop_branch?).to eq(true)
338
+ end
339
+ end
340
+
341
+ context 'when on a branch called develop$' do
342
+ let(:current_branch) { 'develop$' }
343
+
344
+ it 'returns false' do
345
+ expect(MrBump.on_develop_branch?).to eq(false)
346
+ end
347
+ end
348
+
349
+ context 'when on a branch called ^develop' do
350
+ let(:current_branch) { '^develop' }
351
+
352
+ it 'returns false' do
353
+ expect(MrBump.on_develop_branch?).to eq(false)
354
+ end
355
+ end
356
+
357
+ context 'when on a branch called release' do
358
+ let(:current_branch) { 'release' }
359
+
360
+ it 'returns false' do
361
+ expect(MrBump.on_develop_branch?).to eq(false)
362
+ end
363
+ end
364
+
365
+ context 'when on a branch called master' do
366
+ let(:current_branch) { 'master' }
367
+
368
+ it 'returns false' do
369
+ expect(MrBump.on_develop_branch?).to eq(false)
370
+ end
371
+ end
372
+ end
373
+
374
+ describe '#on_release_branch?' do
375
+ before(:each) { allow(MrBump).to receive(:current_branch).and_return(current_branch) }
376
+ before(:each) { allow(MrBump).to receive(:config_file).and_return(config) }
377
+
378
+ context 'with default config' do
379
+ let(:config) do
380
+ {
381
+ 'release_prefix' => 'release/',
382
+ 'release_suffix' => ''
383
+ }
384
+ end
385
+ context 'when on a branch called master' do
386
+ let(:current_branch) { 'master' }
387
+
388
+ it 'returns false' do
389
+ expect(MrBump.on_release_branch?).to eq(false)
390
+ end
391
+ end
392
+
393
+ context 'when on a branch called release/' do
394
+ let(:current_branch) { 'release/' }
395
+
396
+ it 'returns false' do
397
+ expect(MrBump.on_release_branch?).to eq(false)
398
+ end
399
+ end
400
+
401
+ context 'when on a branch called release/0.0.0' do
402
+ let(:current_branch) { 'release/0.0.0' }
403
+
404
+ it 'returns true' do
405
+ expect(MrBump.on_release_branch?).to eq(true)
406
+ end
407
+ end
408
+
409
+ context 'when on a branch called release/0.0' do
410
+ let(:current_branch) { 'release/0.0' }
411
+
412
+ it 'returns true' do
413
+ expect(MrBump.on_release_branch?).to eq(true)
414
+ end
415
+ end
416
+
417
+ context 'when on a branch called develop' do
418
+ let(:current_branch) { 'develop' }
419
+
420
+ it 'returns false' do
421
+ expect(MrBump.on_master_branch?).to eq(false)
422
+ end
423
+ end
424
+ end
425
+
426
+ context 'with altered config' do
427
+ let(:config) do
428
+ {
429
+ 'release_prefix' => '?v',
430
+ 'release_suffix' => '+'
431
+ }
432
+ end
433
+
434
+ context 'branch with correct prefix and suffix' do
435
+ let(:current_branch) { '?v0.0.0+' }
436
+
437
+ it 'returns true' do
438
+ expect(MrBump.on_release_branch?).to eq(true)
439
+ end
440
+ end
441
+
442
+ context 'branch with correct prefix and suffix and missing patch version' do
443
+ let(:current_branch) { '?v0.0+' }
444
+
445
+ it 'returns true' do
446
+ expect(MrBump.on_release_branch?).to eq(true)
447
+ end
448
+ end
449
+
450
+ context 'on a branch which is valid with default config' do
451
+ let(:current_branch) { 'release/0.0.0' }
452
+
453
+ it 'returns false' do
454
+ expect(MrBump.on_release_branch?).to eq(false)
455
+ end
456
+ end
457
+ end
458
+ end
459
+
460
+ describe '#uat_branch?' do
461
+ before(:each) do
462
+ allow(MrBump).to receive(:current_uat_major).and_return(MrBump::Version.new('0.0.0'))
463
+ end
464
+ before(:each) { allow(MrBump).to receive(:config_file).and_return(config) }
465
+
466
+ context 'with default config' do
467
+ let(:config) do
468
+ {
469
+ 'release_prefix' => 'release/',
470
+ 'release_suffix' => ''
471
+ }
472
+ end
473
+
474
+ it 'correctly constucts uat branch name' do
475
+ expect(MrBump.uat_branch).to eq('release/0.0.0')
476
+ end
477
+ end
478
+
479
+ context 'with altered config' do
480
+ let(:config) do
481
+ {
482
+ 'release_prefix' => '?v',
483
+ 'release_suffix' => '+'
484
+ }
485
+ end
486
+
487
+ it 'correctly constucts uat branch name' do
488
+ expect(MrBump.uat_branch).to eq('?v0.0.0+')
489
+ end
490
+ end
491
+ end
492
+
493
+ describe '#change_log_items_for_range' do
494
+ let(:log) do
495
+ [
496
+ 'Merge pull request #4 from mr_bump/hotfix/DEV-1261',
497
+ 'Comment',
498
+ 'Merge pull request #1376 from mr_bump/release/10.19.0',
499
+ 'Comment',
500
+ 'Over several',
501
+ 'Lines',
502
+ 'Merge pull request #1365 from mr_bump/revert_contact_fixes',
503
+ 'Merge pull request #1365 from mr_bump/develop',
504
+ 'Merge pull request #233 from mr_bump/bugfix/master',
505
+ 'asdasd',
506
+ 'Merge pull request #1336 from mr_bump/MDV-1261',
507
+ 'wqefqfqefqwefqef'
508
+ ]
509
+ end
510
+ before(:each) { allow(MrBump).to receive(:merge_logs).and_return(log) }
511
+
512
+ context 'when given output from git log' do
513
+ let(:changes) { MrBump.change_log_items_for_range('', '') }
514
+
515
+ it 'converts raw git log ouput to changlog objects' do
516
+ expect(changes).to all(be_a(MrBump::Change))
517
+ end
518
+
519
+ it 'filters out release and master branch merges' do
520
+ expect(changes.map(&:branch_name)).to eq(['DEV-1261', 'revert_contact_fixes', 'MDV-1261'])
521
+ end
522
+ end
523
+ end
524
+
525
+ <<<<<<< HEAD
526
+ describe '#file_prepend' do
527
+ it 'prepends to files' do
528
+ file = 'filename.md'
529
+ before = 'String before'
530
+ prepend_str = 'Sting to prepend. '
531
+ after = prepend_str + before
532
+
533
+ read_buffer = StringIO.new before
534
+ write_buffer = StringIO.new
535
+
536
+ allow(File).to receive(:open).with(file, 'r').and_yield(read_buffer)
537
+ allow(File).to receive(:open).with(file, 'w').and_yield(write_buffer)
538
+
539
+ MrBump.file_prepend(file, prepend_str)
540
+ expect(write_buffer.string).to eq(after)
541
+ =======
542
+ describe '#last_release' do
543
+ before do
544
+ allow(MrBump).to receive(:current_uat).and_return(MrBump::Version.new('0.1.3'))
545
+ allow(MrBump).to receive(:current_uat_major).and_return(MrBump::Version.new('0.1.0'))
546
+ allow(MrBump).to receive(:current_master).and_return(MrBump::Version.new('0.0.1'))
547
+ end
548
+
549
+ context 'when on master branch' do
550
+ before do
551
+ allow(MrBump).to receive(:on_master_branch?).and_return(true)
552
+ allow(MrBump).to receive(:on_release_branch?).and_return(false)
553
+ allow(MrBump).to receive(:on_develop_branch?).and_return(false)
554
+ end
555
+
556
+ it 'returns the master version' do
557
+ expect(MrBump.last_release).to eq(MrBump::Version.new('0.0.1'))
558
+ end
559
+ end
560
+ context 'when on release branch' do
561
+ before do
562
+ allow(MrBump).to receive(:on_master_branch?).and_return(false)
563
+ allow(MrBump).to receive(:on_release_branch?).and_return(true)
564
+ allow(MrBump).to receive(:on_develop_branch?).and_return(false)
565
+ end
566
+
567
+ it 'returns the release version' do
568
+ expect(MrBump.last_release).to eq(MrBump::Version.new('0.1.3'))
569
+ end
570
+ end
571
+ context 'when on develop branch' do
572
+ before do
573
+ allow(MrBump).to receive(:on_master_branch?).and_return(false)
574
+ allow(MrBump).to receive(:on_release_branch?).and_return(false)
575
+ allow(MrBump).to receive(:on_develop_branch?).and_return(true)
576
+ end
577
+
578
+ it 'returns the last release version' do
579
+ expect(MrBump.last_release).to eq(MrBump::Version.new('0.1.0'))
580
+ end
581
+ end
582
+ end
583
+
584
+ describe '#next_release' do
585
+ before do
586
+ allow(MrBump).to receive(:current_uat).and_return(MrBump::Version.new('0.1.3'))
587
+ allow(MrBump).to receive(:current_uat_major).and_return(MrBump::Version.new('0.1.0'))
588
+ allow(MrBump).to receive(:current_master).and_return(MrBump::Version.new('0.0.1'))
589
+ end
590
+
591
+ context 'when on master branch' do
592
+ before do
593
+ allow(MrBump).to receive(:on_master_branch?).and_return(true)
594
+ allow(MrBump).to receive(:on_release_branch?).and_return(false)
595
+ allow(MrBump).to receive(:on_develop_branch?).and_return(false)
596
+ end
597
+
598
+ it 'returns the master version + a patch' do
599
+ expect(MrBump.next_release).to eq(MrBump::Version.new('0.0.2'))
600
+ end
601
+ end
602
+ context 'when on release branch' do
603
+ before do
604
+ allow(MrBump).to receive(:on_master_branch?).and_return(false)
605
+ allow(MrBump).to receive(:on_release_branch?).and_return(true)
606
+ allow(MrBump).to receive(:on_develop_branch?).and_return(false)
607
+ end
608
+
609
+ it 'returns the release version' do
610
+ expect(MrBump.next_release).to eq(MrBump::Version.new('0.1.4'))
611
+ end
612
+ end
613
+ context 'when on develop branch' do
614
+ before do
615
+ allow(MrBump).to receive(:on_master_branch?).and_return(false)
616
+ allow(MrBump).to receive(:on_release_branch?).and_return(false)
617
+ allow(MrBump).to receive(:on_develop_branch?).and_return(true)
618
+ end
619
+
620
+ it 'returns the release version plus a minor' do
621
+ expect(MrBump.next_release).to eq(MrBump::Version.new('0.2.0'))
622
+ end
623
+ >>>>>>> Allow mr_bump to cut new releases
624
+ end
625
+ end
626
+ end
data/spec/spec_helper.rb CHANGED
@@ -8,10 +8,11 @@ Bundler.setup
8
8
  require 'simplecov'
9
9
  require 'coveralls'
10
10
 
11
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
11
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new [
12
12
  SimpleCov::Formatter::HTMLFormatter,
13
13
  Coveralls::SimpleCov::Formatter
14
14
  ]
15
+
15
16
  SimpleCov.start do
16
17
  add_filter 'spec'
17
18
  track_files '**/*.rb'