aruba 0.14.9 → 1.0.0
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/.cucumberproignore +3 -0
- data/.github/ISSUE_TEMPLATE.md +48 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +41 -0
- data/.gitignore +1 -0
- data/.rspec +1 -1
- data/.rubocop.yml +20 -179
- data/.rubocop_todo.yml +262 -0
- data/.simplecov +7 -5
- data/.travis.yml +54 -46
- data/.yardopts +3 -0
- data/CHANGELOG.md +613 -246
- data/CONTRIBUTING.md +247 -45
- data/Dockerfile +67 -0
- data/Gemfile +5 -96
- data/LICENSE +1 -1
- data/README.md +57 -180
- data/Rakefile +63 -32
- data/appveyor.yml +8 -11
- data/aruba.gemspec +47 -41
- data/bin/console +7 -0
- data/bin/test +9 -0
- data/cucumber.yml +4 -24
- data/doc/dependency_decisions.yml +42 -2
- data/docker-compose.yml +26 -0
- data/{bin → exe}/aruba +1 -1
- data/fixtures/cli-app/Rakefile +1 -1
- data/fixtures/cli-app/bin/aruba-test-cli +6 -0
- data/fixtures/cli-app/cli-app.gemspec +1 -2
- data/fixtures/cli-app/features/support/aruba.rb +1 -0
- data/fixtures/cli-app/features/support/env.rb +1 -1
- data/fixtures/cli-app/lib/cli/app/suppress_simple_cov_output.rb +3 -3
- data/fixtures/cli-app/lib/cli/app/version.rb +1 -1
- data/fixtures/cli-app/lib/cli/app.rb +1 -5
- data/fixtures/cli-app/spec/spec_helper.rb +4 -6
- data/fixtures/empty-app/Rakefile +1 -1
- data/fixtures/empty-app/cli-app.gemspec +1 -2
- data/fixtures/empty-app/lib/cli/app/version.rb +1 -1
- data/fixtures/empty-app/lib/cli/app.rb +0 -6
- data/fixtures/getting-started-app/Gemfile +1 -1
- data/lib/aruba/api/commands.rb +109 -143
- data/lib/aruba/api/core.rb +57 -43
- data/lib/aruba/api/environment.rb +16 -7
- data/lib/aruba/api/filesystem.rb +42 -29
- data/lib/aruba/api/text.rb +3 -9
- data/lib/aruba/api.rb +6 -11
- data/lib/aruba/aruba_path.rb +27 -89
- data/lib/aruba/basic_configuration.rb +4 -24
- data/lib/aruba/cli.rb +1 -1
- data/lib/aruba/colorizer.rb +10 -99
- data/lib/aruba/command.rb +2 -0
- data/lib/aruba/config/jruby.rb +15 -5
- data/lib/aruba/config_wrapper.rb +1 -1
- data/lib/aruba/configuration.rb +92 -0
- data/lib/aruba/console/help.rb +1 -7
- data/lib/aruba/console.rb +5 -5
- data/lib/aruba/contracts/absolute_path.rb +2 -2
- data/lib/aruba/contracts/relative_path.rb +2 -2
- data/lib/aruba/cucumber/command.rb +171 -160
- data/lib/aruba/cucumber/environment.rb +1 -1
- data/lib/aruba/cucumber/file.rb +21 -35
- data/lib/aruba/cucumber/hooks.rb +17 -56
- data/lib/aruba/cucumber/testing_frameworks.rb +74 -50
- data/lib/aruba/cucumber.rb +0 -5
- data/lib/aruba/event_bus/name_resolver.rb +5 -16
- data/lib/aruba/hooks.rb +1 -1
- data/lib/aruba/in_config_wrapper.rb +5 -1
- data/lib/aruba/initializer.rb +36 -42
- data/lib/aruba/matchers/base/base_matcher.rb +2 -2
- data/lib/aruba/matchers/base/message_indenter.rb +19 -0
- data/lib/aruba/matchers/base/object_formatter.rb +2 -9
- data/lib/aruba/matchers/collection/include_an_object.rb +7 -9
- data/lib/aruba/matchers/command/be_successfully_executed.rb +6 -4
- data/lib/aruba/matchers/command/have_exit_status.rb +14 -4
- data/lib/aruba/matchers/command/have_finished_in_time.rb +3 -5
- data/lib/aruba/matchers/command/have_output.rb +10 -5
- data/lib/aruba/matchers/command/have_output_on_stderr.rb +2 -2
- data/lib/aruba/matchers/command/have_output_on_stdout.rb +2 -2
- data/lib/aruba/matchers/command/have_output_size.rb +2 -2
- data/lib/aruba/matchers/directory/be_an_existing_directory.rb +5 -7
- data/lib/aruba/matchers/directory/have_sub_directory.rb +4 -6
- data/lib/aruba/matchers/file/be_a_command_found_in_path.rb +2 -4
- data/lib/aruba/matchers/file/be_an_existing_executable.rb +4 -6
- data/lib/aruba/matchers/file/be_an_existing_file.rb +5 -7
- data/lib/aruba/matchers/file/have_file_content.rb +4 -4
- data/lib/aruba/matchers/file/have_file_size.rb +6 -8
- data/lib/aruba/matchers/file/have_same_file_content.rb +5 -8
- data/lib/aruba/matchers/path/a_path_matching_pattern.rb +2 -4
- data/lib/aruba/matchers/path/be_an_absolute_path.rb +3 -5
- data/lib/aruba/matchers/path/be_an_existing_path.rb +4 -6
- data/lib/aruba/matchers/path/have_permissions.rb +6 -8
- data/lib/aruba/matchers/string/include_output_string.rb +8 -10
- data/lib/aruba/matchers/string/match_output_string.rb +9 -11
- data/lib/aruba/matchers/string/output_string_eq.rb +7 -9
- data/lib/aruba/platform.rb +0 -8
- data/lib/aruba/platforms/announcer.rb +42 -79
- data/lib/aruba/platforms/aruba_file_creator.rb +2 -6
- data/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +2 -2
- data/lib/aruba/platforms/aruba_logger.rb +23 -7
- data/lib/aruba/platforms/command_monitor.rb +12 -107
- data/lib/aruba/platforms/determine_disk_usage.rb +56 -14
- data/lib/aruba/platforms/filesystem_status.rb +10 -14
- data/lib/aruba/platforms/local_environment.rb +2 -2
- data/lib/aruba/platforms/simple_table.rb +3 -11
- data/lib/aruba/platforms/unix_command_string.rb +7 -11
- data/lib/aruba/platforms/unix_environment_variables.rb +18 -27
- data/lib/aruba/platforms/unix_platform.rb +20 -51
- data/lib/aruba/platforms/unix_which.rb +2 -1
- data/lib/aruba/platforms/windows_command_string.rb +15 -10
- data/lib/aruba/platforms/windows_environment_variables.rb +43 -44
- data/lib/aruba/platforms/windows_platform.rb +4 -0
- data/lib/aruba/platforms/windows_which.rb +4 -3
- data/lib/aruba/processes/basic_process.rb +28 -30
- data/lib/aruba/processes/debug_process.rb +12 -3
- data/lib/aruba/processes/in_process.rb +17 -8
- data/lib/aruba/processes/spawn_process.rb +57 -46
- data/lib/aruba/rspec.rb +14 -36
- data/lib/aruba/runtime.rb +3 -6
- data/lib/aruba/setup.rb +6 -6
- data/lib/aruba/tasks/docker_helpers.rb +154 -0
- data/lib/aruba/version.rb +1 -1
- metadata +191 -244
- data/features/.nav +0 -72
- data/features/api/command/find_command.feature +0 -83
- data/features/api/command/last_command_started.feature +0 -50
- data/features/api/command/last_command_stopped.feature +0 -89
- data/features/api/command/run.feature +0 -414
- data/features/api/command/run_simple.feature +0 -242
- data/features/api/command/send_signal.feature +0 -53
- data/features/api/command/stderr.feature +0 -46
- data/features/api/command/stdout.feature +0 -46
- data/features/api/command/stop.feature +0 -131
- data/features/api/command/stop_all_commands.feature +0 -53
- data/features/api/command/terminate_all_commands.feature +0 -53
- data/features/api/command/which.feature +0 -37
- data/features/api/core/expand_path.feature +0 -88
- data/features/api/environment/append_environment_variable.feature +0 -128
- data/features/api/environment/delete_environment_variable.feature +0 -63
- data/features/api/environment/prepend_environment_variable.feature +0 -128
- data/features/api/environment/set_environment_variable.feature +0 -376
- data/features/api/filesystem/cd.feature +0 -184
- data/features/api/filesystem/create_directory.feature +0 -57
- data/features/api/filesystem/disk_usage.feature +0 -152
- data/features/api/filesystem/does_exist.feature +0 -62
- data/features/api/filesystem/fixtures.feature +0 -104
- data/features/api/filesystem/is_absolute.feature +0 -48
- data/features/api/filesystem/is_directory.feature +0 -53
- data/features/api/filesystem/is_file.feature +0 -54
- data/features/api/filesystem/is_relative.feature +0 -48
- data/features/api/filesystem/move.feature +0 -119
- data/features/api/text/extract_text.feature +0 -87
- data/features/api/text/replace_variables.feature +0 -45
- data/features/api/text/sanitize_text.feature +0 -228
- data/features/api/text/unescape_text.feature +0 -127
- data/features/cli/console.feature +0 -52
- data/features/cli/init.feature +0 -79
- data/features/configuration/activate_announcer_on_command_failure.feature +0 -38
- data/features/configuration/command_runtime_environment.feature +0 -129
- data/features/configuration/console_history_file.feature +0 -38
- data/features/configuration/exit_timeout.feature +0 -52
- data/features/configuration/fixtures_directories.feature +0 -38
- data/features/configuration/fixtures_path_prefix.feature +0 -23
- data/features/configuration/home_directory.feature +0 -80
- data/features/configuration/io_timeout.feature +0 -30
- data/features/configuration/keep_ansi.feature +0 -30
- data/features/configuration/log_level.feature +0 -38
- data/features/configuration/physical_block_size.feature +0 -53
- data/features/configuration/remove_ansi_escape_sequences.feature +0 -38
- data/features/configuration/root_directory.feature +0 -30
- data/features/configuration/startup_wait_time.feature +0 -48
- data/features/configuration/usage.feature +0 -159
- data/features/configuration/working_directory.feature +0 -33
- data/features/development/build.feature +0 -15
- data/features/getting_started/cleanup.feature +0 -58
- data/features/getting_started/run_commands.feature +0 -187
- data/features/getting_started/supported_testing_frameworks.feature +0 -104
- data/features/getting_started/writing_good_feature_tests.feature +0 -38
- data/features/hooks/after/command.feature +0 -46
- data/features/hooks/before/command.feature +0 -75
- data/features/matchers/collection/include_an_object.feature +0 -72
- data/features/matchers/directory/have_sub_directory.feature +0 -110
- data/features/matchers/file/be_a_command_found_in_path.feature +0 -115
- data/features/matchers/file/be_existing_executable.feature +0 -88
- data/features/matchers/file/be_existing_file.feature +0 -82
- data/features/matchers/file/have_file_content.feature +0 -123
- data/features/matchers/file/have_file_size.feature +0 -107
- data/features/matchers/path/be_an_absolute_path.feature +0 -74
- data/features/matchers/path/be_an_existing_path.feature +0 -97
- data/features/matchers/path/have_permissions.feature +0 -118
- data/features/matchers/timeouts.feature +0 -48
- data/features/platforms/jruby.feature +0 -14
- data/features/rspec/integration.feature +0 -179
- data/features/step_definitions/aruba_dev_steps.rb +0 -56
- data/features/step_definitions/hooks.rb +0 -156
- data/features/steps/command/debug.feature +0 -92
- data/features/steps/command/exit_statuses.feature +0 -136
- data/features/steps/command/in_process.feature +0 -485
- data/features/steps/command/interactive.feature +0 -90
- data/features/steps/command/output.feature +0 -567
- data/features/steps/command/run.feature +0 -66
- data/features/steps/command/send_signal.feature +0 -104
- data/features/steps/command/shell.feature +0 -155
- data/features/steps/command/stderr.feature +0 -68
- data/features/steps/command/stdout.feature +0 -109
- data/features/steps/command/stop.feature +0 -313
- data/features/steps/core/announce.feature +0 -283
- data/features/steps/environment/append_environment_variable.feature +0 -52
- data/features/steps/environment/disable_bunder.feature +0 -18
- data/features/steps/environment/home_variable.feature +0 -62
- data/features/steps/environment/prepend_environment_variable.feature +0 -52
- data/features/steps/environment/set_environment_variable.feature +0 -49
- data/features/steps/filesystem/append_to_file.feature +0 -45
- data/features/steps/filesystem/cd_to_directory.feature +0 -33
- data/features/steps/filesystem/check_file_content.feature +0 -61
- data/features/steps/filesystem/check_permissions_of_file.feature +0 -39
- data/features/steps/filesystem/compare_files.feature +0 -42
- data/features/steps/filesystem/copy.feature +0 -45
- data/features/steps/filesystem/create_directory.feature +0 -57
- data/features/steps/filesystem/create_file.feature +0 -76
- data/features/steps/filesystem/existence_of_directory.feature +0 -57
- data/features/steps/filesystem/existence_of_file.feature +0 -43
- data/features/steps/filesystem/file_content.feature +0 -86
- data/features/steps/filesystem/fixtures.feature +0 -64
- data/features/steps/filesystem/move.feature +0 -45
- data/features/steps/filesystem/non_existence_of_directory.feature +0 -69
- data/features/steps/filesystem/non_existence_of_file.feature +0 -80
- data/features/steps/filesystem/overwrite_file.feature +0 -72
- data/features/steps/filesystem/remove_directory.feature +0 -38
- data/features/steps/filesystem/remove_file.feature +0 -38
- data/features/steps/filesystem/use_fixture.feature +0 -77
- data/features/steps/overview.feature +0 -25
- data/features/support/aruba.rb +0 -7
- data/features/support/env.rb +0 -33
- data/features/support/jruby.rb +0 -5
- data/features/support/simplecov_setup.rb +0 -8
- data/fixtures/cli-app/bin/cli +0 -6
- data/fixtures/spawn_process/stderr.sh +0 -3
- data/lib/aruba/api/deprecated.rb +0 -1234
- data/lib/aruba/config.rb +0 -107
- data/lib/aruba/cucumber/core.rb +0 -5
- data/lib/aruba/cucumber/rvm.rb +0 -3
- data/lib/aruba/in_process.rb +0 -14
- data/lib/aruba/jruby.rb +0 -4
- data/lib/aruba/matchers/deprecated/file.rb +0 -17
- data/lib/aruba/matchers/deprecated.rb +0 -1
- data/lib/aruba/matchers/path/match_path_pattern.rb +0 -41
- data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +0 -25
- data/lib/aruba/platforms/disk_usage_calculator.rb +0 -20
- data/lib/aruba/reporting.rb +0 -126
- data/lib/aruba/spawn_process.rb +0 -11
- data/script/bootstrap +0 -28
- data/script/console +0 -16
- data/script/test +0 -3
- data/spec/aruba/api/bundler_spec.rb +0 -15
- data/spec/aruba/api/deprecated_spec.rb +0 -308
- data/spec/aruba/api/environment/restore_env_spec.rb +0 -86
- data/spec/aruba/api/environment/set_env_spec.rb +0 -46
- data/spec/aruba/api/filesystem/file_size_spec.rb +0 -28
- data/spec/aruba/api/runtime_spec.rb +0 -28
- data/spec/aruba/api_spec.rb +0 -981
- data/spec/aruba/aruba_path_spec.rb +0 -103
- data/spec/aruba/basic_configuration_spec.rb +0 -5
- data/spec/aruba/configuration_spec.rb +0 -5
- data/spec/aruba/hooks_spec.rb +0 -17
- data/spec/aruba/in_config_wrapper_spec.rb +0 -25
- data/spec/aruba/jruby_spec.rb +0 -55
- data/spec/aruba/matchers/command/have_output_size_spec.rb +0 -25
- data/spec/aruba/matchers/command_spec.rb +0 -174
- data/spec/aruba/matchers/deprecated_spec.rb +0 -120
- data/spec/aruba/matchers/directory_spec.rb +0 -57
- data/spec/aruba/matchers/file_spec.rb +0 -208
- data/spec/aruba/matchers/path_spec.rb +0 -58
- data/spec/aruba/platform/simple_table_spec.rb +0 -23
- data/spec/aruba/platform/windows_environment_variables_spec.rb +0 -500
- data/spec/aruba/platforms/unix_command_string_spec.rb +0 -17
- data/spec/aruba/platforms/windows_command_string_spec.rb +0 -22
- data/spec/aruba/rspec_spec.rb +0 -15
- data/spec/aruba/runtime_spec.rb +0 -29
- data/spec/aruba/spawn_process_spec.rb +0 -96
- data/spec/event_bus/name_resolver_spec.rb +0 -68
- data/spec/event_bus_spec.rb +0 -158
- data/spec/spec_helper.rb +0 -20
- data/spec/support/configs/.keep +0 -0
- data/spec/support/configs/aruba.rb +0 -5
- data/spec/support/configs/pry.rb +0 -3
- data/spec/support/configs/rspec.rb +0 -15
- data/spec/support/helpers/.keep +0 -0
- data/spec/support/helpers/reporting.rb +0 -44
- data/spec/support/matchers/.keep +0 -0
- data/spec/support/matchers/option.rb +0 -35
- data/spec/support/shared_contexts/.keep +0 -0
- data/spec/support/shared_contexts/aruba.rb +0 -49
- data/spec/support/shared_examples/.keep +0 -0
- data/spec/support/shared_examples/configuration.rb +0 -116
- data/spec/support/shared_examples/directory.rb +0 -7
- data/spec/support/shared_examples/file.rb +0 -7
- data/templates/css/console.css +0 -24
- data/templates/css/filesystem.css +0 -42
- data/templates/css/pygments-autumn.css +0 -59
- data/templates/files.erb +0 -14
- data/templates/images/LICENSE +0 -22
- data/templates/images/folder.png +0 -0
- data/templates/images/page_white.png +0 -0
- data/templates/images/page_white_gherkin.png +0 -0
- data/templates/images/page_white_ruby.png +0 -0
- data/templates/index.erb +0 -20
- data/templates/js/filesystem.js +0 -5
- data/templates/js/jquery-1.11.3.min.js +0 -5
- data/templates/main.erb +0 -34
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
require 'aruba/aruba_path'
|
|
3
|
-
|
|
4
|
-
RSpec.describe Aruba::ArubaPath do
|
|
5
|
-
subject(:path) { described_class.new(new_path) }
|
|
6
|
-
|
|
7
|
-
let(:new_path) { 'path/to/dir' }
|
|
8
|
-
|
|
9
|
-
it { expect(path).to be }
|
|
10
|
-
|
|
11
|
-
describe '#to_s' do
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
describe '#to_s' do
|
|
15
|
-
context 'when string is used' do
|
|
16
|
-
it { expect(path.to_s).to eq new_path }
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
# make it compatible with the old API
|
|
20
|
-
context 'when array is used' do
|
|
21
|
-
let(:net_path) { %w(path to dir) }
|
|
22
|
-
|
|
23
|
-
it { expect(path.to_s).to eq File.join(*new_path) }
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
describe '#push' do
|
|
28
|
-
before(:each) { path.push 'subdir' }
|
|
29
|
-
|
|
30
|
-
it { expect(path.to_s).to eq 'path/to/dir/subdir' }
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
describe '#<<' do
|
|
34
|
-
before(:each) { path << 'subdir' }
|
|
35
|
-
|
|
36
|
-
it { expect(path.to_s).to eq 'path/to/dir/subdir' }
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
describe '#pop' do
|
|
40
|
-
before(:each) { path << 'subdir' }
|
|
41
|
-
before(:each) { path.pop }
|
|
42
|
-
|
|
43
|
-
it { expect(path.to_s).to eq 'path/to/dir' }
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
describe '#relative?' do
|
|
47
|
-
context 'when is relative' do
|
|
48
|
-
it { expect(path).to be_relative }
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
context 'when is absolute' do
|
|
52
|
-
let(:new_path) { '/absolute/path' }
|
|
53
|
-
it { expect(path).not_to be_relative }
|
|
54
|
-
end
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
describe '#[]' do
|
|
58
|
-
context 'when single index' do
|
|
59
|
-
it { expect(path[0]).to eq 'p' }
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
context 'when range' do
|
|
63
|
-
it { expect(path[0..1]).to eq 'pa' }
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
describe '#depth' do
|
|
68
|
-
context 'when relative path' do
|
|
69
|
-
it { expect(path.depth).to eq 3 }
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
context 'when absolute path' do
|
|
73
|
-
let(:new_path) { '/path/to/dir' }
|
|
74
|
-
it { expect(path.depth).to eq 3 }
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
describe '#end_with?' do
|
|
79
|
-
it { expect(path).to be_end_with 'dir' }
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
describe '#start_with?' do
|
|
83
|
-
it { expect(path).to be_start_with 'path/to' }
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
describe '#relative?' do
|
|
87
|
-
it { expect(path).to be_relative }
|
|
88
|
-
end
|
|
89
|
-
|
|
90
|
-
describe '#absolute?' do
|
|
91
|
-
let(:new_path) { '/path/to/dir' }
|
|
92
|
-
it { expect(path).to be_absolute }
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
describe '#blocks' do
|
|
96
|
-
let(:new_path) { expand_path('path/to/file') }
|
|
97
|
-
|
|
98
|
-
before(:each) { FileUtils.mkdir_p File.dirname(new_path) }
|
|
99
|
-
before(:each) { File.open(new_path, 'w') { |f| f.print 'a' } }
|
|
100
|
-
|
|
101
|
-
it { expect(path.blocks).to be > 0 }
|
|
102
|
-
end
|
|
103
|
-
end
|
data/spec/aruba/hooks_spec.rb
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
require 'aruba/config'
|
|
2
|
-
|
|
3
|
-
describe Aruba::Hooks do
|
|
4
|
-
it 'executes a stored hook' do
|
|
5
|
-
hook_was_run = false
|
|
6
|
-
subject.append :hook_label, lambda { hook_was_run = true }
|
|
7
|
-
subject.execute :hook_label, self
|
|
8
|
-
expect(hook_was_run).to be_truthy
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
it 'executes a stored hook that takes multiple arguments' do
|
|
12
|
-
hook_values = []
|
|
13
|
-
subject.append :hook_label, lambda { |a,b,c| hook_values = [a,b,c] }
|
|
14
|
-
subject.execute :hook_label, self, 1, 2, 3
|
|
15
|
-
expect(hook_values).to eq [1,2,3]
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
RSpec.describe Aruba::InConfigWrapper do
|
|
4
|
-
subject(:wrapper) { described_class.new(config) }
|
|
5
|
-
|
|
6
|
-
let(:config) { {} }
|
|
7
|
-
|
|
8
|
-
context 'when option is defined' do
|
|
9
|
-
before :each do
|
|
10
|
-
config[:opt] = true
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
context 'when valid' do
|
|
14
|
-
it { expect(wrapper.opt).to be true }
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
context 'when one tries to pass arguments to option' do
|
|
18
|
-
it { expect{ wrapper.opt('arg') }.to raise_error ArgumentError, 'Options take no argument' }
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
context 'when option is not defined' do
|
|
23
|
-
it { expect{ wrapper.opt }.to raise_error ArgumentError, 'Option "opt" is unknown. Please use only earlier defined options' }
|
|
24
|
-
end
|
|
25
|
-
end
|
data/spec/aruba/jruby_spec.rb
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
require 'aruba/api'
|
|
3
|
-
|
|
4
|
-
describe "Aruba JRuby Startup Helper" do
|
|
5
|
-
before(:all) do
|
|
6
|
-
@fake_env = ENV.clone
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
before :each do
|
|
10
|
-
Aruba.config.reset
|
|
11
|
-
|
|
12
|
-
# Define before_cmd-hook
|
|
13
|
-
load 'aruba/config/jruby.rb'
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
before(:each) do
|
|
17
|
-
@fake_env['JRUBY_OPTS'] = "--1.9"
|
|
18
|
-
@fake_env['JAVA_OPTS'] = "-Xdebug"
|
|
19
|
-
|
|
20
|
-
stub_const('ENV', @fake_env)
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
context 'when some mri ruby' do
|
|
24
|
-
before :each do
|
|
25
|
-
stub_const('RUBY_PLATFORM', 'x86_64-chocolate')
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
before :each do
|
|
29
|
-
Aruba.config.before :command, self
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
it { expect(ENV['JRUBY_OPTS']).to eq '--1.9' }
|
|
33
|
-
it { expect(ENV['JAVA_OPTS']).to eq '-Xdebug' }
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
context 'when jruby ruby' do
|
|
37
|
-
before :each do
|
|
38
|
-
stub_const('RUBY_PLATFORM', 'java')
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
before :each do
|
|
42
|
-
rb_config = double('rb_config')
|
|
43
|
-
allow(rb_config).to receive(:[]).and_return('solaris')
|
|
44
|
-
|
|
45
|
-
stub_const 'RbConfig::CONFIG', rb_config
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
before :each do
|
|
49
|
-
Aruba.config.before :command, self
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
it { expect(ENV['JRUBY_OPTS']).to eq '--dev -X-C --1.9' }
|
|
53
|
-
it { expect(ENV['JAVA_OPTS']).to eq '-d32 -Xdebug' }
|
|
54
|
-
end
|
|
55
|
-
end
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
RSpec.describe 'Output Matchers' do
|
|
4
|
-
include_context 'uses aruba API'
|
|
5
|
-
|
|
6
|
-
def expand_path(*args)
|
|
7
|
-
@aruba.expand_path(*args)
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
describe '#to_have_output_size' do
|
|
11
|
-
let(:obj) { 'string' }
|
|
12
|
-
|
|
13
|
-
context 'when has size' do
|
|
14
|
-
context 'when is string' do
|
|
15
|
-
it { expect(obj).to have_output_size 6 }
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
context 'when does not have size' do
|
|
20
|
-
let(:obj) { 'string' }
|
|
21
|
-
|
|
22
|
-
it { expect(obj).not_to have_output_size(-1) }
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
RSpec.describe 'Command Matchers' do
|
|
4
|
-
include_context 'uses aruba API'
|
|
5
|
-
|
|
6
|
-
def expand_path(*args)
|
|
7
|
-
@aruba.expand_path(*args)
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
def announcer(*args)
|
|
11
|
-
@aruba.send(:announcer, *args)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
describe '#to_have_exit_status' do
|
|
15
|
-
let(:cmd) { 'true' }
|
|
16
|
-
|
|
17
|
-
before(:each) { run_command(cmd) }
|
|
18
|
-
|
|
19
|
-
context 'when has exit 0' do
|
|
20
|
-
it { expect(last_command_started).to have_exit_status 0 }
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
context 'when has exit 0' do
|
|
24
|
-
let(:cmd) { 'false' }
|
|
25
|
-
it { expect(last_command_started).not_to have_exit_status 0 }
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
describe '#to_be_successfully_executed_' do
|
|
30
|
-
let(:cmd) { 'true' }
|
|
31
|
-
|
|
32
|
-
before(:each) { run_command(cmd) }
|
|
33
|
-
|
|
34
|
-
context 'when has exit 0' do
|
|
35
|
-
it { expect(last_command_started).to be_successfully_executed }
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
context 'when has exit 0' do
|
|
39
|
-
let(:cmd) { 'false' }
|
|
40
|
-
it { expect(last_command_started).not_to be_successfully_executed }
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
describe '#to_have_output' do
|
|
45
|
-
let(:cmd) { "echo #{output}" }
|
|
46
|
-
let(:output) { 'hello world' }
|
|
47
|
-
|
|
48
|
-
context 'when have output hello world on stdout' do
|
|
49
|
-
before(:each) { run_command(cmd) }
|
|
50
|
-
it { expect(last_command_started).to have_output output }
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
context 'when multiple commands output hello world on stdout' do
|
|
54
|
-
context 'and all comands must have the output' do
|
|
55
|
-
before(:each) do
|
|
56
|
-
run_command(cmd)
|
|
57
|
-
run_command(cmd)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
it { expect(all_commands).to all have_output output }
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
context 'and any comand can have the output' do
|
|
64
|
-
before(:each) do
|
|
65
|
-
run_command(cmd)
|
|
66
|
-
run_command('echo hello universe')
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
it { expect(all_commands).to include have_output(output) }
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
context 'when have output hello world on stderr' do
|
|
74
|
-
before :each do
|
|
75
|
-
string = <<-EOS.strip_heredoc
|
|
76
|
-
#!/usr/bin/env bash
|
|
77
|
-
|
|
78
|
-
echo $* >&2
|
|
79
|
-
EOS
|
|
80
|
-
|
|
81
|
-
File.open(expand_path('cmd.sh'), 'w') { |f| f.puts string }
|
|
82
|
-
|
|
83
|
-
File.chmod 0o755, expand_path('cmd.sh')
|
|
84
|
-
prepend_environment_variable 'PATH', "#{expand_path('.')}#{File::PATH_SEPARATOR}"
|
|
85
|
-
end
|
|
86
|
-
|
|
87
|
-
let(:cmd) { "cmd.sh #{output}" }
|
|
88
|
-
|
|
89
|
-
before(:each) { run_command(cmd) }
|
|
90
|
-
|
|
91
|
-
it { expect(last_command_started).to have_output output }
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
context 'when not has output' do
|
|
95
|
-
before(:each) { run_command(cmd) }
|
|
96
|
-
|
|
97
|
-
it { expect(last_command_started).not_to have_output 'hello universe' }
|
|
98
|
-
end
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
describe '#to_have_output_on_stdout' do
|
|
102
|
-
let(:cmd) { "echo #{output}" }
|
|
103
|
-
let(:output) { 'hello world' }
|
|
104
|
-
|
|
105
|
-
context 'when have output hello world on stdout' do
|
|
106
|
-
before(:each) { run_command(cmd) }
|
|
107
|
-
it { expect(last_command_started).to have_output_on_stdout output }
|
|
108
|
-
end
|
|
109
|
-
|
|
110
|
-
context 'when have output hello world on stderr' do
|
|
111
|
-
before :each do
|
|
112
|
-
string = <<-EOS.strip_heredoc
|
|
113
|
-
#!/usr/bin/env bash
|
|
114
|
-
|
|
115
|
-
echo $* >&2
|
|
116
|
-
EOS
|
|
117
|
-
|
|
118
|
-
File.open(expand_path('cmd.sh'), 'w') { |f| f.puts string }
|
|
119
|
-
|
|
120
|
-
File.chmod 0o755, expand_path('cmd.sh')
|
|
121
|
-
prepend_environment_variable 'PATH', "#{expand_path('.')}#{File::PATH_SEPARATOR}"
|
|
122
|
-
end
|
|
123
|
-
|
|
124
|
-
let(:cmd) { "cmd.sh #{output}" }
|
|
125
|
-
|
|
126
|
-
before(:each) { run_command(cmd) }
|
|
127
|
-
|
|
128
|
-
it { expect(last_command_started).not_to have_output_on_stdout output }
|
|
129
|
-
end
|
|
130
|
-
|
|
131
|
-
context 'when not has output' do
|
|
132
|
-
before(:each) { run_command(cmd) }
|
|
133
|
-
|
|
134
|
-
it { expect(last_command_started).not_to have_output_on_stdout 'hello universe' }
|
|
135
|
-
end
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
describe '#to_have_output_on_stderr' do
|
|
139
|
-
let(:cmd) { "echo #{output}" }
|
|
140
|
-
let(:output) { 'hello world' }
|
|
141
|
-
|
|
142
|
-
context 'when have output hello world on stdout' do
|
|
143
|
-
before(:each) { run_command(cmd) }
|
|
144
|
-
it { expect(last_command_started).not_to have_output_on_stderr output }
|
|
145
|
-
end
|
|
146
|
-
|
|
147
|
-
context 'when have output hello world on stderr' do
|
|
148
|
-
before :each do
|
|
149
|
-
string = <<-EOS.strip_heredoc
|
|
150
|
-
#!/usr/bin/env bash
|
|
151
|
-
|
|
152
|
-
echo $* >&2
|
|
153
|
-
EOS
|
|
154
|
-
|
|
155
|
-
File.open(expand_path('cmd.sh'), 'w') { |f| f.puts string }
|
|
156
|
-
|
|
157
|
-
File.chmod 0o755, expand_path('cmd.sh')
|
|
158
|
-
prepend_environment_variable 'PATH', "#{expand_path('.')}#{File::PATH_SEPARATOR}"
|
|
159
|
-
end
|
|
160
|
-
|
|
161
|
-
let(:cmd) { "cmd.sh #{output}" }
|
|
162
|
-
|
|
163
|
-
before(:each) { run_command(cmd) }
|
|
164
|
-
|
|
165
|
-
it { expect(last_command_started).to have_output_on_stderr output }
|
|
166
|
-
end
|
|
167
|
-
|
|
168
|
-
context 'when not has output' do
|
|
169
|
-
before(:each) { run_command(cmd) }
|
|
170
|
-
|
|
171
|
-
it { expect(last_command_started).not_to have_output_on_stderr 'hello universe' }
|
|
172
|
-
end
|
|
173
|
-
end
|
|
174
|
-
end
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
RSpec.describe 'Deprecated matchers' do
|
|
4
|
-
include_context 'uses aruba API'
|
|
5
|
-
|
|
6
|
-
before do
|
|
7
|
-
allow(Aruba.platform).to receive(:deprecated)
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
describe 'to_match_path_pattern' do
|
|
11
|
-
context 'when pattern is string' do
|
|
12
|
-
context 'when there is file which matches path pattern' do
|
|
13
|
-
before :each do
|
|
14
|
-
Aruba.platform.write_file(@file_path, '')
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
it { expect(all_paths).to match_path_pattern(expand_path(@file_name)) }
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
context 'when there is not file which matches path pattern' do
|
|
21
|
-
it { expect(all_paths).not_to match_path_pattern('test') }
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
context 'when pattern is regex' do
|
|
26
|
-
context 'when there is file which matches path pattern' do
|
|
27
|
-
before :each do
|
|
28
|
-
Aruba.platform.write_file(@file_path, '')
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
it { expect(all_paths).to match_path_pattern(/test/) }
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
context 'when there is not file which matches path pattern' do
|
|
35
|
-
it { expect(all_paths).not_to match_path_pattern(/test/) }
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
describe "to have_same_file_content_like" do
|
|
41
|
-
let(:file_name) { @file_name }
|
|
42
|
-
let(:file_path) { @file_path }
|
|
43
|
-
|
|
44
|
-
let(:reference_file) { 'fixture' }
|
|
45
|
-
|
|
46
|
-
before :each do
|
|
47
|
-
@aruba.write_file(@file_name, "foo bar baz")
|
|
48
|
-
@aruba.write_file(reference_file, reference_file_content)
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
context 'when files are the same' do
|
|
52
|
-
let(:reference_file_content) { 'foo bar baz' }
|
|
53
|
-
|
|
54
|
-
context 'and this is expected' do
|
|
55
|
-
it { expect(file_name).to have_same_file_content_like reference_file }
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
context 'and this is not expected' do
|
|
59
|
-
it do
|
|
60
|
-
expect { expect(file_name).not_to have_same_file_content_like reference_file }.to raise_error RSpec::Expectations::ExpectationNotMetError
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
context 'when files are not the same' do
|
|
66
|
-
let(:reference_file_content) { 'bar' }
|
|
67
|
-
|
|
68
|
-
context 'and this is expected' do
|
|
69
|
-
it { expect(file_name).not_to have_same_file_content_like reference_file }
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
context 'and this is not expected' do
|
|
73
|
-
it do
|
|
74
|
-
expect { expect(file_name).to have_same_file_content_like reference_file }.to raise_error RSpec::Expectations::ExpectationNotMetError
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
end
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
describe "include a_file_with_same_content_like" do
|
|
81
|
-
let(:reference_file) { 'fixture' }
|
|
82
|
-
let(:reference_file_content) { 'foo bar baz' }
|
|
83
|
-
let(:file_with_same_content) { 'file_a.txt' }
|
|
84
|
-
let(:file_with_different_content) { 'file_b.txt' }
|
|
85
|
-
|
|
86
|
-
before :each do
|
|
87
|
-
@aruba.write_file(file_with_same_content, reference_file_content)
|
|
88
|
-
@aruba.write_file(reference_file, reference_file_content)
|
|
89
|
-
@aruba.write_file(file_with_different_content, 'Some different content here...')
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
context 'when the array of files includes a file with the same content' do
|
|
93
|
-
let(:files) { [file_with_different_content, file_with_same_content] }
|
|
94
|
-
|
|
95
|
-
context 'and this is expected' do
|
|
96
|
-
it { expect(files).to include a_file_with_same_content_like reference_file }
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
context 'and this is not expected' do
|
|
100
|
-
it do
|
|
101
|
-
expect { expect(files).not_to include a_file_with_same_content_like reference_file }.to raise_error RSpec::Expectations::ExpectationNotMetError
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
context 'when the array of files does not include a file with the same content' do
|
|
107
|
-
let(:files) { [file_with_different_content] }
|
|
108
|
-
|
|
109
|
-
context 'and this is expected' do
|
|
110
|
-
it { expect(files).not_to include a_file_with_same_content_like reference_file }
|
|
111
|
-
end
|
|
112
|
-
|
|
113
|
-
context 'and this is not expected' do
|
|
114
|
-
it do
|
|
115
|
-
expect { expect(files).to include a_file_with_same_content_like reference_file }.to raise_error RSpec::Expectations::ExpectationNotMetError
|
|
116
|
-
end
|
|
117
|
-
end
|
|
118
|
-
end
|
|
119
|
-
end
|
|
120
|
-
end
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
require 'aruba/matchers/directory'
|
|
3
|
-
require 'fileutils'
|
|
4
|
-
|
|
5
|
-
RSpec.describe 'Directory Matchers' do
|
|
6
|
-
include_context 'uses aruba API'
|
|
7
|
-
include_context 'needs to expand paths'
|
|
8
|
-
|
|
9
|
-
describe 'to_be_an_existing_directory' do
|
|
10
|
-
let(:name) { 'test.d' }
|
|
11
|
-
let(:path) { @aruba.expand_path(name) }
|
|
12
|
-
|
|
13
|
-
context 'when directory exists' do
|
|
14
|
-
before :each do
|
|
15
|
-
FileUtils.mkdir_p path
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
it { expect(name).to be_an_existing_directory }
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
context 'when directory does not exist' do
|
|
22
|
-
it { expect(name).not_to be_an_existing_directory }
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
describe 'to_have_sub_directory' do
|
|
27
|
-
let(:name) { 'test.d' }
|
|
28
|
-
let(:path) { @aruba.expand_path(name) }
|
|
29
|
-
let(:content) { %w(subdir.1.d subdir.2.d) }
|
|
30
|
-
|
|
31
|
-
context 'when directory exists' do
|
|
32
|
-
before :each do
|
|
33
|
-
FileUtils.mkdir_p path
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
before :each do
|
|
37
|
-
Array(content).each { |p| Dir.mkdir File.join(path, p) }
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
context 'when single directory' do
|
|
41
|
-
it { expect(name).to have_sub_directory('subdir.1.d') }
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
context 'when multiple directories' do
|
|
45
|
-
it { expect(name).to have_sub_directory(['subdir.1.d', 'subdir.2.d']) }
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
context 'when non existing directory' do
|
|
49
|
-
it { expect(name).not_to have_sub_directory('subdir.3.d') }
|
|
50
|
-
end
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
context 'when directory does not exist' do
|
|
54
|
-
it { expect(name).not_to have_sub_directory('subdir') }
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
end
|