paraduct 1.0.0.beta6 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.hound.yml +3 -0
- data/.onkcop.yml +223 -0
- data/.rubocop.yml +10 -0
- data/CHANGELOG.md +6 -2
- data/Gemfile +1 -1
- data/README.md +2 -2
- data/Rakefile +1 -1
- data/bin/paraduct +1 -1
- data/lib/paraduct.rb +10 -10
- data/lib/paraduct/cli.rb +2 -2
- data/lib/paraduct/colored_label_logger.rb +1 -1
- data/lib/paraduct/configuration.rb +3 -3
- data/lib/paraduct/parallel_runner.rb +3 -3
- data/lib/paraduct/runner.rb +25 -25
- data/lib/paraduct/test_response.rb +4 -4
- data/lib/paraduct/variable_converter.rb +2 -3
- data/lib/paraduct/version.rb +1 -1
- data/paraduct.gemspec +5 -4
- data/spec/paraduct/cli_spec.rb +11 -11
- data/spec/paraduct/configuration_spec.rb +4 -4
- data/spec/paraduct/parallel_runner_spec.rb +40 -40
- data/spec/paraduct/runner_spec.rb +18 -15
- data/spec/paraduct/sync_utils_spec.rb +5 -5
- data/spec/paraduct/test_response_spec.rb +7 -7
- data/spec/paraduct/variable_converter_spec.rb +25 -26
- data/spec/paraduct_spec.rb +1 -1
- data/spec/spec_helper.rb +57 -59
- data/spec/support/contexts/stub_configuration.rb +2 -2
- data/spec/support/contexts/within_temp_work_dir.rb +0 -1
- metadata +21 -4
@@ -9,7 +9,7 @@ module Paraduct
|
|
9
9
|
delegate :push, :count, to: :jobs, prefix: true
|
10
10
|
|
11
11
|
def successful?
|
12
|
-
@jobs.all?{ |result| result[:successful] }
|
12
|
+
@jobs.all? { |result| result[:successful] }
|
13
13
|
end
|
14
14
|
|
15
15
|
def failure?
|
@@ -18,14 +18,14 @@ module Paraduct
|
|
18
18
|
|
19
19
|
def detail_message
|
20
20
|
all_count = @jobs.count
|
21
|
-
successful_count = @jobs.
|
21
|
+
successful_count = @jobs.count { |result| result[:successful] }
|
22
22
|
failure_count = all_count - successful_count
|
23
23
|
|
24
24
|
message = "======================================================\n"
|
25
25
|
|
26
26
|
if successful_count > 0
|
27
27
|
message << "Passed:\n\n"
|
28
|
-
@jobs.select{ |result| result[:successful] }.each_with_index do |result, i|
|
28
|
+
@jobs.select { |result| result[:successful] }.each_with_index do |result, i|
|
29
29
|
message << " #{i + 1}) #{result[:formatted_params]}\n"
|
30
30
|
end
|
31
31
|
message << "\n"
|
@@ -33,7 +33,7 @@ module Paraduct
|
|
33
33
|
|
34
34
|
if failure_count > 0
|
35
35
|
message << "Failures:\n\n"
|
36
|
-
@jobs.select{ |result| !result[:successful] }.each_with_index do |result, i|
|
36
|
+
@jobs.select { |result| !result[:successful] }.each_with_index do |result, i|
|
37
37
|
message << " #{i + 1}) #{result[:formatted_params]}\n"
|
38
38
|
end
|
39
39
|
message << "\n"
|
@@ -25,9 +25,8 @@ module Paraduct
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def self.reject(product_variables, exclude_variables)
|
28
|
-
product_variables.
|
29
|
-
rejected_product_variables << variables unless exclude_variables.any?{ |exclude| partial_match?(variables, exclude) }
|
30
|
-
rejected_product_variables
|
28
|
+
product_variables.each_with_object([]) do |variables, rejected_product_variables|
|
29
|
+
rejected_product_variables << variables unless exclude_variables.any? { |exclude| partial_match?(variables, exclude) }
|
31
30
|
end
|
32
31
|
end
|
33
32
|
|
data/lib/paraduct/version.rb
CHANGED
data/paraduct.gemspec
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
# coding: utf-8
|
2
|
-
lib = File.expand_path(
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require
|
4
|
+
require "paraduct/version"
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = "paraduct"
|
8
8
|
spec.version = Paraduct::VERSION
|
9
9
|
spec.authors = ["sue445"]
|
10
10
|
spec.email = ["sue445@sue445.net"]
|
11
|
-
spec.summary =
|
12
|
-
spec.description =
|
11
|
+
spec.summary = "matrix test runner"
|
12
|
+
spec.description = "Paraduct(parallel + parameterize + product) is matrix test runner"
|
13
13
|
spec.homepage = "https://github.com/sue445/paraduct"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.add_development_dependency "bundler", ">= 1.5"
|
29
29
|
spec.add_development_dependency "codeclimate-test-reporter"
|
30
30
|
spec.add_development_dependency "coveralls"
|
31
|
+
spec.add_development_dependency "rubocop", "0.37.0"
|
31
32
|
spec.add_development_dependency "pry-byebug"
|
32
33
|
spec.add_development_dependency "rake", "~> 10.0"
|
33
34
|
spec.add_development_dependency "redcarpet"
|
data/spec/paraduct/cli_spec.rb
CHANGED
@@ -1,20 +1,20 @@
|
|
1
1
|
describe Paraduct::CLI do
|
2
2
|
subject { Paraduct::CLI.start(args) }
|
3
3
|
|
4
|
-
let(:args){ [command] }
|
4
|
+
let(:args) { [command] }
|
5
5
|
|
6
6
|
describe "#version" do
|
7
7
|
%w(version --version).each do |_command|
|
8
8
|
context "with #{_command}" do
|
9
|
-
let(:command){ _command }
|
9
|
+
let(:command) { _command }
|
10
10
|
|
11
|
-
it { expect{ subject }.to output("#{Paraduct::VERSION}\n").to_stdout }
|
11
|
+
it { expect { subject }.to output("#{Paraduct::VERSION}\n").to_stdout }
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
16
|
describe "#test" do
|
17
|
-
let(:command){ "test" }
|
17
|
+
let(:command) { "test" }
|
18
18
|
|
19
19
|
include_context :stub_configuration
|
20
20
|
include_context :within_temp_dir
|
@@ -33,8 +33,8 @@ describe Paraduct::CLI do
|
|
33
33
|
}
|
34
34
|
end
|
35
35
|
|
36
|
-
let(:script){ "./script/build_success.sh" }
|
37
|
-
let(:after_script){ "./script/build_finish.sh" }
|
36
|
+
let(:script) { "./script/build_success.sh" }
|
37
|
+
let(:after_script) { "./script/build_finish.sh" }
|
38
38
|
let(:product_variables) do
|
39
39
|
[
|
40
40
|
{ "RUBY" => "1.9.3", "DATABASE" => "mysql" },
|
@@ -52,7 +52,7 @@ describe Paraduct::CLI do
|
|
52
52
|
|
53
53
|
it "should call perform_all" do
|
54
54
|
expect(Paraduct::ParallelRunner).to receive(:perform_all).
|
55
|
-
with(script: script, after_script: after_script, product_variables: product_variables){ test_response }
|
55
|
+
with(script: script, after_script: after_script, product_variables: product_variables) { test_response }
|
56
56
|
subject
|
57
57
|
end
|
58
58
|
end
|
@@ -60,7 +60,7 @@ describe Paraduct::CLI do
|
|
60
60
|
context "failure test" do
|
61
61
|
let(:config_data) do
|
62
62
|
{
|
63
|
-
script:
|
63
|
+
script: "exit ${STATUS}",
|
64
64
|
work_dir: "tmp/paraduct_workspace",
|
65
65
|
variables: {
|
66
66
|
"STATUS" => [0, 1],
|
@@ -73,7 +73,7 @@ describe Paraduct::CLI do
|
|
73
73
|
end
|
74
74
|
|
75
75
|
context "with --dry-run" do
|
76
|
-
let(:args){ [command, "--dry-run"] }
|
76
|
+
let(:args) { [command, "--dry-run"] }
|
77
77
|
|
78
78
|
it "should not call perform_all" do
|
79
79
|
expect(Paraduct::ParallelRunner).not_to receive(:perform_all)
|
@@ -83,7 +83,7 @@ describe Paraduct::CLI do
|
|
83
83
|
end
|
84
84
|
|
85
85
|
describe "#generate" do
|
86
|
-
let(:command){ "generate" }
|
86
|
+
let(:command) { "generate" }
|
87
87
|
|
88
88
|
include_context :within_temp_dir
|
89
89
|
|
@@ -94,7 +94,7 @@ describe Paraduct::CLI do
|
|
94
94
|
|
95
95
|
%w(.paraduct.yml .paraduct_rsync_exclude.txt).each do |template_file|
|
96
96
|
describe "whether copy #{template_file}" do
|
97
|
-
let(:generated_config_file){ temp_dir_path.join(template_file) }
|
97
|
+
let(:generated_config_file) { temp_dir_path.join(template_file) }
|
98
98
|
|
99
99
|
it { expect(generated_config_file).to be_exist }
|
100
100
|
end
|
@@ -1,19 +1,19 @@
|
|
1
1
|
describe Paraduct::Configuration do
|
2
|
-
let(:config){ Paraduct.configuration }
|
2
|
+
let(:config) { Paraduct.configuration }
|
3
3
|
|
4
4
|
before do
|
5
5
|
# use spec/.paraduct.yml
|
6
|
-
allow_any_instance_of(Paraduct::Configuration).to receive(:root_dir){ spec_dir }
|
6
|
+
allow_any_instance_of(Paraduct::Configuration).to receive(:root_dir) { spec_dir }
|
7
7
|
end
|
8
8
|
|
9
9
|
describe "#variables" do
|
10
|
-
subject{ config.variables }
|
10
|
+
subject { config.variables }
|
11
11
|
|
12
12
|
it "should get variables in .paraduct.yml" do
|
13
13
|
is_expected.to match(
|
14
14
|
"RUBY" => ["1.9.3", "2.0.0", "2.1.2"],
|
15
15
|
"DATABASE" => ["mysql", "postgresql"],
|
16
|
-
"RAILS" => ["3.2.0", "4.0.0", "4.1.0"]
|
16
|
+
"RAILS" => ["3.2.0", "4.0.0", "4.1.0"]
|
17
17
|
)
|
18
18
|
end
|
19
19
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
describe Paraduct::ParallelRunner do
|
2
2
|
describe "#perform_all" do
|
3
|
-
subject{ Paraduct::ParallelRunner.perform_all(script: script, product_variables: product_variables, after_script: after_script) }
|
3
|
+
subject { Paraduct::ParallelRunner.perform_all(script: script, product_variables: product_variables, after_script: after_script) }
|
4
4
|
|
5
5
|
include_context :within_temp_work_dir
|
6
6
|
|
@@ -9,23 +9,23 @@ describe Paraduct::ParallelRunner do
|
|
9
9
|
# end
|
10
10
|
|
11
11
|
shared_examples :create_job_directories do
|
12
|
-
let(:job_dir)
|
13
|
-
let(:copied_file){ job_dir.join("script/build_success.sh") }
|
12
|
+
let(:job_dir) { temp_dir_path.join("tmp/paraduct_workspace/#{job_name}") }
|
13
|
+
let(:copied_file) { job_dir.join("script/build_success.sh") }
|
14
14
|
|
15
15
|
it { expect(job_dir).to be_exist }
|
16
16
|
it { expect(copied_file).to be_exist }
|
17
17
|
end
|
18
18
|
|
19
19
|
shared_examples :dont_create_job_directories do
|
20
|
-
let(:job_dir)
|
21
|
-
let(:copied_file){ job_dir.join("script/build_success.sh") }
|
20
|
+
let(:job_dir) { temp_dir_path.join("tmp/paraduct_workspace/#{job_name}") }
|
21
|
+
let(:copied_file) { job_dir.join("script/build_success.sh") }
|
22
22
|
|
23
23
|
it { expect(job_dir).not_to be_exist }
|
24
24
|
it { expect(copied_file).not_to be_exist }
|
25
25
|
end
|
26
26
|
|
27
27
|
describe "with script file test" do
|
28
|
-
let(:script){ "./script/build_success.sh" }
|
28
|
+
let(:script) { "./script/build_success.sh" }
|
29
29
|
let(:after_script) { "./script/build_finish.sh" }
|
30
30
|
let(:product_variables) do
|
31
31
|
[
|
@@ -36,22 +36,22 @@ describe Paraduct::ParallelRunner do
|
|
36
36
|
|
37
37
|
its(:jobs) do
|
38
38
|
should include(
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
39
|
+
job_name: "RUBY_1.9_DATABASE_mysql",
|
40
|
+
params: { "RUBY" => "1.9", "DATABASE" => "mysql" },
|
41
|
+
formatted_params: "RUBY=1.9, DATABASE=mysql",
|
42
|
+
successful: true,
|
43
|
+
stdout: "RUBY=1.9\nDATABASE=mysql\nFinish: RUBY=1.9, DATABASE=mysql\n"
|
44
|
+
)
|
45
45
|
end
|
46
46
|
|
47
47
|
its(:jobs) do
|
48
48
|
should include(
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
49
|
+
job_name: "RUBY_2.0_DATABASE_postgresql",
|
50
|
+
params: { "RUBY" => "2.0", "DATABASE" => "postgresql" },
|
51
|
+
formatted_params: "RUBY=2.0, DATABASE=postgresql",
|
52
|
+
successful: true,
|
53
|
+
stdout: "RUBY=2.0\nDATABASE=postgresql\nFinish: RUBY=2.0, DATABASE=postgresql\n"
|
54
|
+
)
|
55
55
|
end
|
56
56
|
|
57
57
|
context "When work_dir is not empty" do
|
@@ -66,11 +66,11 @@ describe Paraduct::ParallelRunner do
|
|
66
66
|
end
|
67
67
|
|
68
68
|
it_behaves_like :create_job_directories do
|
69
|
-
let(:job_name){ "RUBY_1.9_DATABASE_mysql" }
|
69
|
+
let(:job_name) { "RUBY_1.9_DATABASE_mysql" }
|
70
70
|
end
|
71
71
|
|
72
72
|
it_behaves_like :create_job_directories do
|
73
|
-
let(:job_name){ "RUBY_2.0_DATABASE_postgresql" }
|
73
|
+
let(:job_name) { "RUBY_2.0_DATABASE_postgresql" }
|
74
74
|
end
|
75
75
|
end
|
76
76
|
end
|
@@ -87,19 +87,19 @@ describe Paraduct::ParallelRunner do
|
|
87
87
|
end
|
88
88
|
|
89
89
|
it_behaves_like :dont_create_job_directories do
|
90
|
-
let(:job_name){ "RUBY_1.9_DATABASE_mysql" }
|
90
|
+
let(:job_name) { "RUBY_1.9_DATABASE_mysql" }
|
91
91
|
end
|
92
92
|
|
93
93
|
it_behaves_like :dont_create_job_directories do
|
94
|
-
let(:job_name){ "RUBY_2.0_DATABASE_postgresql" }
|
94
|
+
let(:job_name) { "RUBY_2.0_DATABASE_postgresql" }
|
95
95
|
end
|
96
96
|
end
|
97
97
|
end
|
98
98
|
end
|
99
99
|
|
100
100
|
describe "without script file test" do
|
101
|
-
let(:script){
|
102
|
-
let(:after_script) {
|
101
|
+
let(:script) { 'echo "RUBY=${RUBY} DATABASE=${DATABASE}"' }
|
102
|
+
let(:after_script) { 'echo "Finish: RUBY=${RUBY}, DATABASE=${DATABASE}"' }
|
103
103
|
let(:product_variables) do
|
104
104
|
[
|
105
105
|
{ "RUBY" => "1.9", "DATABASE" => "mysql" },
|
@@ -109,22 +109,22 @@ describe Paraduct::ParallelRunner do
|
|
109
109
|
|
110
110
|
its(:jobs) do
|
111
111
|
should include(
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
112
|
+
job_name: "RUBY_1.9_DATABASE_mysql",
|
113
|
+
params: { "RUBY" => "1.9", "DATABASE" => "mysql" },
|
114
|
+
formatted_params: "RUBY=1.9, DATABASE=mysql",
|
115
|
+
successful: true,
|
116
|
+
stdout: "RUBY=1.9 DATABASE=mysql\nFinish: RUBY=1.9, DATABASE=mysql\n"
|
117
|
+
)
|
118
118
|
end
|
119
119
|
|
120
120
|
its(:jobs) do
|
121
121
|
should include(
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
122
|
+
job_name: "RUBY_2.0_DATABASE_postgresql",
|
123
|
+
params: { "RUBY" => "2.0", "DATABASE" => "postgresql" },
|
124
|
+
formatted_params: "RUBY=2.0, DATABASE=postgresql",
|
125
|
+
successful: true,
|
126
|
+
stdout: "RUBY=2.0 DATABASE=postgresql\nFinish: RUBY=2.0, DATABASE=postgresql\n"
|
127
|
+
)
|
128
128
|
end
|
129
129
|
|
130
130
|
context "When work_dir is not empty" do
|
@@ -139,11 +139,11 @@ describe Paraduct::ParallelRunner do
|
|
139
139
|
end
|
140
140
|
|
141
141
|
it_behaves_like :create_job_directories do
|
142
|
-
let(:job_name){ "RUBY_1.9_DATABASE_mysql" }
|
142
|
+
let(:job_name) { "RUBY_1.9_DATABASE_mysql" }
|
143
143
|
end
|
144
144
|
|
145
145
|
it_behaves_like :create_job_directories do
|
146
|
-
let(:job_name){ "RUBY_2.0_DATABASE_postgresql" }
|
146
|
+
let(:job_name) { "RUBY_2.0_DATABASE_postgresql" }
|
147
147
|
end
|
148
148
|
end
|
149
149
|
end
|
@@ -160,11 +160,11 @@ describe Paraduct::ParallelRunner do
|
|
160
160
|
end
|
161
161
|
|
162
162
|
it_behaves_like :dont_create_job_directories do
|
163
|
-
let(:job_name){ "RUBY_1.9_DATABASE_mysql" }
|
163
|
+
let(:job_name) { "RUBY_1.9_DATABASE_mysql" }
|
164
164
|
end
|
165
165
|
|
166
166
|
it_behaves_like :dont_create_job_directories do
|
167
|
-
let(:job_name){ "RUBY_2.0_DATABASE_postgresql" }
|
167
|
+
let(:job_name) { "RUBY_2.0_DATABASE_postgresql" }
|
168
168
|
end
|
169
169
|
end
|
170
170
|
end
|
@@ -3,22 +3,25 @@ describe Paraduct::Runner do
|
|
3
3
|
Paraduct::Runner.new(
|
4
4
|
params: params,
|
5
5
|
base_job_dir: base_job_dir,
|
6
|
-
job_id: job_id
|
6
|
+
job_id: job_id
|
7
7
|
)
|
8
8
|
end
|
9
9
|
|
10
10
|
include_context "uses temp dir"
|
11
11
|
|
12
|
-
let(:base_job_dir){ temp_dir }
|
12
|
+
let(:base_job_dir) { temp_dir }
|
13
13
|
let(:params) { {} }
|
14
14
|
let(:job_id) { 1 }
|
15
15
|
|
16
16
|
describe "#perform" do
|
17
|
-
subject{ runner.perform(script) }
|
17
|
+
subject { runner.perform(script) }
|
18
18
|
|
19
19
|
let(:script) { "./script/build_success.sh" }
|
20
20
|
let(:params) { { "RUBY" => "1.9", "DATABASE" => "mysql" } }
|
21
|
-
|
21
|
+
|
22
|
+
# rubocop:disable Metrics/LineLength
|
23
|
+
let(:command) { 'export PARADUCT_JOB_ID="1"; export PARADUCT_JOB_NAME="RUBY_1.9_DATABASE_mysql"; export RUBY="1.9"; export DATABASE="mysql"; ./script/build_success.sh' }
|
24
|
+
# rubocop:enable Metrics/LineLength
|
22
25
|
|
23
26
|
context "with mock system" do
|
24
27
|
it "script is call with capitalized variable" do
|
@@ -31,12 +34,12 @@ describe Paraduct::Runner do
|
|
31
34
|
include_context :within_spec_dir
|
32
35
|
|
33
36
|
context "when success" do
|
34
|
-
it { should match
|
35
|
-
it { should match
|
37
|
+
it { should match(/RUBY=1.9/) }
|
38
|
+
it { should match(/DATABASE=mysql/) }
|
36
39
|
end
|
37
40
|
|
38
41
|
context "when error in script file" do
|
39
|
-
let(:script){ "./script/build_error.sh" }
|
42
|
+
let(:script) { "./script/build_error.sh" }
|
40
43
|
|
41
44
|
let(:stdout) do
|
42
45
|
<<-EOS
|
@@ -45,25 +48,25 @@ DATABASE=mysql
|
|
45
48
|
EOS
|
46
49
|
end
|
47
50
|
|
48
|
-
it { expect{ subject }.to raise_error(Paraduct::Errors::ProcessError, stdout) }
|
51
|
+
it { expect { subject }.to raise_error(Paraduct::Errors::ProcessError, stdout) }
|
49
52
|
end
|
50
53
|
end
|
51
54
|
|
52
55
|
context "with single command" do
|
53
|
-
let(:script){
|
56
|
+
let(:script) { "echo RUBY=${RUBY}" }
|
54
57
|
|
55
58
|
it { should eq "RUBY=1.9\n" }
|
56
59
|
end
|
57
60
|
|
58
61
|
context "with multiple commands" do
|
59
|
-
let(:script){ [
|
62
|
+
let(:script) { ["echo RUBY=${RUBY}", "echo DATABASE=${DATABASE}"] }
|
60
63
|
|
61
64
|
it { should eq "RUBY=1.9\nDATABASE=mysql\n" }
|
62
65
|
end
|
63
66
|
end
|
64
67
|
|
65
68
|
describe "#job_dir" do
|
66
|
-
subject{ runner.job_dir }
|
69
|
+
subject { runner.job_dir }
|
67
70
|
|
68
71
|
let(:params) { { "RUBY" => "1.9", "DATABASE" => "mysql" } }
|
69
72
|
|
@@ -71,15 +74,15 @@ DATABASE=mysql
|
|
71
74
|
end
|
72
75
|
|
73
76
|
describe "#formatted_params" do
|
74
|
-
subject{ runner.formatted_params }
|
77
|
+
subject { runner.formatted_params }
|
75
78
|
|
76
|
-
let(:params){ { "RUBY" => "1.9", "DATABASE" => "mysql" } }
|
79
|
+
let(:params) { { "RUBY" => "1.9", "DATABASE" => "mysql" } }
|
77
80
|
|
78
|
-
it{ should eq "RUBY=1.9, DATABASE=mysql" }
|
81
|
+
it { should eq "RUBY=1.9, DATABASE=mysql" }
|
79
82
|
end
|
80
83
|
|
81
84
|
describe "#job_name" do
|
82
|
-
subject{ runner.job_name }
|
85
|
+
subject { runner.job_name }
|
83
86
|
|
84
87
|
context "basic case" do
|
85
88
|
let(:params) { { "RUBY" => "1.9", "DATABASE" => "mysql" } }
|
@@ -1,6 +1,6 @@
|
|
1
1
|
describe Paraduct::SyncUtils do
|
2
2
|
describe "#copy_recursive" do
|
3
|
-
subject{ Paraduct::SyncUtils.copy_recursive(source_dir, destination_dir) }
|
3
|
+
subject { Paraduct::SyncUtils.copy_recursive(source_dir, destination_dir) }
|
4
4
|
|
5
5
|
include_context :within_temp_dir
|
6
6
|
include_context :stub_configuration
|
@@ -13,10 +13,10 @@ describe Paraduct::SyncUtils do
|
|
13
13
|
}
|
14
14
|
end
|
15
15
|
|
16
|
-
let(:source_dir)
|
17
|
-
let(:destination_dir){ temp_dir_path.join("tmp/paraduct_workspace/RUBY_1.9_DATABASE_mysql") }
|
18
|
-
let(:copied_file)
|
19
|
-
let(:not_copied_file){ destination_dir.join("tmp/paraduct_workspace/dummy.txt") }
|
16
|
+
let(:source_dir) { temp_dir_path }
|
17
|
+
let(:destination_dir) { temp_dir_path.join("tmp/paraduct_workspace/RUBY_1.9_DATABASE_mysql") }
|
18
|
+
let(:copied_file) { destination_dir.join("build_success.sh") }
|
19
|
+
let(:not_copied_file) { destination_dir.join("tmp/paraduct_workspace/dummy.txt") }
|
20
20
|
|
21
21
|
before do
|
22
22
|
# setup
|