rake-funnel 0.22.1 → 0.22.2
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/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
|