aruba-win-fix 0.14.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 +7 -0
- data/.document +5 -0
- data/.gitignore +37 -0
- data/.rspec +3 -0
- data/.rubocop.yml +188 -0
- data/.simplecov +34 -0
- data/.travis.yml +47 -0
- data/.yardopts +8 -0
- data/CONTRIBUTING.md +71 -0
- data/Gemfile +83 -0
- data/History.md +579 -0
- data/LICENSE +20 -0
- data/README.md +226 -0
- data/Rakefile +49 -0
- data/TODO.md +13 -0
- data/appveyor.yml +32 -0
- data/aruba.gemspec +48 -0
- data/bin/aruba +7 -0
- data/config/.gitignore +1 -0
- data/cucumber.yml +26 -0
- data/features/.nav +72 -0
- data/features/api/command/find_command.feature +83 -0
- data/features/api/command/last_command_started.feature +50 -0
- data/features/api/command/last_command_stopped.feature +89 -0
- data/features/api/command/run.feature +414 -0
- data/features/api/command/run_simple.feature +242 -0
- data/features/api/command/send_signal.feature +53 -0
- data/features/api/command/stderr.feature +46 -0
- data/features/api/command/stdout.feature +46 -0
- data/features/api/command/stop.feature +131 -0
- data/features/api/command/stop_all_commands.feature +53 -0
- data/features/api/command/terminate_all_commands.feature +53 -0
- data/features/api/command/which.feature +37 -0
- data/features/api/core/expand_path.feature +88 -0
- data/features/api/environment/append_environment_variable.feature +128 -0
- data/features/api/environment/delete_environment_variable.feature +63 -0
- data/features/api/environment/prepend_environment_variable.feature +128 -0
- data/features/api/environment/set_environment_variable.feature +376 -0
- data/features/api/filesystem/cd.feature +184 -0
- data/features/api/filesystem/create_directory.feature +57 -0
- data/features/api/filesystem/disk_usage.feature +152 -0
- data/features/api/filesystem/does_exist.feature +62 -0
- data/features/api/filesystem/fixtures.feature +104 -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/api/filesystem/move.feature +119 -0
- data/features/api/text/extract_text.feature +87 -0
- data/features/api/text/replace_variables.feature +45 -0
- data/features/api/text/sanitize_text.feature +228 -0
- data/features/api/text/unescape_text.feature +127 -0
- data/features/cli/console.feature +52 -0
- data/features/cli/init.feature +79 -0
- data/features/configuration/activate_announcer_on_command_failure.feature +38 -0
- data/features/configuration/command_runtime_environment.feature +129 -0
- data/features/configuration/console_history_file.feature +38 -0
- data/features/configuration/exit_timeout.feature +52 -0
- data/features/configuration/fixtures_directories.feature +38 -0
- data/features/configuration/fixtures_path_prefix.feature +23 -0
- data/features/configuration/home_directory.feature +80 -0
- data/features/configuration/io_timeout.feature +30 -0
- data/features/configuration/keep_ansi.feature +30 -0
- 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 +30 -0
- data/features/configuration/startup_wait_time.feature +48 -0
- data/features/configuration/usage.feature +159 -0
- data/features/configuration/working_directory.feature +33 -0
- data/features/development/build.feature +15 -0
- data/features/development/test.feature +24 -0
- data/features/getting_started/cleanup.feature +67 -0
- data/features/getting_started/install.feature +8 -0
- data/features/getting_started/run_commands.feature +177 -0
- data/features/getting_started/supported_testing_frameworks.feature +104 -0
- data/features/getting_started/writing_good_feature_tests.feature +38 -0
- data/features/hooks/after/command.feature +44 -0
- data/features/hooks/before/command.feature +71 -0
- data/features/matchers/collection/include_an_object.feature +72 -0
- data/features/matchers/directory/have_sub_directory.feature +110 -0
- data/features/matchers/file/be_a_command_found_in_path.feature +115 -0
- data/features/matchers/file/be_existing_executable.feature +88 -0
- data/features/matchers/file/be_existing_file.feature +82 -0
- data/features/matchers/file/have_file_content.feature +123 -0
- data/features/matchers/file/have_file_size.feature +107 -0
- data/features/matchers/path/be_an_absolute_path.feature +74 -0
- data/features/matchers/path/be_an_existing_path.feature +97 -0
- data/features/matchers/path/have_permissions.feature +118 -0
- data/features/matchers/timeouts.feature +48 -0
- data/features/platforms/jruby.feature +14 -0
- data/features/rspec/integration.feature +179 -0
- data/features/step_definitions/aruba_dev_steps.rb +56 -0
- data/features/step_definitions/hooks.rb +96 -0
- data/features/steps/command/debug.feature +92 -0
- data/features/steps/command/exit_statuses.feature +136 -0
- data/features/steps/command/in_process.feature +485 -0
- data/features/steps/command/interactive.feature +90 -0
- data/features/steps/command/output.feature +588 -0
- data/features/steps/command/run.feature +66 -0
- data/features/steps/command/send_signal.feature +104 -0
- data/features/steps/command/shell.feature +155 -0
- data/features/steps/command/stderr.feature +68 -0
- data/features/steps/command/stdout.feature +109 -0
- data/features/steps/command/stop.feature +313 -0
- data/features/steps/core/announce.feature +283 -0
- data/features/steps/environment/append_environment_variable.feature +52 -0
- data/features/steps/environment/home_variable.feature +62 -0
- data/features/steps/environment/prepend_environment_variable.feature +52 -0
- data/features/steps/environment/set_environment_variable.feature +49 -0
- data/features/steps/filesystem/append_to_file.feature +45 -0
- data/features/steps/filesystem/cd_to_directory.feature +33 -0
- data/features/steps/filesystem/check_file_content.feature +61 -0
- data/features/steps/filesystem/check_permissions_of_file.feature +39 -0
- data/features/steps/filesystem/compare_files.feature +42 -0
- data/features/steps/filesystem/copy.feature +45 -0
- data/features/steps/filesystem/create_directory.feature +57 -0
- data/features/steps/filesystem/create_file.feature +76 -0
- data/features/steps/filesystem/existence_of_directory.feature +57 -0
- data/features/steps/filesystem/existence_of_file.feature +43 -0
- data/features/steps/filesystem/file_content.feature +86 -0
- data/features/steps/filesystem/fixtures.feature +64 -0
- data/features/steps/filesystem/move.feature +45 -0
- data/features/steps/filesystem/non_existence_of_directory.feature +69 -0
- data/features/steps/filesystem/non_existence_of_file.feature +80 -0
- data/features/steps/filesystem/overwrite_file.feature +72 -0
- data/features/steps/filesystem/remove_directory.feature +38 -0
- data/features/steps/filesystem/remove_file.feature +38 -0
- data/features/steps/filesystem/use_fixture.feature +77 -0
- data/features/steps/overview.feature +60 -0
- data/features/support/aruba.rb +7 -0
- data/features/support/env.rb +33 -0
- data/features/support/jruby.rb +5 -0
- data/features/support/simplecov_setup.rb +8 -0
- data/fixtures/cli-app/.gitignore +9 -0
- data/fixtures/cli-app/.rspec +2 -0
- data/fixtures/cli-app/README.md +39 -0
- data/fixtures/cli-app/Rakefile +1 -0
- data/fixtures/cli-app/bin/cli +6 -0
- data/fixtures/cli-app/cli-app.gemspec +26 -0
- data/fixtures/cli-app/features/support/env.rb +1 -0
- data/fixtures/cli-app/lib/cli/app.rb +13 -0
- data/fixtures/cli-app/lib/cli/app/suppress_simple_cov_output.rb +15 -0
- data/fixtures/cli-app/lib/cli/app/version.rb +5 -0
- data/fixtures/cli-app/script/console +14 -0
- data/fixtures/cli-app/spec/spec_helper.rb +9 -0
- data/fixtures/cli-app/spec/support/aruba.rb +1 -0
- data/fixtures/copy/file.txt +1 -0
- data/fixtures/empty-app/.gitignore +9 -0
- data/fixtures/empty-app/.rspec +2 -0
- data/fixtures/empty-app/README.md +24 -0
- data/fixtures/empty-app/Rakefile +1 -0
- data/fixtures/empty-app/cli-app.gemspec +26 -0
- data/fixtures/empty-app/lib/cli/app.rb +13 -0
- data/fixtures/empty-app/lib/cli/app/version.rb +5 -0
- data/fixtures/getting-started-app/.gitignore +4 -0
- data/fixtures/getting-started-app/Gemfile +4 -0
- data/fixtures/getting-started-app/README.md +3 -0
- data/fixtures/getting-started-app/features/support/env.rb +1 -0
- data/fixtures/spawn_process/stderr.sh +3 -0
- data/lib/aruba.rb +1 -0
- data/lib/aruba/api.rb +34 -0
- data/lib/aruba/api/command.rb +307 -0
- data/lib/aruba/api/core.rb +191 -0
- data/lib/aruba/api/deprecated.rb +897 -0
- data/lib/aruba/api/environment.rb +89 -0
- data/lib/aruba/api/filesystem.rb +392 -0
- data/lib/aruba/api/rvm.rb +44 -0
- data/lib/aruba/api/text.rb +56 -0
- data/lib/aruba/aruba_path.rb +133 -0
- data/lib/aruba/basic_configuration.rb +240 -0
- data/lib/aruba/basic_configuration/option.rb +32 -0
- data/lib/aruba/cli.rb +26 -0
- data/lib/aruba/colorizer.rb +108 -0
- data/lib/aruba/command.rb +74 -0
- data/lib/aruba/config.rb +108 -0
- data/lib/aruba/config/jruby.rb +17 -0
- data/lib/aruba/config_wrapper.rb +58 -0
- data/lib/aruba/console.rb +70 -0
- data/lib/aruba/console/help.rb +35 -0
- data/lib/aruba/contracts/absolute_path.rb +20 -0
- data/lib/aruba/contracts/enum.rb +26 -0
- data/lib/aruba/contracts/is_power_of_two.rb +22 -0
- data/lib/aruba/contracts/relative_path.rb +20 -0
- data/lib/aruba/cucumber.rb +13 -0
- data/lib/aruba/cucumber/command.rb +422 -0
- data/lib/aruba/cucumber/core.rb +5 -0
- data/lib/aruba/cucumber/environment.rb +42 -0
- data/lib/aruba/cucumber/file.rb +201 -0
- data/lib/aruba/cucumber/hooks.rb +160 -0
- data/lib/aruba/cucumber/rvm.rb +3 -0
- data/lib/aruba/cucumber/testing_frameworks.rb +95 -0
- data/lib/aruba/errors.rb +37 -0
- data/lib/aruba/event_bus.rb +59 -0
- data/lib/aruba/event_bus/name_resolver.rb +168 -0
- data/lib/aruba/events.rb +39 -0
- data/lib/aruba/extensions/string/strip.rb +25 -0
- data/lib/aruba/file_size.rb +63 -0
- data/lib/aruba/generators/script_file.rb +46 -0
- data/lib/aruba/hooks.rb +56 -0
- data/lib/aruba/in_config_wrapper.rb +24 -0
- data/lib/aruba/in_process.rb +14 -0
- data/lib/aruba/initializer.rb +222 -0
- data/lib/aruba/jruby.rb +4 -0
- data/lib/aruba/matchers/base/base_matcher.rb +96 -0
- data/lib/aruba/matchers/base/object_formatter.rb +114 -0
- data/lib/aruba/matchers/collection.rb +1 -0
- data/lib/aruba/matchers/collection/all.rb +11 -0
- data/lib/aruba/matchers/collection/include_an_object.rb +122 -0
- data/lib/aruba/matchers/command.rb +1 -0
- data/lib/aruba/matchers/command/be_successfully_executed.rb +34 -0
- data/lib/aruba/matchers/command/have_exit_status.rb +38 -0
- data/lib/aruba/matchers/command/have_finished_in_time.rb +37 -0
- data/lib/aruba/matchers/command/have_output.rb +36 -0
- data/lib/aruba/matchers/command/have_output_on_stderr.rb +32 -0
- data/lib/aruba/matchers/command/have_output_on_stdout.rb +32 -0
- data/lib/aruba/matchers/command/have_output_size.rb +28 -0
- data/lib/aruba/matchers/directory.rb +1 -0
- data/lib/aruba/matchers/directory/be_an_existing_directory.rb +38 -0
- data/lib/aruba/matchers/directory/have_sub_directory.rb +53 -0
- data/lib/aruba/matchers/environment.rb +1 -0
- data/lib/aruba/matchers/file.rb +1 -0
- data/lib/aruba/matchers/file/be_a_command_found_in_path.rb +36 -0
- data/lib/aruba/matchers/file/be_an_existing_executable.rb +37 -0
- data/lib/aruba/matchers/file/be_an_existing_file.rb +38 -0
- data/lib/aruba/matchers/file/have_file_content.rb +62 -0
- data/lib/aruba/matchers/file/have_file_size.rb +47 -0
- data/lib/aruba/matchers/file/have_same_file_content.rb +48 -0
- data/lib/aruba/matchers/path.rb +1 -0
- data/lib/aruba/matchers/path/a_path_matching_pattern.rb +25 -0
- data/lib/aruba/matchers/path/be_an_absolute_path.rb +36 -0
- data/lib/aruba/matchers/path/be_an_existing_path.rb +37 -0
- data/lib/aruba/matchers/path/have_permissions.rb +64 -0
- data/lib/aruba/matchers/path/match_path_pattern.rb +41 -0
- data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +25 -0
- data/lib/aruba/matchers/string.rb +1 -0
- data/lib/aruba/matchers/string/include_output_string.rb +36 -0
- data/lib/aruba/matchers/string/match_output_string.rb +37 -0
- data/lib/aruba/matchers/string/output_string_eq.rb +35 -0
- data/lib/aruba/platform.rb +25 -0
- data/lib/aruba/platforms/announcer.rb +232 -0
- data/lib/aruba/platforms/aruba_file_creator.rb +35 -0
- data/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +35 -0
- data/lib/aruba/platforms/aruba_logger.rb +81 -0
- data/lib/aruba/platforms/command_monitor.rb +229 -0
- data/lib/aruba/platforms/determine_disk_usage.rb +28 -0
- data/lib/aruba/platforms/determine_file_size.rb +22 -0
- data/lib/aruba/platforms/disk_usage_calculator.rb +20 -0
- data/lib/aruba/platforms/filesystem_status.rb +68 -0
- data/lib/aruba/platforms/local_environment.rb +29 -0
- data/lib/aruba/platforms/simple_table.rb +54 -0
- data/lib/aruba/platforms/unix_command_string.rb +27 -0
- data/lib/aruba/platforms/unix_environment_variables.rb +220 -0
- data/lib/aruba/platforms/unix_platform.rb +276 -0
- data/lib/aruba/platforms/unix_which.rb +85 -0
- data/lib/aruba/platforms/windows_command_string.rb +31 -0
- data/lib/aruba/platforms/windows_environment_variables.rb +89 -0
- data/lib/aruba/platforms/windows_platform.rb +42 -0
- data/lib/aruba/platforms/windows_which.rb +106 -0
- data/lib/aruba/processes/basic_process.rb +143 -0
- data/lib/aruba/processes/debug_process.rb +69 -0
- data/lib/aruba/processes/in_process.rb +125 -0
- data/lib/aruba/processes/spawn_process.rb +278 -0
- data/lib/aruba/reporting.rb +126 -0
- data/lib/aruba/rspec.rb +107 -0
- data/lib/aruba/runtime.rb +96 -0
- data/lib/aruba/setup.rb +90 -0
- data/lib/aruba/spawn_process.rb +11 -0
- data/lib/aruba/version.rb +3 -0
- data/script/bootstrap +28 -0
- data/script/console +16 -0
- data/script/test +3 -0
- data/spec/aruba/api/environment/restore_env_spec.rb +65 -0
- data/spec/aruba/api/environment/set_env_spec.rb +42 -0
- data/spec/aruba/api/filesystem/file_size_spec.rb +28 -0
- data/spec/aruba/api/runtime_spec.rb +28 -0
- data/spec/aruba/api_spec.rb +1209 -0
- data/spec/aruba/aruba_path_spec.rb +103 -0
- data/spec/aruba/basic_configuration_spec.rb +5 -0
- data/spec/aruba/configuration_spec.rb +5 -0
- data/spec/aruba/hooks_spec.rb +17 -0
- data/spec/aruba/in_config_wrapper_spec.rb +25 -0
- data/spec/aruba/jruby_spec.rb +55 -0
- data/spec/aruba/matchers/command/have_output_size_spec.rb +25 -0
- data/spec/aruba/matchers/command_spec.rb +174 -0
- data/spec/aruba/matchers/directory_spec.rb +57 -0
- data/spec/aruba/matchers/file_spec.rb +127 -0
- data/spec/aruba/matchers/path_spec.rb +88 -0
- data/spec/aruba/platform/simple_table_spec.rb +23 -0
- data/spec/aruba/platform/windows_environment_variables_spec.rb +500 -0
- data/spec/aruba/rspec_spec.rb +15 -0
- data/spec/aruba/runtime_spec.rb +29 -0
- data/spec/aruba/spawn_process_spec.rb +60 -0
- data/spec/event_bus/name_resolver_spec.rb +68 -0
- data/spec/event_bus_spec.rb +160 -0
- data/spec/spec_helper.rb +23 -0
- data/spec/support/configs/.keep +0 -0
- data/spec/support/configs/aruba.rb +5 -0
- data/spec/support/configs/pry.rb +3 -0
- data/spec/support/configs/rspec.rb +15 -0
- data/spec/support/helpers/.keep +0 -0
- data/spec/support/helpers/reporting.rb +44 -0
- data/spec/support/matchers/.keep +0 -0
- data/spec/support/matchers/option.rb +35 -0
- data/spec/support/shared_contexts/.keep +0 -0
- data/spec/support/shared_contexts/aruba.rb +48 -0
- data/spec/support/shared_examples/.keep +0 -0
- data/spec/support/shared_examples/configuration.rb +116 -0
- data/spec/support/shared_examples/directory.rb +7 -0
- data/spec/support/shared_examples/file.rb +7 -0
- data/templates/css/console.css +24 -0
- data/templates/css/filesystem.css +42 -0
- data/templates/css/pygments-autumn.css +59 -0
- data/templates/files.erb +14 -0
- data/templates/images/LICENSE +22 -0
- 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 +20 -0
- data/templates/js/filesystem.js +5 -0
- data/templates/js/jquery-1.11.3.min.js +5 -0
- data/templates/main.erb +34 -0
- metadata +629 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
Feature: Unescape special characters in text
|
|
2
|
+
|
|
3
|
+
If have got some text include \n, \t and the like and need them to become
|
|
4
|
+
special characters again, you can use the `#unescape_text`-method for this.
|
|
5
|
+
|
|
6
|
+
Background:
|
|
7
|
+
Given I use a fixture named "cli-app"
|
|
8
|
+
|
|
9
|
+
Scenario: Output contains \n
|
|
10
|
+
Given an executable named "bin/cli" with:
|
|
11
|
+
"""
|
|
12
|
+
#!/bin/bash
|
|
13
|
+
echo -n 'text\ntext'
|
|
14
|
+
"""
|
|
15
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
16
|
+
"""
|
|
17
|
+
require 'spec_helper'
|
|
18
|
+
|
|
19
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
20
|
+
before(:each) { run('cli') }
|
|
21
|
+
before(:each) { stop_all_commands }
|
|
22
|
+
|
|
23
|
+
it { expect(unescape_text(last_command.output)).to eq "text\ntext" }
|
|
24
|
+
end
|
|
25
|
+
"""
|
|
26
|
+
When I run `rspec`
|
|
27
|
+
Then the specs should all pass
|
|
28
|
+
|
|
29
|
+
Scenario: Output contains \e
|
|
30
|
+
Given an executable named "bin/cli" with:
|
|
31
|
+
"""
|
|
32
|
+
#!/bin/bash
|
|
33
|
+
echo -n 'text\etext'
|
|
34
|
+
"""
|
|
35
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
36
|
+
"""
|
|
37
|
+
require 'spec_helper'
|
|
38
|
+
|
|
39
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
40
|
+
before(:each) { run('cli') }
|
|
41
|
+
before(:each) { stop_all_commands }
|
|
42
|
+
|
|
43
|
+
it { expect(unescape_text(last_command.output)).to eq "texttext" }
|
|
44
|
+
end
|
|
45
|
+
"""
|
|
46
|
+
When I run `rspec`
|
|
47
|
+
Then the specs should all pass
|
|
48
|
+
|
|
49
|
+
Scenario: Output contains \"
|
|
50
|
+
Given an executable named "bin/cli" with:
|
|
51
|
+
"""
|
|
52
|
+
#!/bin/bash
|
|
53
|
+
echo -n 'text\"text'
|
|
54
|
+
"""
|
|
55
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
56
|
+
"""
|
|
57
|
+
require 'spec_helper'
|
|
58
|
+
|
|
59
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
60
|
+
before(:each) { run('cli') }
|
|
61
|
+
before(:each) { stop_all_commands }
|
|
62
|
+
|
|
63
|
+
it { expect(unescape_text(last_command.output)).to eq "text\"text" }
|
|
64
|
+
end
|
|
65
|
+
"""
|
|
66
|
+
When I run `rspec`
|
|
67
|
+
Then the specs should all pass
|
|
68
|
+
|
|
69
|
+
Scenario: Output contains \033
|
|
70
|
+
Given an executable named "bin/cli" with:
|
|
71
|
+
"""
|
|
72
|
+
#!/bin/bash
|
|
73
|
+
echo -n 'text\033text'
|
|
74
|
+
"""
|
|
75
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
76
|
+
"""
|
|
77
|
+
require 'spec_helper'
|
|
78
|
+
|
|
79
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
80
|
+
before(:each) { run('cli') }
|
|
81
|
+
before(:each) { stop_all_commands }
|
|
82
|
+
|
|
83
|
+
it { expect(unescape_text(last_command.output)).to eq "texttext" }
|
|
84
|
+
end
|
|
85
|
+
"""
|
|
86
|
+
When I run `rspec`
|
|
87
|
+
Then the specs should all pass
|
|
88
|
+
|
|
89
|
+
Scenario: Output contains \017
|
|
90
|
+
Given an executable named "bin/cli" with:
|
|
91
|
+
"""
|
|
92
|
+
#!/bin/bash
|
|
93
|
+
echo -n 'text\017text'
|
|
94
|
+
"""
|
|
95
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
96
|
+
"""
|
|
97
|
+
require 'spec_helper'
|
|
98
|
+
|
|
99
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
100
|
+
before(:each) { run('cli') }
|
|
101
|
+
before(:each) { stop_all_commands }
|
|
102
|
+
|
|
103
|
+
it { expect(unescape_text(last_command.output)).to eq "texttext" }
|
|
104
|
+
end
|
|
105
|
+
"""
|
|
106
|
+
When I run `rspec`
|
|
107
|
+
Then the specs should all pass
|
|
108
|
+
|
|
109
|
+
Scenario: Output contains \016
|
|
110
|
+
Given an executable named "bin/cli" with:
|
|
111
|
+
"""
|
|
112
|
+
#!/bin/bash
|
|
113
|
+
echo -n 'text\016text'
|
|
114
|
+
"""
|
|
115
|
+
And a file named "spec/unescape_text_spec.rb" with:
|
|
116
|
+
"""
|
|
117
|
+
require 'spec_helper'
|
|
118
|
+
|
|
119
|
+
RSpec.describe 'Run command', :type => :aruba do
|
|
120
|
+
before(:each) { run('cli') }
|
|
121
|
+
before(:each) { stop_all_commands }
|
|
122
|
+
|
|
123
|
+
it { expect(unescape_text(last_command.output)).to eq "texttext" }
|
|
124
|
+
end
|
|
125
|
+
"""
|
|
126
|
+
When I run `rspec`
|
|
127
|
+
Then the specs should all pass
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
Feature: Aruba Console
|
|
2
|
+
|
|
3
|
+
Background:
|
|
4
|
+
Given a mocked home directory
|
|
5
|
+
|
|
6
|
+
Scenario: Start console
|
|
7
|
+
Given I run `aruba console` interactively
|
|
8
|
+
When I close the stdin stream
|
|
9
|
+
Then the output should contain:
|
|
10
|
+
"""
|
|
11
|
+
aruba:001:0>
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
@unsupported-on-platform-java
|
|
15
|
+
Scenario: Show help
|
|
16
|
+
Given I run `aruba console` interactively
|
|
17
|
+
And I type "aruba_help"
|
|
18
|
+
When I close the stdin stream
|
|
19
|
+
Then the output should contain:
|
|
20
|
+
"""
|
|
21
|
+
Version:
|
|
22
|
+
"""
|
|
23
|
+
And the output should contain:
|
|
24
|
+
"""
|
|
25
|
+
Issue Tracker:
|
|
26
|
+
"""
|
|
27
|
+
And the output should contain:
|
|
28
|
+
"""
|
|
29
|
+
Documentation:
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
@unsupported-on-platform-java
|
|
33
|
+
Scenario: Show methods
|
|
34
|
+
Given I run `aruba console` interactively
|
|
35
|
+
And I type "aruba_methods"
|
|
36
|
+
When I close the stdin stream
|
|
37
|
+
Then the output should contain:
|
|
38
|
+
"""
|
|
39
|
+
Methods:
|
|
40
|
+
"""
|
|
41
|
+
And the output should contain:
|
|
42
|
+
"""
|
|
43
|
+
* setup_aruba
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
@unsupported-on-platform-java
|
|
47
|
+
Scenario: Has history
|
|
48
|
+
Given I run `aruba console` interactively
|
|
49
|
+
And I type "aruba_methods"
|
|
50
|
+
And I type "exit"
|
|
51
|
+
When I close the stdin stream
|
|
52
|
+
Then the file "~/.aruba_history" should exist
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
Feature: Initialize project with aruba
|
|
2
|
+
|
|
3
|
+
To add `aruba` to your project you can use the `aruba init`-command.
|
|
4
|
+
|
|
5
|
+
Background:
|
|
6
|
+
Given I use the fixture "empty-app"
|
|
7
|
+
|
|
8
|
+
Scenario: Create files for RSpec
|
|
9
|
+
When I successfully run `aruba init --test-framework rspec`
|
|
10
|
+
Then the following files should exist:
|
|
11
|
+
| spec/spec_helper.rb |
|
|
12
|
+
And the file "spec/support/aruba.rb" should contain:
|
|
13
|
+
"""
|
|
14
|
+
require 'aruba/rspec'
|
|
15
|
+
"""
|
|
16
|
+
And the file "Gemfile" should contain:
|
|
17
|
+
"""
|
|
18
|
+
gem 'aruba'
|
|
19
|
+
"""
|
|
20
|
+
When I successfully run `rspec`
|
|
21
|
+
Then the output should contain:
|
|
22
|
+
"""
|
|
23
|
+
0 examples, 0 failures
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
Scenario: Create files for Cucumber
|
|
27
|
+
When I successfully run `aruba init --test-framework cucumber`
|
|
28
|
+
Then the file "features/support/aruba.rb" should contain:
|
|
29
|
+
"""
|
|
30
|
+
require 'aruba/cucumber'
|
|
31
|
+
"""
|
|
32
|
+
And the file "Gemfile" should contain:
|
|
33
|
+
"""
|
|
34
|
+
gem 'aruba'
|
|
35
|
+
"""
|
|
36
|
+
When I successfully run `cucumber`
|
|
37
|
+
Then the output should contain:
|
|
38
|
+
"""
|
|
39
|
+
0 scenarios
|
|
40
|
+
0 steps
|
|
41
|
+
"""
|
|
42
|
+
|
|
43
|
+
Scenario: Create files for Cucumber (Default)
|
|
44
|
+
When I successfully run `aruba init`
|
|
45
|
+
Then the file "features/support/aruba.rb" should contain:
|
|
46
|
+
"""
|
|
47
|
+
require 'aruba/cucumber'
|
|
48
|
+
"""
|
|
49
|
+
And the file "Gemfile" should contain:
|
|
50
|
+
"""
|
|
51
|
+
gem 'aruba'
|
|
52
|
+
"""
|
|
53
|
+
When I successfully run `cucumber`
|
|
54
|
+
Then the output should contain:
|
|
55
|
+
"""
|
|
56
|
+
0 scenarios
|
|
57
|
+
0 steps
|
|
58
|
+
"""
|
|
59
|
+
|
|
60
|
+
Scenario: Create files for Minitest
|
|
61
|
+
When I successfully run `aruba init --test-framework minitest`
|
|
62
|
+
Then the following files should exist:
|
|
63
|
+
| test/test_helper.rb |
|
|
64
|
+
And the file "Gemfile" should contain:
|
|
65
|
+
"""
|
|
66
|
+
gem 'aruba'
|
|
67
|
+
"""
|
|
68
|
+
When I successfully run `ruby -Ilib:test test/use_aruba_with_minitest.rb`
|
|
69
|
+
Then the output should contain:
|
|
70
|
+
"""
|
|
71
|
+
0 runs, 0 assertions, 0 failures, 0 errors, 0 skips
|
|
72
|
+
"""
|
|
73
|
+
|
|
74
|
+
Scenario: Unknown Test Framework
|
|
75
|
+
When I run `aruba init --test-framework unknown`
|
|
76
|
+
Then the output should contain:
|
|
77
|
+
"""
|
|
78
|
+
got unknown
|
|
79
|
+
"""
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Feature: Configure announcer activation on command failure
|
|
2
|
+
|
|
3
|
+
As a developer
|
|
4
|
+
I want to configure which announcers should get activated on command failure
|
|
5
|
+
In order to understand what caused a command to fail
|
|
6
|
+
|
|
7
|
+
Background:
|
|
8
|
+
Given I use the fixture "cli-app"
|
|
9
|
+
|
|
10
|
+
Scenario: Default value
|
|
11
|
+
Given a file named "features/support/aruba.rb" with:
|
|
12
|
+
"""ruby
|
|
13
|
+
Aruba.configure do |config|
|
|
14
|
+
puts %(The default value is "#{config.activate_announcer_on_command_failure.inspect}")
|
|
15
|
+
end
|
|
16
|
+
"""
|
|
17
|
+
When I successfully run `cucumber`
|
|
18
|
+
Then the output should contain:
|
|
19
|
+
"""ruby
|
|
20
|
+
The default value is "[]"
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Modify value
|
|
24
|
+
Given a file named "features/support/aruba.rb" with:
|
|
25
|
+
"""ruby
|
|
26
|
+
Aruba.configure do |config|
|
|
27
|
+
config.activate_announcer_on_command_failure = [:foo, :bar]
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
Aruba.configure do |config|
|
|
31
|
+
puts %(The value is "#{config.activate_announcer_on_command_failure.inspect}")
|
|
32
|
+
end
|
|
33
|
+
"""
|
|
34
|
+
Then I successfully run `cucumber`
|
|
35
|
+
Then the output should contain:
|
|
36
|
+
"""
|
|
37
|
+
The value is "[:foo, :bar]"
|
|
38
|
+
"""
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
Feature: Define default process environment
|
|
2
|
+
Say you want to have a default set of environment variables, then use this
|
|
3
|
+
code.
|
|
4
|
+
|
|
5
|
+
~~~ruby
|
|
6
|
+
Aruba.configure do |config|
|
|
7
|
+
config.command_runtime_environment = { 'MY_VARIABLE' => 'x' }
|
|
8
|
+
end
|
|
9
|
+
~~~
|
|
10
|
+
|
|
11
|
+
This can be changed via `#set_environment_variable`,
|
|
12
|
+
`#append_environment_variable`, `#delete_environment_variable` or
|
|
13
|
+
`#prepend_environment_variable`.
|
|
14
|
+
|
|
15
|
+
Background:
|
|
16
|
+
Given I use the fixture "cli-app"
|
|
17
|
+
|
|
18
|
+
Scenario: Overwrite existing variable with new default value
|
|
19
|
+
Given a file named "spec/environment_spec.rb" with:
|
|
20
|
+
"""ruby
|
|
21
|
+
require 'spec_helper'
|
|
22
|
+
|
|
23
|
+
ENV['LONG_LONG_VARIABLE'] = 'y'
|
|
24
|
+
|
|
25
|
+
Aruba.configure do |config|
|
|
26
|
+
config.command_runtime_environment = { 'LONG_LONG_VARIABLE' => 'x' }
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
RSpec.describe 'Environment command', :type => :aruba do
|
|
30
|
+
before(:each) { run('env') }
|
|
31
|
+
before(:each) { stop_all_commands }
|
|
32
|
+
|
|
33
|
+
it { expect(last_command_started.output).to include 'LONG_LONG_VARIABLE=x' }
|
|
34
|
+
end
|
|
35
|
+
"""
|
|
36
|
+
When I run `rspec`
|
|
37
|
+
Then the specs should all pass
|
|
38
|
+
|
|
39
|
+
Scenario: Overwrite default value for variable
|
|
40
|
+
Given a file named "spec/environment_spec.rb" with:
|
|
41
|
+
"""ruby
|
|
42
|
+
require 'spec_helper'
|
|
43
|
+
|
|
44
|
+
ENV['LONG_LONG_VARIABLE'] = 'y'
|
|
45
|
+
|
|
46
|
+
Aruba.configure do |config|
|
|
47
|
+
config.command_runtime_environment = { 'LONG_LONG_VARIABLE' => 'x' }
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
RSpec.describe 'Environment command', :type => :aruba do
|
|
51
|
+
before(:each) { set_environment_variable 'LONG_LONG_VARIABLE', 'z' }
|
|
52
|
+
|
|
53
|
+
before(:each) { run('env') }
|
|
54
|
+
before(:each) { stop_all_commands }
|
|
55
|
+
|
|
56
|
+
it { expect(last_command_started.output).to include 'LONG_LONG_VARIABLE=z' }
|
|
57
|
+
end
|
|
58
|
+
"""
|
|
59
|
+
When I run `rspec`
|
|
60
|
+
Then the specs should all pass
|
|
61
|
+
|
|
62
|
+
Scenario: Append value to default value
|
|
63
|
+
Given a file named "spec/environment_spec.rb" with:
|
|
64
|
+
"""ruby
|
|
65
|
+
require 'spec_helper'
|
|
66
|
+
|
|
67
|
+
ENV['LONG_LONG_VARIABLE'] = 'y'
|
|
68
|
+
|
|
69
|
+
Aruba.configure do |config|
|
|
70
|
+
config.command_runtime_environment = { 'LONG_LONG_VARIABLE' => 'x' }
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
RSpec.describe 'Environment command', :type => :aruba do
|
|
74
|
+
before(:each) { append_environment_variable 'LONG_LONG_VARIABLE', 'z' }
|
|
75
|
+
|
|
76
|
+
before(:each) { run('env') }
|
|
77
|
+
before(:each) { stop_all_commands }
|
|
78
|
+
|
|
79
|
+
it { expect(last_command_started.output).to include 'LONG_LONG_VARIABLE=xz' }
|
|
80
|
+
end
|
|
81
|
+
"""
|
|
82
|
+
When I run `rspec`
|
|
83
|
+
Then the specs should all pass
|
|
84
|
+
|
|
85
|
+
Scenario: Prepend value
|
|
86
|
+
Given a file named "spec/environment_spec.rb" with:
|
|
87
|
+
"""ruby
|
|
88
|
+
require 'spec_helper'
|
|
89
|
+
|
|
90
|
+
ENV['LONG_LONG_VARIABLE'] = 'y'
|
|
91
|
+
|
|
92
|
+
Aruba.configure do |config|
|
|
93
|
+
config.command_runtime_environment = { 'LONG_LONG_VARIABLE' => 'x' }
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
RSpec.describe 'Environment command', :type => :aruba do
|
|
97
|
+
before(:each) { prepend_environment_variable 'LONG_LONG_VARIABLE', 'z' }
|
|
98
|
+
|
|
99
|
+
before(:each) { run('env') }
|
|
100
|
+
before(:each) { stop_all_commands }
|
|
101
|
+
|
|
102
|
+
it { expect(last_command_started.output).to include 'LONG_LONG_VARIABLE=zx' }
|
|
103
|
+
end
|
|
104
|
+
"""
|
|
105
|
+
When I run `rspec`
|
|
106
|
+
Then the specs should all pass
|
|
107
|
+
|
|
108
|
+
Scenario: Remove variable from default set of variables
|
|
109
|
+
Given a file named "spec/environment_spec.rb" with:
|
|
110
|
+
"""ruby
|
|
111
|
+
require 'spec_helper'
|
|
112
|
+
|
|
113
|
+
ENV['LONG_LONG_VARIABLE'] = 'y'
|
|
114
|
+
|
|
115
|
+
Aruba.configure do |config|
|
|
116
|
+
config.command_runtime_environment = { 'LONG_LONG_VARIABLE' => 'x' }
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
RSpec.describe 'Environment command', :type => :aruba do
|
|
120
|
+
before(:each) { delete_environment_variable 'LONG_LONG_VARIABLE' }
|
|
121
|
+
|
|
122
|
+
before(:each) { run('env') }
|
|
123
|
+
before(:each) { stop_all_commands }
|
|
124
|
+
|
|
125
|
+
it { expect(last_command_started.output).not_to include 'LONG_LONG_VARIABLE' }
|
|
126
|
+
end
|
|
127
|
+
"""
|
|
128
|
+
When I run `rspec`
|
|
129
|
+
Then the specs should all pass
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Feature: Configure the aruba console history file
|
|
2
|
+
|
|
3
|
+
As a developer
|
|
4
|
+
I want to configure the history file of aruba console
|
|
5
|
+
In order to have a better isolation of tests
|
|
6
|
+
|
|
7
|
+
Background:
|
|
8
|
+
Given I use the fixture "cli-app"
|
|
9
|
+
|
|
10
|
+
Scenario: Default value
|
|
11
|
+
Given a file named "features/support/aruba.rb" with:
|
|
12
|
+
"""
|
|
13
|
+
Aruba.configure do |config|
|
|
14
|
+
puts %(The default value is "#{config.console_history_file}")
|
|
15
|
+
end
|
|
16
|
+
"""
|
|
17
|
+
When I successfully run `cucumber`
|
|
18
|
+
Then the output should contain:
|
|
19
|
+
"""
|
|
20
|
+
The default value is "~/.aruba_history"
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Set some value
|
|
24
|
+
Given a file named "features/support/aruba.rb" with:
|
|
25
|
+
"""
|
|
26
|
+
Aruba.configure do |config|
|
|
27
|
+
config.console_history_file = '~/.config/aruba/history.txt'
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
Aruba.configure do |config|
|
|
31
|
+
puts %(The value is "#{config.console_history_file}")
|
|
32
|
+
end
|
|
33
|
+
"""
|
|
34
|
+
Then I successfully run `cucumber`
|
|
35
|
+
Then the output should contain:
|
|
36
|
+
"""
|
|
37
|
+
The value is "~/.config/aruba/history.txt"
|
|
38
|
+
"""
|