rake-funnel 0.22.1 → 0.22.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rake/funnel/extensions/shell.rb +4 -4
- data/lib/rake/funnel/integration/progress_report.rb +2 -1
- data/lib/rake/funnel/integration/sync_output.rb +1 -1
- data/lib/rake/funnel/integration/teamcity/nunit_plugin.rb +3 -3
- data/lib/rake/funnel/integration/teamcity/service_messages.rb +1 -1
- data/lib/rake/funnel/support/assembly_version/from_version_files.rb +1 -1
- data/lib/rake/funnel/support/assembly_version_writer.rb +1 -1
- data/lib/rake/funnel/support/environments/loader.rb +3 -4
- data/lib/rake/funnel/support/msbuild/build_tool.rb +2 -2
- data/lib/rake/funnel/support/msdeploy/registry_patch.rb +1 -1
- data/lib/rake/funnel/support/timing/report.rb +11 -11
- data/lib/rake/funnel/support/trace.rb +1 -1
- data/lib/rake/funnel/tasks/bin_path.rb +2 -2
- data/lib/rake/funnel/tasks/quick_template.rb +1 -1
- data/lib/rake/funnel/tasks/timing.rb +6 -6
- data/lib/rake/funnel/tasks/zip.rb +2 -2
- data/lib/rake/funnel/version.rb +1 -1
- data/spec/rake/funnel/extensions/shell_spec.rb +13 -14
- data/spec/rake/funnel/integration/progress_report_spec.rb +5 -4
- data/spec/rake/funnel/integration/sync_output_spec.rb +3 -3
- data/spec/rake/funnel/integration/teamcity/nunit_plugin_spec.rb +9 -9
- data/spec/rake/funnel/integration/teamcity/service_messages_spec.rb +53 -53
- data/spec/rake/funnel/support/assembly_version/from_version_files_spec.rb +1 -1
- data/spec/rake/funnel/support/assembly_version_writer_spec.rb +1 -1
- data/spec/rake/funnel/support/environments/loader_spec.rb +1 -1
- data/spec/rake/funnel/support/msbuild/build_tool_spec.rb +4 -4
- data/spec/rake/funnel/support/msdeploy/registry_patch_spec.rb +2 -4
- data/spec/rake/funnel/support/patch_spec.rb +9 -9
- data/spec/rake/funnel/support/specs_remover_spec.rb +1 -1
- data/spec/rake/funnel/support/timing/report_spec.rb +14 -14
- data/spec/rake/funnel/support/trace_spec.rb +3 -3
- data/spec/rake/funnel/tasks/bin_path_spec.rb +4 -4
- data/spec/rake/funnel/tasks/quick_template_spec.rb +2 -2
- data/spec/rake/funnel/tasks/timing_spec.rb +7 -9
- data/spec/rake/funnel/tasks/zip_spec.rb +3 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2cd9f0cb254e3b71224760bb6773e6b343ffcabad48946d8fb9e0c0aef8d93f2
|
4
|
+
data.tar.gz: 4d10525a22662f1f82deb0404b9bfb3408964c72e1da9b5a1bee8d757d430b5a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57d0f5a12dd303151590e5f5d73d52e954044f3d592b35394ff07b72c0143a3f01728f4171a283779d3af6ae7dad93b94623e9fbe80bad2cef669823c5a5cfd7
|
7
|
+
data.tar.gz: eda37cf74ae2992b12035cfcd7f27bcb62d4c7b031bdf5d80040096048fc880ba8ae7673cf77419fa58dc4ec4b5a2f63dece409bdf299d4b7e692bac77ee3211
|
@@ -20,10 +20,10 @@ module Rake
|
|
20
20
|
|
21
21
|
private
|
22
22
|
|
23
|
-
def run(cmd, log_file, error_lines)
|
23
|
+
def run(cmd, log_file, error_lines) # rubocop:disable Metrics/AbcSize
|
24
24
|
cmd, readable_cmd = normalize(cmd)
|
25
25
|
|
26
|
-
|
26
|
+
$stderr.print(readable_cmd + "\n")
|
27
27
|
|
28
28
|
Open3.popen2e(*cmd) do |_, stdout_and_stderr, wait_thread|
|
29
29
|
log, error_logged = log_output(stdout_and_stderr, log_file, error_lines)
|
@@ -70,14 +70,14 @@ module Rake
|
|
70
70
|
end
|
71
71
|
|
72
72
|
def to_stdout(line)
|
73
|
-
$stdout.
|
73
|
+
$stdout.print(line.rstrip.green + "\n")
|
74
74
|
:success
|
75
75
|
end
|
76
76
|
|
77
77
|
def to_stderr(line, error_lines)
|
78
78
|
return unless error_lines && line =~ error_lines
|
79
79
|
|
80
|
-
|
80
|
+
$stderr.print(line.rstrip.bold.red + "\n")
|
81
81
|
:error
|
82
82
|
end
|
83
83
|
end
|
@@ -8,7 +8,8 @@ module Rake
|
|
8
8
|
|
9
9
|
def initialize
|
10
10
|
task_starting do |task, _args|
|
11
|
-
|
11
|
+
name = "[#{task.name}]".bold.cyan
|
12
|
+
print "\n#{name}\n" unless Rake::Funnel::Integration::TeamCity.running?
|
12
13
|
end
|
13
14
|
|
14
15
|
yield self if block_given?
|
@@ -28,7 +28,7 @@ module Rake
|
|
28
28
|
version = Rake::Funnel::Support::BinaryVersionReader.read_from(nunit)
|
29
29
|
|
30
30
|
unless version.file_version
|
31
|
-
|
31
|
+
$stderr.print("Could read version from NUnit executable in #{nunit}\n")
|
32
32
|
return
|
33
33
|
end
|
34
34
|
|
@@ -39,7 +39,7 @@ module Rake
|
|
39
39
|
addin_files = Dir.glob("#{addins}-#{version}.*")
|
40
40
|
|
41
41
|
if addin_files.none?
|
42
|
-
|
42
|
+
$stderr.print("Could not find TeamCity NUnit addin for version #{version} in #{addins}\n")
|
43
43
|
return
|
44
44
|
end
|
45
45
|
|
@@ -47,7 +47,7 @@ module Rake
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def copy_addin_files(nunit, addin_files, version)
|
50
|
-
|
50
|
+
$stderr.print("Installing TeamCity NUnit addin for version #{version} in #{nunit}\n")
|
51
51
|
|
52
52
|
destination = File.join(File.dirname(nunit), 'addins')
|
53
53
|
|
@@ -17,7 +17,7 @@ module Rake
|
|
17
17
|
block_given? || (return enum_for(__method__))
|
18
18
|
|
19
19
|
files.each do |file|
|
20
|
-
|
20
|
+
$stderr.print("Reading #{file}\n")
|
21
21
|
|
22
22
|
version_info = VersionInfo.parse(
|
23
23
|
version: VersionInfo.read_version_from(file),
|
@@ -8,7 +8,7 @@ module Rake
|
|
8
8
|
class Loader
|
9
9
|
class << self
|
10
10
|
def load_configuration(config, store = configatron, customizer = nil)
|
11
|
-
|
11
|
+
$stderr.print("Configuring for #{config[:name]}\n")
|
12
12
|
store.unlock!
|
13
13
|
store.reset!
|
14
14
|
|
@@ -19,8 +19,7 @@ module Rake
|
|
19
19
|
|
20
20
|
store.lock!
|
21
21
|
|
22
|
-
|
23
|
-
Rake.rake_output_message(store.inspect)
|
22
|
+
$stderr.print("\n" + store.inspect + "\n")
|
24
23
|
end
|
25
24
|
|
26
25
|
private
|
@@ -28,7 +27,7 @@ module Rake
|
|
28
27
|
def load(config, store)
|
29
28
|
operation = 'Loading'
|
30
29
|
config.fetch(:config_files, []).each do |file|
|
31
|
-
|
30
|
+
$stderr.print("#{operation} #{file}\n")
|
32
31
|
operation = 'Merging'
|
33
32
|
|
34
33
|
yaml = File.read(file)
|
@@ -18,7 +18,7 @@ module Rake
|
|
18
18
|
def mono
|
19
19
|
out, status = Open3.capture2('mono', '--version')
|
20
20
|
unless status.success?
|
21
|
-
|
21
|
+
$stderr.print "Could not determine mono version: #{status}\n"
|
22
22
|
return nil
|
23
23
|
end
|
24
24
|
|
@@ -40,7 +40,7 @@ module Rake
|
|
40
40
|
|
41
41
|
path, status = Open3.capture2(*args)
|
42
42
|
unless status.success?
|
43
|
-
|
43
|
+
$stderr.print "vswhere failed: #{status}\n"
|
44
44
|
return nil
|
45
45
|
end
|
46
46
|
|
@@ -54,25 +54,25 @@ module Rake
|
|
54
54
|
private
|
55
55
|
|
56
56
|
def header # rubocop:disable Metrics/AbcSize
|
57
|
-
|
58
|
-
|
59
|
-
|
57
|
+
$stdout.print '-' * HEADER_WIDTH + "\n"
|
58
|
+
$stdout.print "Build time report\n"
|
59
|
+
$stdout.print '-' * HEADER_WIDTH + "\n"
|
60
60
|
|
61
|
-
|
62
|
-
|
61
|
+
$stdout.print columns.map(&:format_header).join(' ' * SPACE) + "\n"
|
62
|
+
$stdout.print columns.map { |c| c.format_header.gsub(/./, '-') }.join(' ' * SPACE) + "\n"
|
63
63
|
end
|
64
64
|
|
65
65
|
def rows
|
66
66
|
@stats.each do |timing|
|
67
|
-
|
67
|
+
$stdout.print columns.map { |c| c.format_value(timing) }.join(' ' * SPACE) + "\n"
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
71
|
def footer # rubocop:disable Metrics/AbcSize
|
72
|
-
|
73
|
-
|
72
|
+
$stdout.print '-' * HEADER_WIDTH + "\n"
|
73
|
+
$stdout.print 'Total'.ljust(columns[0].width) + ' ' * SPACE + format(Time.now - @stats.started_at) + "\n"
|
74
74
|
status_message
|
75
|
-
|
75
|
+
$stdout.print '-' * HEADER_WIDTH + "\n"
|
76
76
|
end
|
77
77
|
|
78
78
|
def format(seconds)
|
@@ -84,9 +84,9 @@ module Rake
|
|
84
84
|
status = 'Status'.ljust(columns[0].width) + ' ' * SPACE + status
|
85
85
|
|
86
86
|
if @opts[:failed]
|
87
|
-
|
87
|
+
$stderr.print(status.bold.red + "\n")
|
88
88
|
else
|
89
|
-
$stdout.
|
89
|
+
$stdout.print(status.bold.green + "\n")
|
90
90
|
end
|
91
91
|
end
|
92
92
|
end
|
@@ -29,9 +29,9 @@ module Rake
|
|
29
29
|
next unless paths.any?
|
30
30
|
|
31
31
|
prepend_pattern_to_path_environment(paths)
|
32
|
-
|
32
|
+
$stderr.print "Added the following paths to the PATH environment variable:\n"
|
33
33
|
paths.each do |p|
|
34
|
-
|
34
|
+
$stderr.print " - #{p}\n"
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
@@ -30,7 +30,7 @@ module Rake
|
|
30
30
|
|
31
31
|
templates.all_or_default.each do |template|
|
32
32
|
target = result_filename(template)
|
33
|
-
|
33
|
+
$stderr.print "Creating file #{target}\n"
|
34
34
|
|
35
35
|
content = TemplateEngine.render(File.read(template), template, context)
|
36
36
|
File.write(target, content)
|
@@ -54,8 +54,8 @@ module Rake
|
|
54
54
|
Rake::Application.class_eval do
|
55
55
|
orig_display_error_message = instance_method(:display_error_message)
|
56
56
|
|
57
|
-
define_method(:display_error_message) do |*
|
58
|
-
orig_display_error_message.bind(self).call(*
|
57
|
+
define_method(:display_error_message) do |*args|
|
58
|
+
orig_display_error_message.bind(self).call(*args)
|
59
59
|
|
60
60
|
report_invoker.call(failed: true)
|
61
61
|
end
|
@@ -66,8 +66,8 @@ module Rake
|
|
66
66
|
|
67
67
|
p.reset do |memo|
|
68
68
|
Rake::Application.class_eval do
|
69
|
-
define_method(:display_error_message) do |*
|
70
|
-
memo.bind(self).call(*
|
69
|
+
define_method(:display_error_message) do |*args|
|
70
|
+
memo.bind(self).call(*args)
|
71
71
|
end
|
72
72
|
end
|
73
73
|
end
|
@@ -94,8 +94,8 @@ module Rake
|
|
94
94
|
|
95
95
|
p.reset do |memo|
|
96
96
|
Rake::Task.class_eval do
|
97
|
-
define_method(:execute) do |*
|
98
|
-
memo.bind(self).call(*
|
97
|
+
define_method(:execute) do |*args|
|
98
|
+
memo.bind(self).call(*args)
|
99
99
|
end
|
100
100
|
end
|
101
101
|
end
|
@@ -32,13 +32,13 @@ module Rake
|
|
32
32
|
yield(*[self, task_args].slice(0, task_block.arity)) if task_block
|
33
33
|
|
34
34
|
if files.empty? && !allow_empty
|
35
|
-
|
35
|
+
$stderr.print("No files to zip\n")
|
36
36
|
next
|
37
37
|
end
|
38
38
|
|
39
39
|
Zipper.zip(files, target, zip_root)
|
40
40
|
|
41
|
-
|
41
|
+
$stderr.print("Created #{target}\n")
|
42
42
|
end
|
43
43
|
|
44
44
|
self
|
data/lib/rake/funnel/version.rb
CHANGED
@@ -4,9 +4,8 @@ describe Rake::Funnel::Extensions::Shell do
|
|
4
4
|
before do
|
5
5
|
allow(Open3).to receive(:popen2e).and_yield(nil, stdout_and_stderr, exit)
|
6
6
|
|
7
|
-
allow($stdout).to receive(:
|
8
|
-
allow(
|
9
|
-
allow(Rake).to receive(:rake_output_message)
|
7
|
+
allow($stdout).to receive(:print)
|
8
|
+
allow($stderr).to receive(:print)
|
10
9
|
end
|
11
10
|
|
12
11
|
let(:exit) { OpenStruct.new(value: OpenStruct.new(success?: true, exitstatus: 0)) }
|
@@ -63,7 +62,7 @@ describe Rake::Funnel::Extensions::Shell do
|
|
63
62
|
|
64
63
|
subject.shell(arg)
|
65
64
|
|
66
|
-
expect(
|
65
|
+
expect($stderr).to have_received(:print).with("1 2\n")
|
67
66
|
end
|
68
67
|
end
|
69
68
|
|
@@ -75,12 +74,12 @@ describe Rake::Funnel::Extensions::Shell do
|
|
75
74
|
before { subject.shell('foo') }
|
76
75
|
|
77
76
|
it 'should redirect command output to stdout' do
|
78
|
-
expect($stdout).to have_received(:
|
79
|
-
expect($stdout).to have_received(:
|
77
|
+
expect($stdout).to have_received(:print).with(/output 1/)
|
78
|
+
expect($stdout).to have_received(:print).with(/output 2/)
|
80
79
|
end
|
81
80
|
|
82
81
|
it 'should colorize lines' do
|
83
|
-
expect($stdout).to have_received(:
|
82
|
+
expect($stdout).to have_received(:print).with('output 1'.green + "\n")
|
84
83
|
end
|
85
84
|
end
|
86
85
|
|
@@ -130,7 +129,7 @@ describe Rake::Funnel::Extensions::Shell do
|
|
130
129
|
|
131
130
|
context 'no lines indicating errors' do
|
132
131
|
it 'should not log to stderr' do
|
133
|
-
expect(
|
132
|
+
expect($stdout).not_to have_received(:print).with(/error/)
|
134
133
|
end
|
135
134
|
end
|
136
135
|
|
@@ -138,23 +137,23 @@ describe Rake::Funnel::Extensions::Shell do
|
|
138
137
|
let(:stdout_and_stderr) { StringIO.new("output 1\nerror\noutput 2\n") }
|
139
138
|
|
140
139
|
it 'should log to stdout before error' do
|
141
|
-
expect($stdout).to have_received(:
|
140
|
+
expect($stdout).to have_received(:print).with(/output 1/)
|
142
141
|
end
|
143
142
|
|
144
143
|
it 'should log to stderr on error' do
|
145
|
-
expect(
|
144
|
+
expect($stderr).to have_received(:print).with(/error/)
|
146
145
|
end
|
147
146
|
|
148
147
|
it 'should not log to stdout on error' do
|
149
|
-
expect($stdout).not_to have_received(:
|
148
|
+
expect($stdout).not_to have_received(:print).with(/error/)
|
150
149
|
end
|
151
150
|
|
152
151
|
it 'should colorize error lines' do
|
153
|
-
expect(
|
152
|
+
expect($stderr).to have_received(:print).with('error'.bold.red + "\n")
|
154
153
|
end
|
155
154
|
|
156
155
|
it 'should log to stdout after error' do
|
157
|
-
expect($stdout).to have_received(:
|
156
|
+
expect($stdout).to have_received(:print).with(/output 2/)
|
158
157
|
end
|
159
158
|
end
|
160
159
|
|
@@ -162,7 +161,7 @@ describe Rake::Funnel::Extensions::Shell do
|
|
162
161
|
let(:stdout_and_stderr) { StringIO.new('error äöüß'.encode('CP850')) }
|
163
162
|
|
164
163
|
it 'should log to stdout before error' do
|
165
|
-
expect(
|
164
|
+
expect($stderr).to have_received(:print).with(/error/)
|
166
165
|
end
|
167
166
|
end
|
168
167
|
end
|
@@ -4,7 +4,7 @@ describe Rake::Funnel::Integration::ProgressReport do
|
|
4
4
|
let(:teamcity_running?) { false }
|
5
5
|
|
6
6
|
before do
|
7
|
-
allow(
|
7
|
+
allow(subject).to receive(:print)
|
8
8
|
allow(Rake::Funnel::Integration::TeamCity).to receive(:running?).and_return(teamcity_running?)
|
9
9
|
|
10
10
|
Rake::Task.clear
|
@@ -27,7 +27,8 @@ describe Rake::Funnel::Integration::ProgressReport do
|
|
27
27
|
|
28
28
|
context 'not on TeamCity' do
|
29
29
|
it 'should write colored task name in square brackets' do
|
30
|
-
|
30
|
+
name = '[task]'.bold.cyan
|
31
|
+
expect(subject).to have_received(:print).with("\n#{name}\n")
|
31
32
|
end
|
32
33
|
end
|
33
34
|
|
@@ -35,7 +36,7 @@ describe Rake::Funnel::Integration::ProgressReport do
|
|
35
36
|
let(:teamcity_running?) { true }
|
36
37
|
|
37
38
|
it 'should not write task name since it would clutter the output' do
|
38
|
-
expect(
|
39
|
+
expect(subject).not_to have_received(:print).with(/task/)
|
39
40
|
end
|
40
41
|
end
|
41
42
|
end
|
@@ -54,7 +55,7 @@ describe Rake::Funnel::Integration::ProgressReport do
|
|
54
55
|
end
|
55
56
|
|
56
57
|
it 'should not write' do
|
57
|
-
expect(
|
58
|
+
expect(subject).not_to have_received(:print).with(/task/)
|
58
59
|
end
|
59
60
|
end
|
60
61
|
|
@@ -21,17 +21,17 @@ describe Rake::Funnel::Integration::SyncOutput do
|
|
21
21
|
allow($stdout).to receive(:sync=).and_raise('$stdout.sync not supported')
|
22
22
|
allow($stderr).to receive(:sync=).and_raise('$stderr.sync not supported')
|
23
23
|
|
24
|
-
allow(
|
24
|
+
allow($stderr).to receive(:print)
|
25
25
|
end
|
26
26
|
|
27
27
|
subject! { described_class.new }
|
28
28
|
|
29
29
|
it 'should log the error for $stdout' do
|
30
|
-
expect(
|
30
|
+
expect($stderr).to have_received(:print).with(/Failed.*\$stdout/)
|
31
31
|
end
|
32
32
|
|
33
33
|
it 'should log the error for $stderr' do
|
34
|
-
expect(
|
34
|
+
expect($stderr).to have_received(:print).with(/Failed.*\$stderr/)
|
35
35
|
end
|
36
36
|
end
|
37
37
|
end
|
@@ -4,7 +4,7 @@ describe Rake::Funnel::Integration::TeamCity::NUnitPlugin do # rubocop:disable R
|
|
4
4
|
allow(Rake::Funnel::Support::Which).to receive(:which).and_return(which)
|
5
5
|
allow(Dir).to receive(:glob).and_return([])
|
6
6
|
allow(RakeFileUtils).to receive(:mkdir_p)
|
7
|
-
allow(
|
7
|
+
allow($stderr).to receive(:print)
|
8
8
|
end
|
9
9
|
|
10
10
|
before do
|
@@ -44,9 +44,9 @@ describe Rake::Funnel::Integration::TeamCity::NUnitPlugin do # rubocop:disable R
|
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'should report that the addin is installed' do
|
47
|
-
expect(
|
48
|
-
have_received(:
|
49
|
-
.with("Installing TeamCity NUnit addin for version #{plugin_version} in #{which}")
|
47
|
+
expect($stderr).to \
|
48
|
+
have_received(:print)
|
49
|
+
.with("Installing TeamCity NUnit addin for version #{plugin_version} in #{which}\n")
|
50
50
|
end
|
51
51
|
|
52
52
|
context 'Windows-style path in environment variable',
|
@@ -90,9 +90,9 @@ describe Rake::Funnel::Integration::TeamCity::NUnitPlugin do # rubocop:disable R
|
|
90
90
|
let(:which) { 'path/to/nunit-console.exe' }
|
91
91
|
|
92
92
|
it 'should report that the version could not be read' do
|
93
|
-
expect(
|
94
|
-
have_received(:
|
95
|
-
.with("Could read version from NUnit executable in #{which}")
|
93
|
+
expect($stderr).to \
|
94
|
+
have_received(:print)
|
95
|
+
.with("Could read version from NUnit executable in #{which}\n")
|
96
96
|
end
|
97
97
|
|
98
98
|
it 'should skip' do
|
@@ -106,8 +106,8 @@ describe Rake::Funnel::Integration::TeamCity::NUnitPlugin do # rubocop:disable R
|
|
106
106
|
let(:nunit_version) { Rake::Funnel::Support::VersionInfo.new(file_version: '1.2.3.4') }
|
107
107
|
|
108
108
|
it 'should report that the addin version is not available' do
|
109
|
-
expect(
|
110
|
-
have_received(:
|
109
|
+
expect($stderr).to \
|
110
|
+
have_received(:print)
|
111
111
|
.with(/Could not find TeamCity NUnit addin for version 1\.2\.3 in .*#{env_var}$/)
|
112
112
|
end
|
113
113
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disable RSpec/FilePath
|
2
2
|
before do
|
3
3
|
allow(Rake::Funnel::Integration::TeamCity).to receive(:running?).and_return(teamcity_running?)
|
4
|
-
allow(
|
4
|
+
allow(described_class).to receive(:print)
|
5
5
|
end
|
6
6
|
|
7
7
|
context 'when running outside TeamCity' do
|
@@ -10,7 +10,7 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
10
10
|
it 'should not publish messages' do
|
11
11
|
described_class.progress_start 'foo'
|
12
12
|
|
13
|
-
expect(
|
13
|
+
expect(described_class).not_to have_received(:print)
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
@@ -22,9 +22,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
22
22
|
it 'should not escape' do
|
23
23
|
described_class.progress_start 'the message'
|
24
24
|
|
25
|
-
expect(
|
26
|
-
have_received(:
|
27
|
-
.with("##teamcity[progressStart 'the message']")
|
25
|
+
expect(described_class).to \
|
26
|
+
have_received(:print)
|
27
|
+
.with("##teamcity[progressStart 'the message']\n")
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
@@ -32,81 +32,81 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
32
32
|
it 'should escape apostrophes' do
|
33
33
|
described_class.progress_start "'"
|
34
34
|
|
35
|
-
expect(
|
36
|
-
have_received(:
|
37
|
-
.with("##teamcity[progressStart '|'']")
|
35
|
+
expect(described_class).to \
|
36
|
+
have_received(:print)
|
37
|
+
.with("##teamcity[progressStart '|'']\n")
|
38
38
|
end
|
39
39
|
|
40
40
|
it 'should escape line feeds' do
|
41
41
|
described_class.progress_start "\n"
|
42
42
|
|
43
|
-
expect(
|
44
|
-
have_received(:
|
45
|
-
.with("##teamcity[progressStart '|n']")
|
43
|
+
expect(described_class).to \
|
44
|
+
have_received(:print)
|
45
|
+
.with("##teamcity[progressStart '|n']\n")
|
46
46
|
end
|
47
47
|
|
48
48
|
it 'should escape carriage returns' do
|
49
49
|
described_class.progress_start "\r"
|
50
50
|
|
51
|
-
expect(
|
52
|
-
have_received(:
|
53
|
-
.with("##teamcity[progressStart '|r']")
|
51
|
+
expect(described_class).to \
|
52
|
+
have_received(:print)
|
53
|
+
.with("##teamcity[progressStart '|r']\n")
|
54
54
|
end
|
55
55
|
|
56
56
|
it 'should escape next lines' do
|
57
57
|
described_class.progress_start "\u0085"
|
58
58
|
|
59
|
-
expect(
|
60
|
-
have_received(:
|
61
|
-
.with("##teamcity[progressStart '|x']")
|
59
|
+
expect(described_class).to \
|
60
|
+
have_received(:print)
|
61
|
+
.with("##teamcity[progressStart '|x']\n")
|
62
62
|
end
|
63
63
|
|
64
64
|
it 'should escape line separators' do
|
65
65
|
described_class.progress_start "\u2028"
|
66
66
|
|
67
|
-
expect(
|
68
|
-
have_received(:
|
69
|
-
.with("##teamcity[progressStart '|l']")
|
67
|
+
expect(described_class).to \
|
68
|
+
have_received(:print)
|
69
|
+
.with("##teamcity[progressStart '|l']\n")
|
70
70
|
end
|
71
71
|
|
72
72
|
it 'should escape paragraph separators' do
|
73
73
|
described_class.progress_start "\u2029"
|
74
74
|
|
75
|
-
expect(
|
76
|
-
have_received(:
|
77
|
-
.with("##teamcity[progressStart '|p']")
|
75
|
+
expect(described_class).to \
|
76
|
+
have_received(:print)
|
77
|
+
.with("##teamcity[progressStart '|p']\n")
|
78
78
|
end
|
79
79
|
|
80
80
|
it 'should escape vertical bars' do
|
81
81
|
described_class.progress_start '|'
|
82
82
|
|
83
|
-
expect(
|
84
|
-
have_received(:
|
85
|
-
.with("##teamcity[progressStart '||']")
|
83
|
+
expect(described_class).to \
|
84
|
+
have_received(:print)
|
85
|
+
.with("##teamcity[progressStart '||']\n")
|
86
86
|
end
|
87
87
|
|
88
88
|
it 'should escape opening brackets' do
|
89
89
|
described_class.progress_start '['
|
90
90
|
|
91
|
-
expect(
|
92
|
-
have_received(:
|
93
|
-
.with("##teamcity[progressStart '|[']")
|
91
|
+
expect(described_class).to \
|
92
|
+
have_received(:print)
|
93
|
+
.with("##teamcity[progressStart '|[']\n")
|
94
94
|
end
|
95
95
|
|
96
96
|
it 'should escape closing brackets' do
|
97
97
|
described_class.progress_start ']'
|
98
98
|
|
99
|
-
expect(
|
100
|
-
have_received(:
|
101
|
-
.with("##teamcity[progressStart '|]']")
|
99
|
+
expect(described_class).to \
|
100
|
+
have_received(:print)
|
101
|
+
.with("##teamcity[progressStart '|]']\n")
|
102
102
|
end
|
103
103
|
|
104
104
|
it 'should escape all special characters in a string' do
|
105
105
|
described_class.progress_start "[\r|\n]"
|
106
106
|
|
107
|
-
expect(
|
108
|
-
have_received(:
|
109
|
-
.with("##teamcity[progressStart '|[|r|||n|]']")
|
107
|
+
expect(described_class).to \
|
108
|
+
have_received(:print)
|
109
|
+
.with("##teamcity[progressStart '|[|r|||n|]']\n")
|
110
110
|
end
|
111
111
|
end
|
112
112
|
end
|
@@ -116,9 +116,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
116
116
|
it 'should print the service message' do
|
117
117
|
described_class.enable_service_messages
|
118
118
|
|
119
|
-
expect(
|
120
|
-
have_received(:
|
121
|
-
.with(
|
119
|
+
expect(described_class).to \
|
120
|
+
have_received(:print)
|
121
|
+
.with("##teamcity[enableServiceMessages]\n")
|
122
122
|
end
|
123
123
|
end
|
124
124
|
|
@@ -126,9 +126,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
126
126
|
it 'should print the service message' do
|
127
127
|
described_class.progress_message 'the message'
|
128
128
|
|
129
|
-
expect(
|
130
|
-
have_received(:
|
131
|
-
.with("##teamcity[progressMessage 'the message']")
|
129
|
+
expect(described_class).to \
|
130
|
+
have_received(:print)
|
131
|
+
.with("##teamcity[progressMessage 'the message']\n")
|
132
132
|
end
|
133
133
|
end
|
134
134
|
|
@@ -136,9 +136,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
136
136
|
it 'should print the service message' do
|
137
137
|
described_class.progress_message 42
|
138
138
|
|
139
|
-
expect(
|
140
|
-
have_received(:
|
141
|
-
.with("##teamcity[progressMessage '42']")
|
139
|
+
expect(described_class).to \
|
140
|
+
have_received(:print)
|
141
|
+
.with("##teamcity[progressMessage '42']\n")
|
142
142
|
end
|
143
143
|
end
|
144
144
|
|
@@ -146,9 +146,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
146
146
|
it 'should print the service message' do
|
147
147
|
described_class.block_opened(name: 'block name')
|
148
148
|
|
149
|
-
expect(
|
150
|
-
have_received(:
|
151
|
-
.with("##teamcity[blockOpened name='block name']")
|
149
|
+
expect(described_class).to \
|
150
|
+
have_received(:print)
|
151
|
+
.with("##teamcity[blockOpened name='block name']\n")
|
152
152
|
end
|
153
153
|
end
|
154
154
|
|
@@ -156,9 +156,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
156
156
|
it 'should print the service message' do
|
157
157
|
described_class.test_started(name: 'test name', captureStandardOutput: true)
|
158
158
|
|
159
|
-
expect(
|
160
|
-
have_received(:
|
161
|
-
.with("##teamcity[testStarted name='test name' captureStandardOutput='true']")
|
159
|
+
expect(described_class).to \
|
160
|
+
have_received(:print)
|
161
|
+
.with("##teamcity[testStarted name='test name' captureStandardOutput='true']\n")
|
162
162
|
end
|
163
163
|
end
|
164
164
|
|
@@ -166,9 +166,9 @@ describe Rake::Funnel::Integration::TeamCity::ServiceMessages do # rubocop:disab
|
|
166
166
|
it 'should print the service message' do
|
167
167
|
described_class.test_started(capture_standard_output: true)
|
168
168
|
|
169
|
-
expect(
|
170
|
-
have_received(:
|
171
|
-
.with("##teamcity[testStarted captureStandardOutput='true']")
|
169
|
+
expect(described_class).to \
|
170
|
+
have_received(:print)
|
171
|
+
.with("##teamcity[testStarted captureStandardOutput='true']\n")
|
172
172
|
end
|
173
173
|
end
|
174
174
|
end
|
@@ -17,7 +17,7 @@ describe Rake::Funnel::Support::Environments::Loader do
|
|
17
17
|
allow(File).to receive(:read).with(file.to_s).and_return(content)
|
18
18
|
end
|
19
19
|
|
20
|
-
allow(
|
20
|
+
allow($stderr).to receive(:print)
|
21
21
|
end
|
22
22
|
|
23
23
|
describe 'loading configuration' do
|
@@ -35,7 +35,7 @@ describe Rake::Funnel::Support::MSBuild::BuildTool do # rubocop:disable RSpec/Fi
|
|
35
35
|
end
|
36
36
|
|
37
37
|
before do
|
38
|
-
allow(
|
38
|
+
allow($stderr).to receive(:print)
|
39
39
|
end
|
40
40
|
|
41
41
|
it 'finds nothing' do
|
@@ -44,7 +44,7 @@ describe Rake::Funnel::Support::MSBuild::BuildTool do # rubocop:disable RSpec/Fi
|
|
44
44
|
|
45
45
|
it 'warns about the crash' do
|
46
46
|
described_class.find rescue nil # rubocop:disable Style/RescueModifier
|
47
|
-
expect(
|
47
|
+
expect($stderr).to have_received(:print).with(/^vswhere failed:/)
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
@@ -158,7 +158,7 @@ describe Rake::Funnel::Support::MSBuild::BuildTool do # rubocop:disable RSpec/Fi
|
|
158
158
|
end
|
159
159
|
|
160
160
|
before do
|
161
|
-
allow(
|
161
|
+
allow($stderr).to receive(:print)
|
162
162
|
end
|
163
163
|
|
164
164
|
it 'finds nothing' do
|
@@ -167,7 +167,7 @@ describe Rake::Funnel::Support::MSBuild::BuildTool do # rubocop:disable RSpec/Fi
|
|
167
167
|
|
168
168
|
it 'warns about the crash' do
|
169
169
|
described_class.find rescue nil # rubocop:disable Style/RescueModifier
|
170
|
-
expect(
|
170
|
+
expect($stderr).to have_received(:print).with(/^Could not determine mono version:/)
|
171
171
|
end
|
172
172
|
end
|
173
173
|
|
@@ -1,8 +1,6 @@
|
|
1
1
|
describe Rake::Funnel::Support::MSDeploy::RegistryPatch do # rubocop:disable RSpec/FilePath
|
2
2
|
before do
|
3
|
-
|
4
|
-
allow_any_instance_of(described_class).to receive(:warn)
|
5
|
-
# rubocop:enable RSpec/AnyInstance
|
3
|
+
allow($stderr).to receive(:print)
|
6
4
|
end
|
7
5
|
|
8
6
|
describe 'execution' do
|
@@ -106,7 +104,7 @@ describe Rake::Funnel::Support::MSDeploy::RegistryPatch do # rubocop:disable RSp
|
|
106
104
|
end
|
107
105
|
|
108
106
|
it 'should warn' do
|
109
|
-
expect(
|
107
|
+
expect($stderr).to have_received(:print).with(/Could not patch registry to pretend MSDeploy is installed/)
|
110
108
|
end
|
111
109
|
end
|
112
110
|
|
@@ -17,12 +17,12 @@ describe Rake::Funnel::Support::Patch do
|
|
17
17
|
subject do
|
18
18
|
described_class.new do |p|
|
19
19
|
p.setup do
|
20
|
-
output.
|
20
|
+
output.print 'setup'
|
21
21
|
42
|
22
22
|
end
|
23
23
|
|
24
24
|
p.reset do |memo|
|
25
|
-
output.
|
25
|
+
output.print memo
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
@@ -33,7 +33,7 @@ describe Rake::Funnel::Support::Patch do
|
|
33
33
|
let!(:ret) { subject.apply! }
|
34
34
|
|
35
35
|
it 'should execute the setup' do
|
36
|
-
expect(output).to have_received(:
|
36
|
+
expect(output).to have_received(:print).with('setup')
|
37
37
|
end
|
38
38
|
|
39
39
|
it 'should return self' do
|
@@ -48,7 +48,7 @@ describe Rake::Funnel::Support::Patch do
|
|
48
48
|
end
|
49
49
|
|
50
50
|
it 'should execute the reset' do
|
51
|
-
expect(output).to have_received(:
|
51
|
+
expect(output).to have_received(:print).with(42)
|
52
52
|
end
|
53
53
|
|
54
54
|
it 'should return self' do
|
@@ -60,7 +60,7 @@ describe Rake::Funnel::Support::Patch do
|
|
60
60
|
before { subject.revert! }
|
61
61
|
|
62
62
|
it 'should not execute the reset' do
|
63
|
-
expect(output).not_to have_received(:
|
63
|
+
expect(output).not_to have_received(:print).with(42)
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
@@ -71,7 +71,7 @@ describe Rake::Funnel::Support::Patch do
|
|
71
71
|
end
|
72
72
|
|
73
73
|
it 'should execute the setup once' do
|
74
|
-
expect(output).to have_received(:
|
74
|
+
expect(output).to have_received(:print).with('setup').once
|
75
75
|
end
|
76
76
|
end
|
77
77
|
|
@@ -83,7 +83,7 @@ describe Rake::Funnel::Support::Patch do
|
|
83
83
|
end
|
84
84
|
|
85
85
|
it 'should execute the revert once' do
|
86
|
-
expect(output).to have_received(:
|
86
|
+
expect(output).to have_received(:print).with(42).once
|
87
87
|
end
|
88
88
|
end
|
89
89
|
|
@@ -93,7 +93,7 @@ describe Rake::Funnel::Support::Patch do
|
|
93
93
|
subject do
|
94
94
|
described_class.new(context) do |p|
|
95
95
|
p.setup do |context|
|
96
|
-
output.
|
96
|
+
output.print context
|
97
97
|
end
|
98
98
|
end
|
99
99
|
end
|
@@ -101,7 +101,7 @@ describe Rake::Funnel::Support::Patch do
|
|
101
101
|
before { subject.apply!.revert! }
|
102
102
|
|
103
103
|
it 'should be accessible from within the patch definition' do
|
104
|
-
expect(output).to have_received(:
|
104
|
+
expect(output).to have_received(:print).with(42)
|
105
105
|
end
|
106
106
|
end
|
107
107
|
end
|
@@ -6,34 +6,34 @@ describe Rake::Funnel::Support::Timing::Report do
|
|
6
6
|
let(:opts) { {} }
|
7
7
|
|
8
8
|
before do
|
9
|
-
allow($stdout).to receive(:
|
10
|
-
allow(
|
9
|
+
allow($stdout).to receive(:print)
|
10
|
+
allow($stderr).to receive(:print)
|
11
11
|
subject.render
|
12
12
|
end
|
13
13
|
|
14
14
|
shared_examples_for 'report' do
|
15
15
|
it 'should separator lines' do
|
16
|
-
expect($stdout).to have_received(:
|
16
|
+
expect($stdout).to have_received(:print)
|
17
17
|
.with(Regexp.new('-' * described_class::HEADER_WIDTH)).exactly(4).times
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'should print the header' do
|
21
|
-
expect($stdout).to have_received(:
|
21
|
+
expect($stdout).to have_received(:print).with("Build time report\n")
|
22
22
|
end
|
23
23
|
|
24
24
|
it 'should print the total time' do
|
25
|
-
expect($stdout).to have_received(:
|
25
|
+
expect($stdout).to have_received(:print).with(/^Total\s+00:00:00/)
|
26
26
|
end
|
27
27
|
|
28
28
|
it 'should print the build status' do
|
29
|
-
expect($stdout).to have_received(:
|
29
|
+
expect($stdout).to have_received(:print).with(/Status\s+OK/)
|
30
30
|
end
|
31
31
|
|
32
32
|
context 'when rake succeeded' do
|
33
33
|
let(:opts) { { failed: false } }
|
34
34
|
|
35
35
|
it 'should print the successful build status' do
|
36
|
-
expect($stdout).to have_received(:
|
36
|
+
expect($stdout).to have_received(:print).with(/Status\s+OK/)
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -41,7 +41,7 @@ describe Rake::Funnel::Support::Timing::Report do
|
|
41
41
|
let(:opts) { { failed: true } }
|
42
42
|
|
43
43
|
it 'should print the failed build status' do
|
44
|
-
expect(
|
44
|
+
expect($stderr).to have_received(:print).with(/Status\s+Failed/)
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
@@ -63,12 +63,12 @@ describe Rake::Funnel::Support::Timing::Report do
|
|
63
63
|
it_behaves_like 'report'
|
64
64
|
|
65
65
|
it 'should print each task' do
|
66
|
-
expect($stdout).to have_received(:
|
67
|
-
expect($stdout).to have_received(:
|
66
|
+
expect($stdout).to have_received(:print).with(/^foo/)
|
67
|
+
expect($stdout).to have_received(:print).with(/^bar/)
|
68
68
|
end
|
69
69
|
|
70
70
|
it "should print each task's time" do
|
71
|
-
expect($stdout).to have_received(:
|
71
|
+
expect($stdout).to have_received(:print).with(/00:00:00/).exactly(3).times
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
@@ -97,16 +97,16 @@ describe Rake::Funnel::Support::Timing::Report do
|
|
97
97
|
|
98
98
|
shared_examples_for 'padding' do
|
99
99
|
it 'should pad headers' do
|
100
|
-
expect($stdout).to have_received(:
|
100
|
+
expect($stdout).to have_received(:print)
|
101
101
|
.with(Regexp.new("^#{subject.columns[0].header}\\s{#{header_space}}#{subject.columns[1].header}"))
|
102
102
|
end
|
103
103
|
|
104
104
|
it 'should pad header underlines' do
|
105
|
-
expect($stdout).to have_received(:
|
105
|
+
expect($stdout).to have_received(:print).with(Regexp.new("^-{#{header_underline}}\\s+"))
|
106
106
|
end
|
107
107
|
|
108
108
|
it 'should pad the task names' do
|
109
|
-
expect($stdout).to have_received(:
|
109
|
+
expect($stdout).to have_received(:print).with(Regexp.new("^#{task_name}\\s{#{value_space}}\\d"))
|
110
110
|
end
|
111
111
|
end
|
112
112
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
describe Rake::Funnel::Support::Trace do
|
2
2
|
before do
|
3
|
-
allow(
|
3
|
+
allow($stderr).to receive(:print)
|
4
4
|
end
|
5
5
|
|
6
6
|
context 'Rake run with --trace' do
|
@@ -11,7 +11,7 @@ describe Rake::Funnel::Support::Trace do
|
|
11
11
|
it 'should write messages' do
|
12
12
|
described_class.message('foo')
|
13
13
|
|
14
|
-
expect(
|
14
|
+
expect($stderr).to have_received(:print).with("foo\n")
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
@@ -23,7 +23,7 @@ describe Rake::Funnel::Support::Trace do
|
|
23
23
|
it 'should not write messages' do
|
24
24
|
described_class.message('foo')
|
25
25
|
|
26
|
-
expect(
|
26
|
+
expect($stderr).not_to have_received(:print)
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
@@ -22,7 +22,7 @@ describe Rake::Funnel::Tasks::BinPath do
|
|
22
22
|
before do
|
23
23
|
allow(ENV).to receive(:[]).with('PATH').and_return(default_path)
|
24
24
|
allow(ENV).to receive(:[]=)
|
25
|
-
allow(
|
25
|
+
allow($stderr).to receive(:print)
|
26
26
|
end
|
27
27
|
|
28
28
|
subject do
|
@@ -56,8 +56,8 @@ describe Rake::Funnel::Tasks::BinPath do
|
|
56
56
|
end
|
57
57
|
|
58
58
|
it 'should report added paths' do
|
59
|
-
expect(
|
60
|
-
expect(
|
59
|
+
expect($stderr).to have_received(:print).with(%r{/foo$})
|
60
|
+
expect($stderr).to have_received(:print).with(%r{/bar$})
|
61
61
|
end
|
62
62
|
|
63
63
|
describe 'path modifier' do
|
@@ -98,7 +98,7 @@ describe Rake::Funnel::Tasks::BinPath do
|
|
98
98
|
end
|
99
99
|
|
100
100
|
it 'should not print message' do
|
101
|
-
expect(
|
101
|
+
expect($stderr).not_to have_received(:print)
|
102
102
|
end
|
103
103
|
|
104
104
|
it 'should not set environment variable' do
|
@@ -21,7 +21,7 @@ describe Rake::Funnel::Tasks::QuickTemplate do
|
|
21
21
|
allow(finder).to receive(:all_or_default).and_return(templates)
|
22
22
|
allow(Rake::Funnel::Support::Finder).to receive(:new).and_return(finder)
|
23
23
|
allow(engine).to receive(:render).and_return('file content')
|
24
|
-
allow(
|
24
|
+
allow($stderr).to receive(:print)
|
25
25
|
allow(File).to receive(:read).and_return('template content')
|
26
26
|
allow(File).to receive(:write)
|
27
27
|
end
|
@@ -34,7 +34,7 @@ describe Rake::Funnel::Tasks::QuickTemplate do
|
|
34
34
|
|
35
35
|
it 'should report created files' do
|
36
36
|
templates.each do |template|
|
37
|
-
expect(
|
37
|
+
expect($stderr).to have_received(:print).with("Creating file #{template.ext}\n")
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
@@ -58,9 +58,7 @@ describe Rake::Funnel::Tasks::Timing do
|
|
58
58
|
Rake.application.top_level_tasks.unshift(:task)
|
59
59
|
allow(Rake.application).to receive(:exit_because_of_exception)
|
60
60
|
|
61
|
-
allow($stdout).to receive(:
|
62
|
-
allow(Kernel).to receive(:warn)
|
63
|
-
# The 'rake aborted!' message is #printed on $stderr.
|
61
|
+
allow($stdout).to receive(:print)
|
64
62
|
allow($stderr).to receive(:print)
|
65
63
|
|
66
64
|
Rake.application.run
|
@@ -69,12 +67,12 @@ describe Rake::Funnel::Tasks::Timing do
|
|
69
67
|
context 'with task defined' do
|
70
68
|
let(:define_tasks) do
|
71
69
|
task :task do
|
72
|
-
|
70
|
+
$stdout.print 'hello'
|
73
71
|
end
|
74
72
|
end
|
75
73
|
|
76
74
|
it 'should execute tasks' do
|
77
|
-
expect($stdout).to have_received(:
|
75
|
+
expect($stdout).to have_received(:print).with('hello')
|
78
76
|
end
|
79
77
|
|
80
78
|
it 'should record timing information for executed tasks' do
|
@@ -105,11 +103,11 @@ describe Rake::Funnel::Tasks::Timing do
|
|
105
103
|
describe 'build finished' do
|
106
104
|
context 'when rake succeeded' do
|
107
105
|
it 'should print the report' do
|
108
|
-
expect($stdout).to have_received(:
|
106
|
+
expect($stdout).to have_received(:print).with(/Build time report/)
|
109
107
|
end
|
110
108
|
|
111
109
|
it 'should report success' do
|
112
|
-
expect($stdout).to have_received(:
|
110
|
+
expect($stdout).to have_received(:print).with(/Status\s+OK/)
|
113
111
|
end
|
114
112
|
end
|
115
113
|
|
@@ -121,11 +119,11 @@ describe Rake::Funnel::Tasks::Timing do
|
|
121
119
|
end
|
122
120
|
|
123
121
|
it 'should print the report' do
|
124
|
-
expect($stdout).to have_received(:
|
122
|
+
expect($stdout).to have_received(:print).with(/Build time report/)
|
125
123
|
end
|
126
124
|
|
127
125
|
it 'should report failure' do
|
128
|
-
expect(
|
126
|
+
expect($stderr).to have_received(:print).with(/Status\s+Failed/)
|
129
127
|
end
|
130
128
|
end
|
131
129
|
end
|
@@ -22,7 +22,7 @@ describe Rake::Funnel::Tasks::Zip do
|
|
22
22
|
|
23
23
|
before do
|
24
24
|
allow(Rake::Funnel::Support::Zipper).to receive(:zip)
|
25
|
-
allow(
|
25
|
+
allow($stderr).to receive(:print)
|
26
26
|
end
|
27
27
|
|
28
28
|
subject do
|
@@ -43,7 +43,7 @@ describe Rake::Funnel::Tasks::Zip do
|
|
43
43
|
end
|
44
44
|
|
45
45
|
it 'should report the created zip file' do
|
46
|
-
expect(
|
46
|
+
expect($stderr).to have_received(:print).with("Created #{subject.target}\n")
|
47
47
|
end
|
48
48
|
|
49
49
|
describe '#allow_empty' do
|
@@ -82,7 +82,7 @@ describe Rake::Funnel::Tasks::Zip do
|
|
82
82
|
end
|
83
83
|
|
84
84
|
it 'should warn' do
|
85
|
-
expect(
|
85
|
+
expect($stderr).to have_received(:print).with("No files to zip\n")
|
86
86
|
end
|
87
87
|
end
|
88
88
|
end
|