aruba 0.14.14 → 1.0.0.pre.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (246) hide show
  1. checksums.yaml +5 -5
  2. data/.cucumberproignore +3 -0
  3. data/.github/ISSUE_TEMPLATE.md +48 -0
  4. data/.github/PULL_REQUEST_TEMPLATE.md +39 -0
  5. data/.gitignore +1 -0
  6. data/.rspec +1 -0
  7. data/.rubocop.yml +1 -5
  8. data/.travis.yml +35 -27
  9. data/CONTRIBUTING.md +131 -29
  10. data/Dockerfile +67 -0
  11. data/Gemfile +33 -80
  12. data/History.md +602 -0
  13. data/README.md +24 -196
  14. data/Rakefile +87 -27
  15. data/appveyor.yml +0 -1
  16. data/aruba.gemspec +30 -40
  17. data/bin/bootstrap +34 -0
  18. data/bin/build +3 -0
  19. data/{script → bin}/console +0 -0
  20. data/bin/release +3 -0
  21. data/bin/test +9 -0
  22. data/cucumber.yml +1 -3
  23. data/docker-compose.yml +26 -0
  24. data/{bin → exec}/aruba +0 -0
  25. data/fixtures/cli-app/README.md +1 -1
  26. data/fixtures/cli-app/features/support/aruba.rb +1 -0
  27. data/fixtures/cli-app/features/support/env.rb +1 -1
  28. data/fixtures/cli-app/lib/cli/app.rb +1 -5
  29. data/fixtures/cli-app/spec/spec_helper.rb +1 -6
  30. data/fixtures/empty-app/lib/cli/app.rb +2 -0
  31. data/lib/aruba/api.rb +3 -3
  32. data/lib/aruba/api/{commands.rb → command.rb} +4 -30
  33. data/lib/aruba/api/core.rb +8 -25
  34. data/lib/aruba/api/deprecated.rb +150 -408
  35. data/lib/aruba/api/filesystem.rb +17 -2
  36. data/lib/aruba/api/rvm.rb +44 -0
  37. data/lib/aruba/aruba_path.rb +56 -32
  38. data/lib/aruba/basic_configuration.rb +3 -5
  39. data/lib/aruba/colorizer.rb +99 -10
  40. data/lib/aruba/command.rb +0 -2
  41. data/lib/aruba/config.rb +5 -5
  42. data/lib/aruba/config/jruby.rb +5 -15
  43. data/lib/aruba/console.rb +2 -0
  44. data/lib/aruba/console/help.rb +1 -7
  45. data/lib/aruba/cucumber.rb +0 -2
  46. data/lib/aruba/cucumber/command.rb +98 -72
  47. data/lib/aruba/cucumber/file.rb +15 -3
  48. data/lib/aruba/cucumber/hooks.rb +71 -10
  49. data/lib/aruba/event_bus/name_resolver.rb +2 -10
  50. data/lib/aruba/generators/script_file.rb +1 -1
  51. data/lib/aruba/in_process.rb +0 -2
  52. data/lib/aruba/initializer.rb +4 -14
  53. data/lib/aruba/matchers/base/object_formatter.rb +0 -5
  54. data/lib/aruba/matchers/file/have_same_file_content.rb +5 -5
  55. data/lib/aruba/matchers/string/output_string_eq.rb +1 -1
  56. data/lib/aruba/platforms/announcer.rb +11 -16
  57. data/lib/aruba/platforms/aruba_file_creator.rb +1 -5
  58. data/lib/aruba/platforms/aruba_logger.rb +1 -5
  59. data/lib/aruba/platforms/command_monitor.rb +10 -14
  60. data/lib/aruba/platforms/determine_disk_usage.rb +8 -3
  61. data/lib/aruba/platforms/filesystem_status.rb +1 -5
  62. data/lib/aruba/platforms/unix_command_string.rb +1 -8
  63. data/lib/aruba/platforms/unix_environment_variables.rb +6 -8
  64. data/lib/aruba/platforms/unix_platform.rb +9 -22
  65. data/lib/aruba/platforms/unix_which.rb +4 -0
  66. data/lib/aruba/platforms/windows_command_string.rb +6 -14
  67. data/lib/aruba/platforms/windows_environment_variables.rb +4 -16
  68. data/lib/aruba/platforms/windows_which.rb +4 -0
  69. data/lib/aruba/processes/basic_process.rb +22 -18
  70. data/lib/aruba/processes/spawn_process.rb +12 -35
  71. data/lib/aruba/rspec.rb +1 -0
  72. data/lib/aruba/runtime.rb +3 -4
  73. data/lib/aruba/setup.rb +9 -11
  74. data/lib/aruba/spawn_process.rb +1 -4
  75. data/lib/aruba/tasks/docker_helpers.rb +158 -0
  76. data/lib/aruba/version.rb +1 -1
  77. metadata +62 -230
  78. data/CHANGELOG.md +0 -991
  79. data/features/.nav +0 -72
  80. data/features/01_getting_started_with_aruba/cleanup_working_directory.feature +0 -57
  81. data/features/01_getting_started_with_aruba/run_commands.feature +0 -217
  82. data/features/01_getting_started_with_aruba/supported_testing_frameworks.feature +0 -88
  83. data/features/02_configure_aruba/activate_announcer_on_command_failure.feature +0 -38
  84. data/features/02_configure_aruba/basics.feature +0 -151
  85. data/features/02_configure_aruba/command_runtime_environment.feature +0 -129
  86. data/features/02_configure_aruba/console_history_file.feature +0 -38
  87. data/features/02_configure_aruba/exit_timeout.feature +0 -60
  88. data/features/02_configure_aruba/fixtures_directories.feature +0 -38
  89. data/features/02_configure_aruba/fixtures_path_prefix.feature +0 -23
  90. data/features/02_configure_aruba/home_directory.feature +0 -80
  91. data/features/02_configure_aruba/io_timeout.feature +0 -30
  92. data/features/02_configure_aruba/keep_ansi.feature +0 -30
  93. data/features/02_configure_aruba/log_level.feature +0 -38
  94. data/features/02_configure_aruba/physical_block_size.feature +0 -53
  95. data/features/02_configure_aruba/remove_ansi_escape_sequences.feature +0 -38
  96. data/features/02_configure_aruba/root_directory.feature +0 -30
  97. data/features/02_configure_aruba/startup_wait_time.feature +0 -48
  98. data/features/02_configure_aruba/working_directory.feature +0 -38
  99. data/features/03_testing_frameworks/cucumber/announce_information_for_troubleshooting.feature +0 -306
  100. data/features/03_testing_frameworks/cucumber/disable_bunder.feature +0 -18
  101. data/features/03_testing_frameworks/cucumber/steps/command/check_for_exit_statuses.feature +0 -136
  102. data/features/03_testing_frameworks/cucumber/steps/command/check_output_of_command.feature +0 -514
  103. data/features/03_testing_frameworks/cucumber/steps/command/check_stderr_of_command.feature +0 -68
  104. data/features/03_testing_frameworks/cucumber/steps/command/check_stdout_of_command.feature +0 -109
  105. data/features/03_testing_frameworks/cucumber/steps/command/debug_your_command_in_aruba.feature +0 -118
  106. data/features/03_testing_frameworks/cucumber/steps/command/run_a_command.feature +0 -66
  107. data/features/03_testing_frameworks/cucumber/steps/command/run_command_in_process.feature +0 -485
  108. data/features/03_testing_frameworks/cucumber/steps/command/run_command_interactively.feature +0 -90
  109. data/features/03_testing_frameworks/cucumber/steps/command/run_commands_which_require_a_shell.feature +0 -79
  110. data/features/03_testing_frameworks/cucumber/steps/command/send_signal_to_command.feature +0 -83
  111. data/features/03_testing_frameworks/cucumber/steps/command/stop_command.feature +0 -285
  112. data/features/03_testing_frameworks/cucumber/steps/environment/append_environment_variable.feature +0 -52
  113. data/features/03_testing_frameworks/cucumber/steps/environment/modify_home_variable_for_testing.feature +0 -62
  114. data/features/03_testing_frameworks/cucumber/steps/environment/prepend_environment_variable.feature +0 -52
  115. data/features/03_testing_frameworks/cucumber/steps/environment/set_environment_variable.feature +0 -49
  116. data/features/03_testing_frameworks/cucumber/steps/filesystem/append_to_file.feature +0 -45
  117. data/features/03_testing_frameworks/cucumber/steps/filesystem/cd_to_directory.feature +0 -33
  118. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_existence_of_directory.feature +0 -57
  119. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_existence_of_file.feature +0 -43
  120. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_file_content.feature +0 -143
  121. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_non_existence_of_directory.feature +0 -69
  122. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_non_existence_of_file.feature +0 -80
  123. data/features/03_testing_frameworks/cucumber/steps/filesystem/check_permissions_of_file.feature +0 -39
  124. data/features/03_testing_frameworks/cucumber/steps/filesystem/compare_files.feature +0 -42
  125. data/features/03_testing_frameworks/cucumber/steps/filesystem/copy_file_or_directory.feature +0 -45
  126. data/features/03_testing_frameworks/cucumber/steps/filesystem/create_directory.feature +0 -57
  127. data/features/03_testing_frameworks/cucumber/steps/filesystem/create_file.feature +0 -76
  128. data/features/03_testing_frameworks/cucumber/steps/filesystem/move_file_or_directory.feature +0 -44
  129. data/features/03_testing_frameworks/cucumber/steps/filesystem/overwrite_file.feature +0 -72
  130. data/features/03_testing_frameworks/cucumber/steps/filesystem/remove_directory.feature +0 -38
  131. data/features/03_testing_frameworks/cucumber/steps/filesystem/remove_file.feature +0 -38
  132. data/features/03_testing_frameworks/cucumber/steps/filesystem/use_fixtures_for_setup_test.feature +0 -77
  133. data/features/03_testing_frameworks/rspec/hooks/define_after_hook_for_commands.feature +0 -43
  134. data/features/03_testing_frameworks/rspec/hooks/define_before_hook_for_commands.feature +0 -71
  135. data/features/03_testing_frameworks/rspec/setup_aruba_for_rspec.feature +0 -179
  136. data/features/04_aruba_api/command/find_a_started_command.feature +0 -83
  137. data/features/04_aruba_api/command/find_command_in_PATH.feature +0 -37
  138. data/features/04_aruba_api/command/read_stderr_of_command.feature +0 -46
  139. data/features/04_aruba_api/command/read_stdout_of_command.feature +0 -46
  140. data/features/04_aruba_api/command/run_command.feature +0 -423
  141. data/features/04_aruba_api/command/run_simple.feature +0 -254
  142. data/features/04_aruba_api/command/send_signal_to_command.feature +0 -53
  143. data/features/04_aruba_api/command/stop_all_commands.feature +0 -57
  144. data/features/04_aruba_api/command/stop_single_command.feature +0 -132
  145. data/features/04_aruba_api/command/terminate_all_commands.feature +0 -57
  146. data/features/04_aruba_api/command/use_last_command_started.feature +0 -50
  147. data/features/04_aruba_api/command/use_last_command_stopped.feature +0 -89
  148. data/features/04_aruba_api/core/expand_path.feature +0 -88
  149. data/features/04_aruba_api/environment/append_environment_variable.feature +0 -128
  150. data/features/04_aruba_api/environment/delete_environment_variable.feature +0 -63
  151. data/features/04_aruba_api/environment/prepend_environment_variable.feature +0 -128
  152. data/features/04_aruba_api/environment/set_environment_variable.feature +0 -376
  153. data/features/04_aruba_api/filesystem/cd_to_directory.feature +0 -184
  154. data/features/04_aruba_api/filesystem/check_existence_file_or_directory.feature +0 -62
  155. data/features/04_aruba_api/filesystem/check_if_path_is_absolute.feature +0 -48
  156. data/features/04_aruba_api/filesystem/check_if_path_is_directory.feature +0 -53
  157. data/features/04_aruba_api/filesystem/check_if_path_is_file.feature +0 -54
  158. data/features/04_aruba_api/filesystem/check_if_path_is_relative.feature +0 -48
  159. data/features/04_aruba_api/filesystem/create_directory.feature +0 -57
  160. data/features/04_aruba_api/filesystem/move_file_or_directory.feature +0 -119
  161. data/features/04_aruba_api/filesystem/report_disk_usage.feature +0 -152
  162. data/features/04_aruba_api/filesystem/use_fixtures.feature +0 -104
  163. data/features/04_aruba_api/text/extract_text.feature +0 -87
  164. data/features/04_aruba_api/text/replace_variables.feature +0 -45
  165. data/features/04_aruba_api/text/sanitize_text.feature +0 -228
  166. data/features/04_aruba_api/text/unescape_text.feature +0 -127
  167. data/features/05_use_rspec_matchers/command/check_timeouts.feature +0 -48
  168. data/features/05_use_rspec_matchers/directory/have_sub_directory.feature +0 -110
  169. data/features/05_use_rspec_matchers/file/be_a_command_found_in_path.feature +0 -115
  170. data/features/05_use_rspec_matchers/file/be_existing_executable.feature +0 -88
  171. data/features/05_use_rspec_matchers/file/be_existing_file.feature +0 -82
  172. data/features/05_use_rspec_matchers/file/have_file_content.feature +0 -123
  173. data/features/05_use_rspec_matchers/file/have_file_size.feature +0 -107
  174. data/features/05_use_rspec_matchers/path/be_an_absolute_path.feature +0 -74
  175. data/features/05_use_rspec_matchers/path/be_an_existing_path.feature +0 -97
  176. data/features/05_use_rspec_matchers/path/have_permissions.feature +0 -118
  177. data/features/06_use_aruba_cli/initialize_project_with_aruba.feature +0 -79
  178. data/features/06_use_aruba_cli/open_console.feature +0 -55
  179. data/features/08_other/improve_performance_if_using_jruby.feature +0 -37
  180. data/features/step_definitions/hooks.rb +0 -146
  181. data/features/support/aruba.rb +0 -7
  182. data/features/support/env.rb +0 -33
  183. data/features/support/simplecov_setup.rb +0 -11
  184. data/lib/aruba/api/bundler.rb +0 -16
  185. data/lib/aruba/cucumber/deprecated.rb +0 -93
  186. data/lib/aruba/matchers/deprecated.rb +0 -1
  187. data/lib/aruba/matchers/deprecated/file.rb +0 -17
  188. data/lib/aruba/reporting.rb +0 -126
  189. data/script/bootstrap +0 -24
  190. data/script/test +0 -3
  191. data/spec/aruba/api/bundler_spec.rb +0 -15
  192. data/spec/aruba/api/commands_spec.rb +0 -30
  193. data/spec/aruba/api/core_spec.rb +0 -184
  194. data/spec/aruba/api/deprecated_spec.rb +0 -421
  195. data/spec/aruba/api/filesystem_spec.rb +0 -746
  196. data/spec/aruba/api/runtime_spec.rb +0 -28
  197. data/spec/aruba/api_spec.rb +0 -73
  198. data/spec/aruba/aruba_path_spec.rb +0 -103
  199. data/spec/aruba/basic_configuration_spec.rb +0 -5
  200. data/spec/aruba/configuration_spec.rb +0 -5
  201. data/spec/aruba/hooks_spec.rb +0 -17
  202. data/spec/aruba/in_config_wrapper_spec.rb +0 -25
  203. data/spec/aruba/jruby_spec.rb +0 -73
  204. data/spec/aruba/matchers/command/have_output_size_spec.rb +0 -25
  205. data/spec/aruba/matchers/command_spec.rb +0 -174
  206. data/spec/aruba/matchers/deprecated_spec.rb +0 -120
  207. data/spec/aruba/matchers/directory_spec.rb +0 -57
  208. data/spec/aruba/matchers/file_spec.rb +0 -208
  209. data/spec/aruba/matchers/path_spec.rb +0 -58
  210. data/spec/aruba/platform/simple_table_spec.rb +0 -23
  211. data/spec/aruba/platform/windows_environment_variables_spec.rb +0 -500
  212. data/spec/aruba/platforms/unix_command_string_spec.rb +0 -17
  213. data/spec/aruba/platforms/windows_command_string_spec.rb +0 -22
  214. data/spec/aruba/processes/spawn_process_spec.rb +0 -112
  215. data/spec/aruba/rspec_spec.rb +0 -15
  216. data/spec/aruba/runtime_spec.rb +0 -29
  217. data/spec/event_bus/name_resolver_spec.rb +0 -68
  218. data/spec/event_bus_spec.rb +0 -158
  219. data/spec/spec_helper.rb +0 -22
  220. data/spec/support/configs/.keep +0 -0
  221. data/spec/support/configs/aruba.rb +0 -5
  222. data/spec/support/configs/pry.rb +0 -3
  223. data/spec/support/configs/rspec.rb +0 -15
  224. data/spec/support/helpers/.keep +0 -0
  225. data/spec/support/helpers/reporting.rb +0 -44
  226. data/spec/support/matchers/.keep +0 -0
  227. data/spec/support/matchers/option.rb +0 -35
  228. data/spec/support/shared_contexts/.keep +0 -0
  229. data/spec/support/shared_contexts/aruba.rb +0 -49
  230. data/spec/support/shared_examples/.keep +0 -0
  231. data/spec/support/shared_examples/configuration.rb +0 -116
  232. data/spec/support/shared_examples/directory.rb +0 -7
  233. data/spec/support/shared_examples/file.rb +0 -7
  234. data/templates/css/console.css +0 -24
  235. data/templates/css/filesystem.css +0 -42
  236. data/templates/css/pygments-autumn.css +0 -59
  237. data/templates/files.erb +0 -14
  238. data/templates/images/LICENSE +0 -22
  239. data/templates/images/folder.png +0 -0
  240. data/templates/images/page_white.png +0 -0
  241. data/templates/images/page_white_gherkin.png +0 -0
  242. data/templates/images/page_white_ruby.png +0 -0
  243. data/templates/index.erb +0 -20
  244. data/templates/js/filesystem.js +0 -5
  245. data/templates/js/jquery-1.11.3.min.js +0 -5
  246. data/templates/main.erb +0 -34
