aruba 0.8.1 → 0.9.0.pre
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/.rspec +1 -0
- data/.travis.yml +3 -1
- data/Gemfile +13 -10
- data/History.md +25 -7
- data/README.md +6 -1
- data/Rakefile +16 -3
- data/aruba.gemspec +10 -2
- data/bin/aruba +7 -0
- data/cucumber.yml +11 -2
- data/features/api/command/extract_text.feature +97 -0
- data/features/api/command/unescape_text.feature +119 -0
- data/features/api/core/expand_path.feature +16 -0
- data/features/api/{cd.feature → filesystem/cd.feature} +2 -1
- data/features/api/filesystem/create_directory.feature +57 -0
- data/features/api/filesystem/disk_usage.feature +151 -0
- data/features/api/filesystem/does_exist.feature +62 -0
- data/features/api/filesystem/is_absolute.feature +48 -0
- data/features/api/filesystem/is_directory.feature +53 -0
- data/features/api/filesystem/is_file.feature +54 -0
- data/features/api/filesystem/is_relative.feature +48 -0
- data/features/cli/console.feature +52 -0
- data/features/configuration/console_history_file.feature +38 -0
- data/features/configuration/exit_timeout.feature +2 -1
- data/features/configuration/fixtures_path_prefix.feature +0 -1
- data/features/configuration/home_directory.feature +0 -1
- data/features/configuration/io_timeout.feature +0 -1
- data/features/configuration/keep_ansi.feature +1 -2
- data/features/configuration/log_level.feature +38 -0
- data/features/configuration/physical_block_size.feature +53 -0
- data/features/configuration/remove_ansi_escape_sequences.feature +38 -0
- data/features/configuration/root_directory.feature +0 -1
- data/features/configuration/working_directory.feature +2 -1
- data/features/fixtures/cli-app/README.md +5 -0
- data/features/fixtures/cli-app/lib/cli/app.rb +1 -1
- data/features/fixtures/cli-app/spec/spec_helper.rb +1 -2
- data/features/fixtures/cli-app/spec/support/aruba.rb +1 -0
- data/features/fixtures/empty-app/lib/cli/app.rb +1 -1
- data/features/fixtures/empty-app/spec/spec_helper.rb +1 -1
- data/features/step_definitions/aruba_dev_steps.rb +12 -1
- data/features/support/env.rb +1 -1
- data/lib/aruba/announcer.rb +1 -14
- data/lib/aruba/api.rb +6 -6
- data/lib/aruba/api/command.rb +74 -12
- data/lib/aruba/api/core.rb +18 -11
- data/lib/aruba/api/deprecated.rb +60 -72
- data/lib/aruba/api/filesystem.rb +41 -16
- data/lib/aruba/aruba_logger.rb +77 -0
- data/lib/aruba/aruba_path.rb +33 -0
- data/lib/aruba/basic_configuration.rb +2 -2
- data/lib/aruba/cli.rb +11 -0
- data/lib/aruba/config.rb +13 -3
- data/lib/aruba/config/jruby.rb +5 -2
- data/lib/aruba/console.rb +66 -0
- data/lib/aruba/console/help.rb +33 -0
- data/lib/aruba/contracts/is_power_of_two.rb +15 -0
- data/lib/aruba/cucumber.rb +27 -10
- data/lib/aruba/cucumber/hooks.rb +15 -8
- data/lib/aruba/disk_usage_calculator.rb +7 -0
- data/lib/aruba/file_size.rb +52 -0
- data/lib/aruba/in_process.rb +1 -1
- data/lib/aruba/jruby.rb +1 -1
- data/lib/aruba/matchers/command.rb +1 -1
- data/lib/aruba/matchers/directory.rb +1 -1
- data/lib/aruba/matchers/environment.rb +1 -1
- data/lib/aruba/matchers/file.rb +1 -1
- data/lib/aruba/matchers/path.rb +1 -1
- data/lib/aruba/matchers/path/match_path_pattern.rb +1 -1
- data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +1 -1
- data/lib/aruba/platform.rb +14 -242
- data/lib/aruba/{creators → platforms}/aruba_file_creator.rb +3 -3
- data/lib/aruba/{creators → platforms}/aruba_fixed_size_file_creator.rb +2 -2
- data/lib/aruba/platforms/simple_table.rb +36 -0
- data/lib/aruba/platforms/unix_command_string.rb +24 -0
- data/lib/aruba/platforms/unix_environment_variables.rb +130 -0
- data/lib/aruba/platforms/unix_platform.rb +226 -0
- data/lib/aruba/platforms/unix_which.rb +83 -0
- data/lib/aruba/platforms/windows_command_string.rb +23 -0
- data/lib/aruba/platforms/windows_environment_variables.rb +83 -0
- data/lib/aruba/platforms/windows_platform.rb +39 -0
- data/lib/aruba/platforms/windows_which.rb +104 -0
- data/lib/aruba/process_monitor.rb +3 -3
- data/lib/aruba/processes/basic_process.rb +23 -3
- data/lib/aruba/processes/debug_process.rb +2 -2
- data/lib/aruba/processes/in_process.rb +1 -1
- data/lib/aruba/processes/spawn_process.rb +10 -4
- data/lib/aruba/reporting.rb +1 -1
- data/lib/aruba/rspec.rb +8 -6
- data/lib/aruba/runtime.rb +8 -5
- data/lib/aruba/version.rb +1 -1
- data/spec/aruba/api_spec.rb +25 -23
- data/spec/aruba/aruba_path_spec.rb +37 -0
- data/spec/aruba/jruby_spec.rb +1 -1
- data/spec/aruba/matchers/file_spec.rb +2 -2
- data/spec/aruba/matchers/path_spec.rb +3 -3
- data/spec/aruba/platform/simple_table_spec.rb +23 -0
- data/spec/aruba/platform/windows_environment_variables_spec.rb +500 -0
- data/spec/aruba/spawn_process_spec.rb +3 -1
- metadata +90 -12
- data/lib/aruba/contracts/is_a.rb +0 -21
- data/lib/aruba/environment.rb +0 -121
@@ -1,12 +1,14 @@
|
|
1
1
|
require 'aruba/processes/spawn_process'
|
2
2
|
|
3
3
|
RSpec.describe Aruba::Processes::SpawnProcess do
|
4
|
-
subject(:process) { described_class.new(command, exit_timeout, io_wait, working_directory) }
|
4
|
+
subject(:process) { described_class.new(command, exit_timeout, io_wait, working_directory, environment, main_class) }
|
5
5
|
|
6
6
|
let(:command) { 'echo "yo"' }
|
7
7
|
let(:exit_timeout) { 1 }
|
8
8
|
let(:io_wait) { 1 }
|
9
9
|
let(:working_directory) { Dir.getwd }
|
10
|
+
let(:environment) { ENV.to_hash.dup }
|
11
|
+
let(:main_class) { nil }
|
10
12
|
|
11
13
|
describe "#stdout" do
|
12
14
|
before(:each) { process.run! }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aruba
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2015-
|
16
|
+
date: 2015-08-12 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: cucumber
|
@@ -43,6 +43,20 @@ dependencies:
|
|
43
43
|
- - "~>"
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: 0.5.6
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: ffi
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirements:
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 1.9.10
|
53
|
+
type: :runtime
|
54
|
+
prerelease: false
|
55
|
+
version_requirements: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: 1.9.10
|
46
60
|
- !ruby/object:Gem::Dependency
|
47
61
|
name: rspec-expectations
|
48
62
|
requirement: !ruby/object:Gem::Requirement
|
@@ -71,6 +85,20 @@ dependencies:
|
|
71
85
|
- - "~>"
|
72
86
|
- !ruby/object:Gem::Version
|
73
87
|
version: '0.9'
|
88
|
+
- !ruby/object:Gem::Dependency
|
89
|
+
name: thor
|
90
|
+
requirement: !ruby/object:Gem::Requirement
|
91
|
+
requirements:
|
92
|
+
- - "~>"
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '0.19'
|
95
|
+
type: :runtime
|
96
|
+
prerelease: false
|
97
|
+
version_requirements: !ruby/object:Gem::Requirement
|
98
|
+
requirements:
|
99
|
+
- - "~>"
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0.19'
|
74
102
|
- !ruby/object:Gem::Dependency
|
75
103
|
name: bundler
|
76
104
|
requirement: !ruby/object:Gem::Requirement
|
@@ -88,7 +116,8 @@ dependencies:
|
|
88
116
|
description: Extension for popular TDD and BDD frameworks like "Cucumber" and "RSpec"
|
89
117
|
to make testing commandline applications meaningful, easy and fun.
|
90
118
|
email: cukes@googlegroups.com
|
91
|
-
executables:
|
119
|
+
executables:
|
120
|
+
- aruba
|
92
121
|
extensions: []
|
93
122
|
extra_rdoc_files: []
|
94
123
|
files:
|
@@ -109,22 +138,37 @@ files:
|
|
109
138
|
- TODO.md
|
110
139
|
- appveyor.yml
|
111
140
|
- aruba.gemspec
|
141
|
+
- bin/aruba
|
112
142
|
- config/.gitignore
|
113
143
|
- cucumber.yml
|
114
144
|
- doc/dependency_decisions.yml
|
115
|
-
- features/api/
|
145
|
+
- features/api/command/extract_text.feature
|
116
146
|
- features/api/command/run.feature
|
147
|
+
- features/api/command/unescape_text.feature
|
117
148
|
- features/api/command/which.feature
|
118
149
|
- features/api/core/expand_path.feature
|
119
150
|
- features/api/environment/append_environment_variable.feature
|
120
151
|
- features/api/environment/prepend_environment_variable.feature
|
121
152
|
- features/api/environment/set_environment_variable.feature
|
153
|
+
- features/api/filesystem/cd.feature
|
154
|
+
- features/api/filesystem/create_directory.feature
|
155
|
+
- features/api/filesystem/disk_usage.feature
|
156
|
+
- features/api/filesystem/does_exist.feature
|
157
|
+
- features/api/filesystem/is_absolute.feature
|
158
|
+
- features/api/filesystem/is_directory.feature
|
159
|
+
- features/api/filesystem/is_file.feature
|
160
|
+
- features/api/filesystem/is_relative.feature
|
161
|
+
- features/cli/console.feature
|
162
|
+
- features/configuration/console_history_file.feature
|
122
163
|
- features/configuration/exit_timeout.feature
|
123
164
|
- features/configuration/fixtures_directories.feature
|
124
165
|
- features/configuration/fixtures_path_prefix.feature
|
125
166
|
- features/configuration/home_directory.feature
|
126
167
|
- features/configuration/io_timeout.feature
|
127
168
|
- features/configuration/keep_ansi.feature
|
169
|
+
- features/configuration/log_level.feature
|
170
|
+
- features/configuration/physical_block_size.feature
|
171
|
+
- features/configuration/remove_ansi_escape_sequences.feature
|
128
172
|
- features/configuration/root_directory.feature
|
129
173
|
- features/configuration/working_directory.feature
|
130
174
|
- features/debug.feature
|
@@ -141,6 +185,7 @@ files:
|
|
141
185
|
- features/fixtures/cli-app/script/console
|
142
186
|
- features/fixtures/cli-app/spec/cli/app_spec.rb
|
143
187
|
- features/fixtures/cli-app/spec/spec_helper.rb
|
188
|
+
- features/fixtures/cli-app/spec/support/aruba.rb
|
144
189
|
- features/fixtures/copy/file.txt
|
145
190
|
- features/fixtures/empty-app/.gitignore
|
146
191
|
- features/fixtures/empty-app/.rspec
|
@@ -190,24 +235,27 @@ files:
|
|
190
235
|
- lib/aruba/api/environment.rb
|
191
236
|
- lib/aruba/api/filesystem.rb
|
192
237
|
- lib/aruba/api/rvm.rb
|
238
|
+
- lib/aruba/aruba_logger.rb
|
193
239
|
- lib/aruba/aruba_path.rb
|
194
240
|
- lib/aruba/basic_configuration.rb
|
195
241
|
- lib/aruba/basic_configuration/option.rb
|
242
|
+
- lib/aruba/cli.rb
|
196
243
|
- lib/aruba/command.rb
|
197
244
|
- lib/aruba/config.rb
|
198
245
|
- lib/aruba/config/jruby.rb
|
199
246
|
- lib/aruba/config_wrapper.rb
|
247
|
+
- lib/aruba/console.rb
|
248
|
+
- lib/aruba/console/help.rb
|
200
249
|
- lib/aruba/contracts/absolute_path.rb
|
201
250
|
- lib/aruba/contracts/enum.rb
|
202
|
-
- lib/aruba/contracts/
|
251
|
+
- lib/aruba/contracts/is_power_of_two.rb
|
203
252
|
- lib/aruba/contracts/relative_path.rb
|
204
|
-
- lib/aruba/creators/aruba_file_creator.rb
|
205
|
-
- lib/aruba/creators/aruba_fixed_size_file_creator.rb
|
206
253
|
- lib/aruba/cucumber.rb
|
207
254
|
- lib/aruba/cucumber/hooks.rb
|
208
|
-
- lib/aruba/
|
255
|
+
- lib/aruba/disk_usage_calculator.rb
|
209
256
|
- lib/aruba/errors.rb
|
210
257
|
- lib/aruba/extensions/string/strip.rb
|
258
|
+
- lib/aruba/file_size.rb
|
211
259
|
- lib/aruba/hooks.rb
|
212
260
|
- lib/aruba/in_process.rb
|
213
261
|
- lib/aruba/jruby.rb
|
@@ -233,6 +281,17 @@ files:
|
|
233
281
|
- lib/aruba/matchers/rspec.rb
|
234
282
|
- lib/aruba/matchers/rspec_matcher_include_regexp.rb
|
235
283
|
- lib/aruba/platform.rb
|
284
|
+
- lib/aruba/platforms/aruba_file_creator.rb
|
285
|
+
- lib/aruba/platforms/aruba_fixed_size_file_creator.rb
|
286
|
+
- lib/aruba/platforms/simple_table.rb
|
287
|
+
- lib/aruba/platforms/unix_command_string.rb
|
288
|
+
- lib/aruba/platforms/unix_environment_variables.rb
|
289
|
+
- lib/aruba/platforms/unix_platform.rb
|
290
|
+
- lib/aruba/platforms/unix_which.rb
|
291
|
+
- lib/aruba/platforms/windows_command_string.rb
|
292
|
+
- lib/aruba/platforms/windows_environment_variables.rb
|
293
|
+
- lib/aruba/platforms/windows_platform.rb
|
294
|
+
- lib/aruba/platforms/windows_which.rb
|
236
295
|
- lib/aruba/process_monitor.rb
|
237
296
|
- lib/aruba/processes/basic_process.rb
|
238
297
|
- lib/aruba/processes/debug_process.rb
|
@@ -258,6 +317,8 @@ files:
|
|
258
317
|
- spec/aruba/matchers/directory_spec.rb
|
259
318
|
- spec/aruba/matchers/file_spec.rb
|
260
319
|
- spec/aruba/matchers/path_spec.rb
|
320
|
+
- spec/aruba/platform/simple_table_spec.rb
|
321
|
+
- spec/aruba/platform/windows_environment_variables_spec.rb
|
261
322
|
- spec/aruba/rspec_spec.rb
|
262
323
|
- spec/aruba/runtime_spec.rb
|
263
324
|
- spec/aruba/spawn_process_spec.rb
|
@@ -310,29 +371,43 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
310
371
|
version: 1.8.7
|
311
372
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
312
373
|
requirements:
|
313
|
-
- - "
|
374
|
+
- - ">"
|
314
375
|
- !ruby/object:Gem::Version
|
315
|
-
version:
|
376
|
+
version: 1.3.1
|
316
377
|
requirements: []
|
317
378
|
rubyforge_project:
|
318
379
|
rubygems_version: 2.4.5
|
319
380
|
signing_key:
|
320
381
|
specification_version: 4
|
321
|
-
summary: aruba-0.
|
382
|
+
summary: aruba-0.9.0.pre
|
322
383
|
test_files:
|
323
|
-
- features/api/
|
384
|
+
- features/api/command/extract_text.feature
|
324
385
|
- features/api/command/run.feature
|
386
|
+
- features/api/command/unescape_text.feature
|
325
387
|
- features/api/command/which.feature
|
326
388
|
- features/api/core/expand_path.feature
|
327
389
|
- features/api/environment/append_environment_variable.feature
|
328
390
|
- features/api/environment/prepend_environment_variable.feature
|
329
391
|
- features/api/environment/set_environment_variable.feature
|
392
|
+
- features/api/filesystem/cd.feature
|
393
|
+
- features/api/filesystem/create_directory.feature
|
394
|
+
- features/api/filesystem/disk_usage.feature
|
395
|
+
- features/api/filesystem/does_exist.feature
|
396
|
+
- features/api/filesystem/is_absolute.feature
|
397
|
+
- features/api/filesystem/is_directory.feature
|
398
|
+
- features/api/filesystem/is_file.feature
|
399
|
+
- features/api/filesystem/is_relative.feature
|
400
|
+
- features/cli/console.feature
|
401
|
+
- features/configuration/console_history_file.feature
|
330
402
|
- features/configuration/exit_timeout.feature
|
331
403
|
- features/configuration/fixtures_directories.feature
|
332
404
|
- features/configuration/fixtures_path_prefix.feature
|
333
405
|
- features/configuration/home_directory.feature
|
334
406
|
- features/configuration/io_timeout.feature
|
335
407
|
- features/configuration/keep_ansi.feature
|
408
|
+
- features/configuration/log_level.feature
|
409
|
+
- features/configuration/physical_block_size.feature
|
410
|
+
- features/configuration/remove_ansi_escape_sequences.feature
|
336
411
|
- features/configuration/root_directory.feature
|
337
412
|
- features/configuration/working_directory.feature
|
338
413
|
- features/debug.feature
|
@@ -349,6 +424,7 @@ test_files:
|
|
349
424
|
- features/fixtures/cli-app/script/console
|
350
425
|
- features/fixtures/cli-app/spec/cli/app_spec.rb
|
351
426
|
- features/fixtures/cli-app/spec/spec_helper.rb
|
427
|
+
- features/fixtures/cli-app/spec/support/aruba.rb
|
352
428
|
- features/fixtures/copy/file.txt
|
353
429
|
- features/fixtures/empty-app/.gitignore
|
354
430
|
- features/fixtures/empty-app/.rspec
|
@@ -401,6 +477,8 @@ test_files:
|
|
401
477
|
- spec/aruba/matchers/directory_spec.rb
|
402
478
|
- spec/aruba/matchers/file_spec.rb
|
403
479
|
- spec/aruba/matchers/path_spec.rb
|
480
|
+
- spec/aruba/platform/simple_table_spec.rb
|
481
|
+
- spec/aruba/platform/windows_environment_variables_spec.rb
|
404
482
|
- spec/aruba/rspec_spec.rb
|
405
483
|
- spec/aruba/runtime_spec.rb
|
406
484
|
- spec/aruba/spawn_process_spec.rb
|
data/lib/aruba/contracts/is_a.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
require 'contracts'
|
2
|
-
|
3
|
-
module Aruba
|
4
|
-
module Contracts
|
5
|
-
class IsA < ::Contracts::CallableClass
|
6
|
-
private
|
7
|
-
|
8
|
-
attr_reader :vals
|
9
|
-
|
10
|
-
public
|
11
|
-
|
12
|
-
def initialize(*vals)
|
13
|
-
@vals = vals
|
14
|
-
end
|
15
|
-
|
16
|
-
def valid?(val)
|
17
|
-
vals.any? { |v| val.is_a? v }
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
data/lib/aruba/environment.rb
DELETED
@@ -1,121 +0,0 @@
|
|
1
|
-
module Aruba
|
2
|
-
class Environment
|
3
|
-
private
|
4
|
-
|
5
|
-
attr_reader :env
|
6
|
-
|
7
|
-
public
|
8
|
-
|
9
|
-
def initialize
|
10
|
-
@env = ENV.to_hash
|
11
|
-
end
|
12
|
-
|
13
|
-
# Update environment with other en
|
14
|
-
#
|
15
|
-
# @param [#to_hash, #to_h] other_env
|
16
|
-
# Another environment object or hash
|
17
|
-
#
|
18
|
-
# @yield
|
19
|
-
# Pass block to env
|
20
|
-
def update(other_env, &block)
|
21
|
-
if RUBY_VERSION <= '1.9.3'
|
22
|
-
# rubocop:disable Style/EachWithObject
|
23
|
-
other_env = other_env.to_hash.inject({}) { |a, (k, v)| a[k] = v.to_s; a }
|
24
|
-
# rubocop:enable Style/EachWithObject
|
25
|
-
else
|
26
|
-
other_env = other_env.to_h.each_with_object({}) { |(k, v), a| a[k] = v.to_s }
|
27
|
-
end
|
28
|
-
|
29
|
-
env.update(other_env, &block)
|
30
|
-
|
31
|
-
self
|
32
|
-
end
|
33
|
-
|
34
|
-
# Fetch variable from environment
|
35
|
-
#
|
36
|
-
# @param [#to_s] name
|
37
|
-
# The name of the variable
|
38
|
-
#
|
39
|
-
# @param [Object] default
|
40
|
-
# The default value used, if the variable is not defined
|
41
|
-
def fetch(name, default)
|
42
|
-
env.fetch name.to_s, default
|
43
|
-
end
|
44
|
-
|
45
|
-
# Check if variable exist
|
46
|
-
#
|
47
|
-
# @param [#to_s] name
|
48
|
-
# The name of the variable
|
49
|
-
def key?(name)
|
50
|
-
env.key? name.to_s
|
51
|
-
end
|
52
|
-
|
53
|
-
# Get value of variable
|
54
|
-
#
|
55
|
-
# @param [#to_s] name
|
56
|
-
# The name of the variable
|
57
|
-
def [](name)
|
58
|
-
env[name.to_s]
|
59
|
-
end
|
60
|
-
|
61
|
-
# Set value of variable
|
62
|
-
#
|
63
|
-
# @param [#to_s] name
|
64
|
-
# The name of the variable
|
65
|
-
#
|
66
|
-
# @param [#to_s] value
|
67
|
-
# The value of the variable
|
68
|
-
def []=(name, value)
|
69
|
-
env[name.to_s] = value.to_s
|
70
|
-
|
71
|
-
self
|
72
|
-
end
|
73
|
-
|
74
|
-
# Append value to variable
|
75
|
-
#
|
76
|
-
# @param [#to_s] name
|
77
|
-
# The name of the variable
|
78
|
-
#
|
79
|
-
# @param [#to_s] value
|
80
|
-
# The value of the variable
|
81
|
-
def append(name, value)
|
82
|
-
name = name.to_s
|
83
|
-
env[name] = env[name].to_s + value.to_s
|
84
|
-
|
85
|
-
self
|
86
|
-
end
|
87
|
-
|
88
|
-
# Prepend value to variable
|
89
|
-
#
|
90
|
-
# @param [#to_s] name
|
91
|
-
# The name of the variable
|
92
|
-
#
|
93
|
-
# @param [#to_s] value
|
94
|
-
# The value of the variable
|
95
|
-
def prepend(name, value)
|
96
|
-
name = name.to_s
|
97
|
-
env[name] = value.to_s + env[name].to_s
|
98
|
-
|
99
|
-
self
|
100
|
-
end
|
101
|
-
|
102
|
-
# Convert to hash
|
103
|
-
#
|
104
|
-
# @return [Hash]
|
105
|
-
# A new hash from environment
|
106
|
-
def to_h
|
107
|
-
if RUBY_VERSION < '2.0'
|
108
|
-
env.to_hash.dup
|
109
|
-
else
|
110
|
-
env.to_h.dup
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
# Reset environment
|
115
|
-
def clear
|
116
|
-
env.clear
|
117
|
-
|
118
|
-
self
|
119
|
-
end
|
120
|
-
end
|
121
|
-
end
|