File without changes
@@ -1,5 +0,0 @@
1
- require 'aruba/rspec'
2
-
3
- Aruba.configure do |config|
4
- config.activate_announcer_on_command_failure = [:stderr, :stdout, :command]
5
- end
@@ -1,3 +0,0 @@
1
- # Otherwise pry doesn't find it's RC file
2
- # if ENV['HOME'] is mocked
3
- ENV['PRYRC'] = File.expand_path('~/.pryrc')
@@ -1,15 +0,0 @@
1
- require 'rspec/core'
2
- require 'aruba/api'
3
-
4
- RSpec.configure do |config|
5
- config.filter_run :focus => true
6
-
7
- config.run_all_when_everything_filtered = true
8
-
9
- config.expect_with :rspec do |c|
10
- c.syntax = :expect
11
- end
12
-
13
- config.include Aruba::Api
14
- config.before(:each) { setup_aruba }
15
- end
File without changes
@@ -1,44 +0,0 @@
1
- module SpecHelpers
2
- module Reporting
3
- # Captures the given stream and returns it:
4
- #
5
- # stream = capture(:stdout) { puts 'notice' }
6
- # stream # => "notice\n"
7
- #
8
- # stream = capture(:stderr) { warn 'error' }
9
- # stream # => "error\n"
10
- #
11
- # even for subprocesses:
12
- #
13
- # stream = capture(:stdout) { system('echo notice') }
14
- # stream # => "notice\n"
15
- #
16
- # stream = capture(:stderr) { system('echo error 1>&2') }
17
- # stream # => "error\n"
18
- def capture(stream)
19
- stream = stream.to_s
20
- captured_stream = Tempfile.new(stream)
21
-
22
- # rubocop:disable Lint/Eval
23
- stream_io = eval("$#{stream}")
24
- # rubocop:enable Lint/Eval
25
-
26
- origin_stream = stream_io.dup
27
- stream_io.reopen(captured_stream)
28
-
29
- yield
30
-
31
- stream_io.rewind
32
- return captured_stream.read
33
- ensure
34
- captured_stream.close
35
- captured_stream.unlink
36
- stream_io.reopen(origin_stream)
37
- end
38
- alias silence capture
39
- end
40
- end
41
-
42
- RSpec.configure do |config|
43
- config.include SpecHelpers::Reporting
44
- end
File without changes
@@ -1,35 +0,0 @@
1
- RSpec::Matchers.define :be_valid_option do |_|
2
- match do |actual|
3
- subject.option?(actual)
4
- end
5
-
6
- failure_message do |actual|
7
- format("expected that \"%s\" is a valid option", actual)
8
- end
9
-
10
- failure_message_when_negated do |actual|
11
- format("expected that \"%s\" is not a valid option", actual)
12
- end
13
- end
14
-
15
- RSpec::Matchers.define :have_option_value do |expected|
16
- match do |actual|
17
- @old_actual = actual
18
- @actual = if RUBY_VERSION < '1.9'
19
- subject.send(actual.to_sym)
20
- else
21
- subject.public_send(actual.to_sym)
22
- end
23
- values_match? expected, @actual
24
- end
25
-
26
- diffable
27
-
28
- failure_message do |_actual|
29
- format(%(expected that option "%s" has value "%s"), @old_actual, expected)
30
- end
31
-
32
- failure_message_when_negated do |_actual|
33
- format(%(expected that option "%s" does not have value "%s"), @old_actual, expected)
34
- end
35
- end
File without changes
@@ -1,49 +0,0 @@
1
- require 'fileutils'
2
- require 'securerandom'
3
-
4
- RSpec.shared_context 'uses aruba API' do
5
- def random_string(options = {})
6
- options[:prefix].to_s + SecureRandom.hex + options[:suffix].to_s
7
- end
8
-
9
- def create_test_files(files, data = 'a')
10
- Array(files).each do |s|
11
- next if s.to_s[0] == '%'
12
- local_path = expand_path(s)
13
-
14
- FileUtils.mkdir_p File.dirname(local_path)
15
- File.open(local_path, 'w') { |f| f << data }
16
- end
17
- end
18
-
19
- before(:each) do
20
- klass = Class.new do
21
- include Aruba::Api
22
-
23
- def set_tag(tag_name, value)
24
- self.instance_variable_set "@#{tag_name}", value
25
- end
26
- end
27
-
28
- @aruba = klass.new
29
-
30
- @file_name = "test.txt"
31
- @file_size = 256
32
- @file_path = @aruba.expand_path(@file_name)
33
- @aruba.setup_aruba
34
-
35
- raise "We must work with relative paths, everything else is dangerous" if ?/ == @aruba.aruba.current_directory[0]
36
- end
37
- end
38
-
39
- RSpec.shared_context 'needs to expand paths' do
40
- def expand_path(*args)
41
- @aruba.expand_path(*args)
42
- end
43
- end
44
-
45
- RSpec.shared_context 'needs to run with environment' do
46
- def with_environment(*args, &block)
47
- @aruba.with_environment(*args, &block)
48
- end
49
- end
File without changes
@@ -1,116 +0,0 @@
1
- RSpec.shared_examples 'a basic configuration' do
2
- subject(:config) do
3
- Class.new(described_class) do
4
- option_accessor :use_test, :contract => { Contracts::Bool => Contracts::Bool }, :default => false
5
- end.new
6
- end
7
-
8
- it { expect(config).not_to be_nil }
9
-
10
- describe '.option_reader' do
11
- let(:config_klass) { Class.new(described_class) }
12
-
13
- subject(:config) { config_klass.new }
14
-
15
- before :each do
16
- config_klass.option_reader :new_opt, :contract => { Contracts::Num => Contracts::Num }, :default => 1
17
- end
18
-
19
- context 'when value is read' do
20
- it { expect(config.new_opt).to eq 1 }
21
- end
22
-
23
- context 'when one tries to write a value' do
24
- it { expect{ config.new_opt = 1}.to raise_error NoMethodError }
25
- end
26
-
27
- context 'when block is defined' do
28
- before :each do
29
- config_klass.option_reader :new_opt2, :contract => { Contracts::Num => Contracts::Num } do |c|
30
- c.new_opt.value + 1
31
- end
32
- end
33
-
34
- it { expect(config.new_opt2).to eq 2 }
35
- end
36
-
37
- context 'when block and default value is defined' do
38
- it do
39
- expect do
40
- config_klass.option_accessor :new_opt2, :contract => { Contracts::Num => Contracts::Num }, :default => 2 do |c|
41
- c.new_opt.value + 1
42
- end
43
- end.to raise_error ArgumentError, 'Either use block or default value'
44
- end
45
- end
46
- end
47
-
48
- describe '.option_accessor' do
49
- let(:config_klass) { Class.new(described_class) }
50
-
51
- subject(:config) { config_klass.new }
52
-
53
- before :each do
54
- config_klass.option_accessor :new_opt, :contract => { Contracts::Num => Contracts::Num }, :default => 1
55
- end
56
-
57
- context 'when default is used' do
58
- it { expect(config.new_opt).to eq 1 }
59
- end
60
-
61
- context 'when is modified' do
62
- before(:each) { config.new_opt = 2 }
63
-
64
- it { expect(config.new_opt).to eq 2 }
65
- end
66
-
67
- context 'when block is defined' do
68
- before :each do
69
- config_klass.option_accessor :new_opt2, :contract => { Contracts::Num => Contracts::Num } do |c|
70
- c.new_opt.value + 1
71
- end
72
- end
73
-
74
- it { expect(config.new_opt2).to eq 2 }
75
- end
76
-
77
- context 'when block and default value is defined' do
78
- it do
79
- expect do
80
- config_klass.option_accessor :new_opt2, :contract => { Contracts::Num => Contracts::Num }, :default => 2 do |c|
81
- c.new_opt1 + 1
82
- end
83
- end.to raise_error ArgumentError, 'Either use block or default value'
84
- end
85
- end
86
- end
87
-
88
- describe 'option?' do
89
- let(:name) { :use_test }
90
-
91
- context 'when valid option' do
92
- it { expect(name).to be_valid_option }
93
- end
94
-
95
- context 'when invalid_option' do
96
- let(:name) { :blub }
97
- it { expect(name).not_to be_valid_option }
98
- end
99
- end
100
-
101
- describe 'set_if_option' do
102
- let(:name) { :use_test }
103
- let(:value) { true }
104
-
105
- context 'when valid option' do
106
- before(:each) { config.set_if_option(name, value) }
107
- it { expect(name).to have_option_value true }
108
- end
109
-
110
- context 'when invalid_option' do
111
- let(:name) { :blub }
112
-
113
- it { expect { config.set_if_option(name, value) }.not_to raise_error }
114
- end
115
- end
116
- end
@@ -1,7 +0,0 @@
1
- shared_examples 'an existing directory' do
2
- it { Array(path).each { |p| expect(File).to be_directory(p) } }
3
- end
4
-
5
- shared_examples 'a non-existing directory' do
6
- it { Array(path).each { |p| expect(File).not_to be_exist(p) } }
7
- end
@@ -1,7 +0,0 @@
1
- shared_examples 'an existing file' do
2
- it { Array(path).each { |p| expect(File).to be_file(p) } }
3
- end
4
-
5
- shared_examples 'a non-existing file' do
6
- it { Array(path).each { |p| expect(File).not_to be_exist(p) } }
7
- end
@@ -1,24 +0,0 @@
1
- .console {
2
- background-color: #000000;
3
- color: #ffffff;
4
- }
5
-
6
- .console .xterm_ef1 { /* red */
7
- color: #ff0000;
8
- }
9
-
10
- .console .xterm_ef2 { /* green */
11
- color: #00ff00;
12
- }
13
-
14
- .console .xterm_ef3 { /* yellow */
15
- color: #ffff00;
16
- }
17
-
18
- .console .xterm_ef6 { /* cyan */
19
- color: #00ffff;
20
- }
21
-
22
- .console .xterm_ef8 { /* gray */
23
- color: #888888;
24
- }
@@ -1,42 +0,0 @@
1
- .filesystem ul {
2
- background: #FFFFFF;
3
- margin: 0;
4
- padding: 0;
5
- }
6
-
7
- .filesystem li {
8
- list-style-type: none;
9
- padding-left: 20px;
10
- margin-bottom: 4px;
11
- }
12
-
13
- .filesystem li .highlight {
14
- display: block;
15
- border: 1px solid #CCCCCC;
16
- margin-top: 4px;
17
- }
18
-
19
- .filesystem li .highlight pre, pre.console {
20
- margin: 2px;
21
- padding: 2px;
22
- }
23
-
24
- .filesystem li.file {
25
- cursor: pointer;
26
- }
27
-
28
- .filesystem li.folder {
29
- background: url('../images/folder.png') no-repeat;
30
- }
31
-
32
- .filesystem li.feature {
33
- background: url('../images/page_white_gherkin.png') no-repeat;
34
- }
35
-
36
- .filesystem li.rb {
37
- background: url('../images/page_white_ruby.png') no-repeat;
38
- }
39
-
40
- .filesystem li.unknown {
41
- background: url('../images/page_white.png') no-repeat;
42
- }
@@ -1,59 +0,0 @@
1
- /* https://raw.github.com/richleland/pygments-css/master/autumn.css */
2
- .highlight .hll { background-color: #ffffcc }
3
- .highlight .c { color: #aaaaaa; font-style: italic } /* Comment */
4
- .highlight .err { color: #F00000; background-color: #F0A0A0 } /* Error */
5
- .highlight .k { color: #0000aa } /* Keyword */
6
- .highlight .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */
7
- .highlight .cp { color: #4c8317 } /* Comment.Preproc */
8
- .highlight .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */
9
- .highlight .cs { color: #0000aa; font-style: italic } /* Comment.Special */
10
- .highlight .gd { color: #aa0000 } /* Generic.Deleted */
11
- .highlight .ge { font-style: italic } /* Generic.Emph */
12
- .highlight .gr { color: #aa0000 } /* Generic.Error */
13
- .highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
14
- .highlight .gi { color: #00aa00 } /* Generic.Inserted */
15
- .highlight .go { color: #888888 } /* Generic.Output */
16
- .highlight .gp { color: #555555 } /* Generic.Prompt */
17
- .highlight .gs { font-weight: bold } /* Generic.Strong */
18
- .highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
19
- .highlight .gt { color: #aa0000 } /* Generic.Traceback */
20
- .highlight .kc { color: #0000aa } /* Keyword.Constant */
21
- .highlight .kd { color: #0000aa } /* Keyword.Declaration */
22
- .highlight .kn { color: #0000aa } /* Keyword.Namespace */
23
- .highlight .kp { color: #0000aa } /* Keyword.Pseudo */
24
- .highlight .kr { color: #0000aa } /* Keyword.Reserved */
25
- .highlight .kt { color: #00aaaa } /* Keyword.Type */
26
- .highlight .m { color: #009999 } /* Literal.Number */
27
- .highlight .s { color: #aa5500 } /* Literal.String */
28
- .highlight .na { color: #1e90ff } /* Name.Attribute */
29
- .highlight .nb { color: #00aaaa } /* Name.Builtin */
30
- .highlight .nc { color: #00aa00; text-decoration: underline } /* Name.Class */
31
- .highlight .no { color: #aa0000 } /* Name.Constant */
32
- .highlight .nd { color: #888888 } /* Name.Decorator */
33
- .highlight .ni { color: #800000; font-weight: bold } /* Name.Entity */
34
- .highlight .nf { color: #00aa00 } /* Name.Function */
35
- .highlight .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */
36
- .highlight .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */
37
- .highlight .nv { color: #aa0000 } /* Name.Variable */
38
- .highlight .ow { color: #0000aa } /* Operator.Word */
39
- .highlight .w { color: #bbbbbb } /* Text.Whitespace */
40
- .highlight .mf { color: #009999 } /* Literal.Number.Float */
41
- .highlight .mh { color: #009999 } /* Literal.Number.Hex */
42
- .highlight .mi { color: #009999 } /* Literal.Number.Integer */
43
- .highlight .mo { color: #009999 } /* Literal.Number.Oct */
44
- .highlight .sb { color: #aa5500 } /* Literal.String.Backtick */
45
- .highlight .sc { color: #aa5500 } /* Literal.String.Char */
46
- .highlight .sd { color: #aa5500 } /* Literal.String.Doc */
47
- .highlight .s2 { color: #aa5500 } /* Literal.String.Double */
48
- .highlight .se { color: #aa5500 } /* Literal.String.Escape */
49
- .highlight .sh { color: #aa5500 } /* Literal.String.Heredoc */
50
- .highlight .si { color: #aa5500 } /* Literal.String.Interpol */
51
- .highlight .sx { color: #aa5500 } /* Literal.String.Other */
52
- .highlight .sr { color: #009999 } /* Literal.String.Regex */
53
- .highlight .s1 { color: #aa5500 } /* Literal.String.Single */
54
- .highlight .ss { color: #0000aa } /* Literal.String.Symbol */
55
- .highlight .bp { color: #00aaaa } /* Name.Builtin.Pseudo */
56
- .highlight .vc { color: #aa0000 } /* Name.Variable.Class */
57
- .highlight .vg { color: #aa0000 } /* Name.Variable.Global */
58
- .highlight .vi { color: #aa0000 } /* Name.Variable.Instance */
59
- .highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
@@ -1,14 +0,0 @@
1
- <% if children(file).any? %>
2
- <ul>
3
- <% children(file).each do |child|
4
- css_class = File.directory?(child) ? 'folder' : File.extname(child) == '' ? 'file unknown' : 'file ' + File.extname(child)[1..-1]
5
- -%>
6
- <li class="<%= css_class %>"><span class="filename"><%= File.basename(child) -%></span>
7
- <% if File.file?(child) %>
8
- <%= pygmentize(child) %>
9
- <% end %>
10
- <% again(erb, _erbout, child) -%>
11
- </li>
12
- <% end -%>
13
- </ul>
14
- <% end -%>