tap 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (210) hide show
  1. data/Basic Overview b/data/Basic → Overview +0 -0
  2. data/Command Reference b/data/Command → Reference +0 -0
  3. data/History +14 -4
  4. data/MIT-LICENSE +0 -0
  5. data/README +0 -0
  6. data/Rakefile +0 -0
  7. data/Tutorial +0 -0
  8. data/bin/tap +11 -14
  9. data/lib/tap.rb +10 -1
  10. data/lib/tap/app.rb +1 -1
  11. data/lib/tap/cmd/console.rb +2 -6
  12. data/lib/tap/cmd/destroy.rb +0 -0
  13. data/lib/tap/cmd/generate.rb +0 -0
  14. data/lib/tap/cmd/run.rb +72 -77
  15. data/lib/tap/constants.rb +33 -2
  16. data/lib/tap/dump.rb +0 -0
  17. data/lib/tap/env.rb +40 -21
  18. data/lib/tap/file_task.rb +0 -0
  19. data/lib/tap/generator.rb +0 -0
  20. data/lib/tap/generator/generators/command/USAGE +0 -0
  21. data/lib/tap/generator/generators/command/command_generator.rb +0 -0
  22. data/lib/tap/generator/generators/command/templates/command.erb +2 -6
  23. data/lib/tap/generator/generators/config/USAGE +0 -0
  24. data/lib/tap/generator/generators/config/config_generator.rb +0 -0
  25. data/lib/tap/generator/generators/config/templates/config.erb +0 -0
  26. data/lib/tap/generator/generators/file_task/USAGE +0 -0
  27. data/lib/tap/generator/generators/file_task/file_task_generator.rb +0 -0
  28. data/lib/tap/generator/generators/file_task/templates/file.txt +0 -0
  29. data/lib/tap/generator/generators/file_task/templates/file.yml +0 -0
  30. data/lib/tap/generator/generators/file_task/templates/task.erb +0 -0
  31. data/lib/tap/generator/generators/file_task/templates/test.erb +0 -0
  32. data/lib/tap/generator/generators/generator/USAGE +0 -0
  33. data/lib/tap/generator/generators/generator/generator_generator.rb +0 -0
  34. data/lib/tap/generator/generators/generator/templates/generator.erb +0 -0
  35. data/lib/tap/generator/generators/generator/templates/usage.erb +0 -0
  36. data/lib/tap/generator/generators/root/USAGE +0 -0
  37. data/lib/tap/generator/generators/root/root_generator.rb +0 -0
  38. data/lib/tap/generator/generators/root/templates/Rakefile +0 -0
  39. data/lib/tap/generator/generators/root/templates/ReadMe.txt +0 -0
  40. data/lib/tap/generator/generators/root/templates/tap.yml +1 -0
  41. data/lib/tap/generator/generators/root/templates/test/tap_test_helper.rb +0 -0
  42. data/lib/tap/generator/generators/root/templates/test/tap_test_suite.rb +0 -0
  43. data/lib/tap/generator/generators/task/USAGE +0 -0
  44. data/lib/tap/generator/generators/task/task_generator.rb +0 -0
  45. data/lib/tap/generator/generators/task/templates/task.erb +0 -0
  46. data/lib/tap/generator/generators/task/templates/test.erb +0 -0
  47. data/lib/tap/generator/generators/workflow/USAGE +0 -0
  48. data/lib/tap/generator/generators/workflow/templates/task.erb +0 -0
  49. data/lib/tap/generator/generators/workflow/templates/test.erb +0 -0
  50. data/lib/tap/generator/generators/workflow/workflow_generator.rb +0 -0
  51. data/lib/tap/generator/options.rb +0 -0
  52. data/lib/tap/generator/usage.rb +0 -0
  53. data/lib/tap/patches/rake/rake_test_loader.rb +0 -0
  54. data/lib/tap/patches/rake/testtask.rb +0 -0
  55. data/lib/tap/patches/ruby19/backtrace_filter.rb +0 -0
  56. data/lib/tap/patches/ruby19/parsedate.rb +0 -0
  57. data/lib/tap/root.rb +0 -0
  58. data/lib/tap/support/aggregator.rb +0 -0
  59. data/lib/tap/support/audit.rb +0 -0
  60. data/lib/tap/support/batchable.rb +2 -25
  61. data/lib/tap/support/batchable_methods.rb +34 -0
  62. data/lib/tap/support/class_configuration.rb +0 -0
  63. data/lib/tap/support/command_line.rb +103 -0
  64. data/lib/tap/support/command_line_methods.rb +76 -0
  65. data/lib/tap/support/configurable.rb +1 -0
  66. data/lib/tap/support/configurable_methods.rb +1 -73
  67. data/lib/tap/support/executable.rb +0 -0
  68. data/lib/tap/support/executable_queue.rb +0 -0
  69. data/lib/tap/support/logger.rb +0 -0
  70. data/lib/tap/support/rake.rb +0 -0
  71. data/lib/tap/support/run_error.rb +0 -0
  72. data/lib/tap/support/shell_utils.rb +0 -0
  73. data/lib/tap/support/tdoc.rb +0 -0
  74. data/lib/tap/support/tdoc/config_attr.rb +0 -0
  75. data/lib/tap/support/tdoc/tdoc_html_generator.rb +0 -0
  76. data/lib/tap/support/tdoc/tdoc_html_template.rb +0 -0
  77. data/lib/tap/support/validation.rb +0 -0
  78. data/lib/tap/support/versions.rb +0 -0
  79. data/lib/tap/task.rb +1 -0
  80. data/lib/tap/test.rb +0 -0
  81. data/lib/tap/test/env_vars.rb +0 -0
  82. data/lib/tap/test/file_methods.rb +1 -1
  83. data/lib/tap/test/subset_methods.rb +0 -0
  84. data/lib/tap/test/tap_methods.rb +0 -0
  85. data/lib/tap/workflow.rb +1 -0
  86. data/test/app/config/another/task.yml +0 -0
  87. data/test/app/config/batch.yml +0 -0
  88. data/test/app/config/empty.yml +0 -0
  89. data/test/app/config/erb.yml +0 -0
  90. data/test/app/config/some/task.yml +0 -0
  91. data/test/app/config/template.yml +0 -0
  92. data/test/app/config/version-0.1.yml +0 -0
  93. data/test/app/config/version.yml +0 -0
  94. data/test/app/lib/app_test_task.rb +0 -0
  95. data/test/app_test.rb +0 -0
  96. data/test/env/test_configure/recurse_a.yml +0 -0
  97. data/test/env/test_configure/recurse_b.yml +0 -0
  98. data/test/env/test_configure/tap.yml +0 -0
  99. data/test/env/test_load_env_config/dir/tap.yml +0 -0
  100. data/test/env/test_load_env_config/recurse_a.yml +0 -0
  101. data/test/env/test_load_env_config/recurse_b.yml +0 -0
  102. data/test/env/test_load_env_config/tap.yml +0 -0
  103. data/test/env_test.rb +0 -0
  104. data/test/file_task/config/batch.yml +0 -0
  105. data/test/file_task/config/configured.yml +0 -0
  106. data/test/file_task/old_file_one.txt +0 -0
  107. data/test/file_task/old_file_two.txt +0 -0
  108. data/test/file_task_test.rb +0 -0
  109. data/test/root/alt_lib/alt_module.rb +0 -0
  110. data/test/root/file.txt +0 -0
  111. data/test/root/glob/one.txt +0 -0
  112. data/test/root/glob/two.txt +0 -0
  113. data/test/root/lib/absolute_alt_filepath.rb +0 -0
  114. data/test/root/lib/alternative_filepath.rb +0 -0
  115. data/test/root/lib/another_module.rb +0 -0
  116. data/test/root/lib/nested/some_module.rb +0 -0
  117. data/test/root/lib/no_module_included.rb +0 -0
  118. data/test/root/lib/some/module.rb +0 -0
  119. data/test/root/lib/some_class.rb +0 -0
  120. data/test/root/lib/some_module.rb +0 -0
  121. data/test/root/load_path/load_path_module.rb +0 -0
  122. data/test/root/load_path/skip_module.rb +0 -0
  123. data/test/root/mtime/older.txt +0 -0
  124. data/test/root/unload/full_path.rb +0 -0
  125. data/test/root/unload/loaded_by_nested.rb +0 -0
  126. data/test/root/unload/nested/nested_load.rb +0 -0
  127. data/test/root/unload/nested/nested_with_ext.rb +0 -0
  128. data/test/root/unload/nested/relative_path.rb +0 -0
  129. data/test/root/unload/older.rb +0 -0
  130. data/test/root/unload/unload_base.rb +0 -0
  131. data/test/root/versions/another.yml +0 -0
  132. data/test/root/versions/file-0.1.2.yml +0 -0
  133. data/test/root/versions/file-0.1.yml +0 -0
  134. data/test/root/versions/file.yml +0 -0
  135. data/test/root_test.rb +0 -0
  136. data/test/support/aggregator_test.rb +0 -0
  137. data/test/support/audit_test.rb +0 -0
  138. data/test/support/batchable_test.rb +0 -0
  139. data/test/support/class_configuration_test.rb +0 -0
  140. data/test/{script_test.rb → support/command_line_test.rb} +21 -21
  141. data/test/support/configurable/config/configured.yml +0 -0
  142. data/test/support/configurable_test.rb +0 -0
  143. data/test/support/executable_queue_test.rb +0 -0
  144. data/test/support/executable_test.rb +0 -0
  145. data/test/support/logger_test.rb +0 -0
  146. data/test/support/rake_test.rb +0 -0
  147. data/test/support/shell_utils_test.rb +0 -0
  148. data/test/support/tdoc_test.rb +0 -0
  149. data/test/support/validation_test.rb +0 -0
  150. data/test/support/versions_test.rb +0 -0
  151. data/test/tap_test_helper.rb +0 -0
  152. data/test/tap_test_suite.rb +0 -0
  153. data/test/task/config/batch.yml +0 -0
  154. data/test/task/config/batched.yml +0 -0
  155. data/test/task/config/configured.yml +0 -0
  156. data/test/task/config/example.yml +0 -0
  157. data/test/task_base_test.rb +0 -0
  158. data/test/task_syntax_test.rb +0 -0
  159. data/test/task_test.rb +0 -0
  160. data/test/test/env_vars_test.rb +0 -0
  161. data/test/test/file_methods/test_assert_files/expected/one.txt +0 -0
  162. data/test/test/file_methods/test_assert_files/expected/two.txt +0 -0
  163. data/test/test/file_methods/test_assert_files/input/one.txt +0 -0
  164. data/test/test/file_methods/test_assert_files/input/two.txt +0 -0
  165. data/test/test/file_methods/test_assert_files_can_have_no_expected_files_if_specified/input/one.txt +0 -0
  166. data/test/test/file_methods/test_assert_files_can_have_no_expected_files_if_specified/input/two.txt +0 -0
  167. data/test/test/file_methods/test_assert_files_fails_for_different_content/expected/one.txt +0 -0
  168. data/test/test/file_methods/test_assert_files_fails_for_different_content/expected/two.txt +0 -0
  169. data/test/test/file_methods/test_assert_files_fails_for_different_content/input/one.txt +0 -0
  170. data/test/test/file_methods/test_assert_files_fails_for_different_content/input/two.txt +0 -0
  171. data/test/test/file_methods/test_assert_files_fails_for_missing_expected_file/expected/one.txt +0 -0
  172. data/test/test/file_methods/test_assert_files_fails_for_missing_expected_file/input/one.txt +0 -0
  173. data/test/test/file_methods/test_assert_files_fails_for_missing_expected_file/input/two.txt +0 -0
  174. data/test/test/file_methods/test_assert_files_fails_for_missing_output_file/expected/one.txt +0 -0
  175. data/test/test/file_methods/test_assert_files_fails_for_missing_output_file/expected/two.txt +0 -0
  176. data/test/test/file_methods/test_assert_files_fails_for_missing_output_file/input/one.txt +0 -0
  177. data/test/test/file_methods/test_assert_files_fails_for_missing_output_file/input/two.txt +0 -0
  178. data/test/test/file_methods/test_assert_files_fails_for_no_expected_files/input/one.txt +0 -0
  179. data/test/test/file_methods/test_assert_files_fails_for_no_expected_files/input/two.txt +0 -0
  180. data/test/test/file_methods/test_method_glob/expected/file.yml +0 -0
  181. data/test/test/file_methods/test_method_glob/expected/file_1.txt +0 -0
  182. data/test/test/file_methods/test_method_glob/expected/file_2.txt +0 -0
  183. data/test/test/file_methods_doc/test_sub/expected/one.txt +0 -0
  184. data/test/test/file_methods_doc/test_sub/expected/two.txt +0 -0
  185. data/test/test/file_methods_doc/test_sub/input/one.txt +0 -0
  186. data/test/test/file_methods_doc/test_sub/input/two.txt +0 -0
  187. data/test/test/file_methods_doc_test.rb +0 -0
  188. data/test/test/file_methods_test.rb +0 -0
  189. data/test/test/subset_methods_test.rb +0 -0
  190. data/test/test/tap_methods/test_assert_files/expected/task/name/a.txt +0 -0
  191. data/test/test/tap_methods/test_assert_files/expected/task/name/b.txt +0 -0
  192. data/test/test/tap_methods/test_assert_files/input/a.txt +0 -0
  193. data/test/test/tap_methods/test_assert_files/input/b.txt +0 -0
  194. data/test/test/tap_methods_test.rb +0 -0
  195. data/test/workflow_test.rb +0 -0
  196. data/vendor/rails_generator.rb +0 -0
  197. data/vendor/rails_generator/base.rb +0 -0
  198. data/vendor/rails_generator/commands.rb +0 -0
  199. data/vendor/rails_generator/generated_attribute.rb +0 -0
  200. data/vendor/rails_generator/lookup.rb +0 -0
  201. data/vendor/rails_generator/manifest.rb +0 -0
  202. data/vendor/rails_generator/options.rb +0 -0
  203. data/vendor/rails_generator/scripts.rb +0 -0
  204. data/vendor/rails_generator/scripts/destroy.rb +0 -0
  205. data/vendor/rails_generator/scripts/generate.rb +0 -0
  206. data/vendor/rails_generator/scripts/update.rb +0 -0
  207. data/vendor/rails_generator/simple_logger.rb +0 -0
  208. data/vendor/rails_generator/spec.rb +0 -0
  209. metadata +7 -5
  210. data/lib/tap/script.rb +0 -96
data/lib/tap/script.rb DELETED
@@ -1,96 +0,0 @@
1
- require 'getoptlong'
2
- autoload(:PP, "pp")
3
-
4
- module Tap
5
- # == UNDER CONSTRUCTION
6
- #
7
- # Script is a mixed bag of methods encapsulating many scripting
8
- # functions like handling options and assembling usage information.
9
- module Script
10
- module_function
11
-
12
- # Parses the input string as YAML, if the string matches the YAML document
13
- # specifier (ie it begins with "---\s*\n"). Otherwise returns the string.
14
- #
15
- # str = {'key' => 'value'}.to_yaml # => "--- \nkey: value\n"
16
- # Tap::Script.parse_yaml(str) # => {'key' => 'value'}
17
- # Tap::Script.parse_yaml("str") # => "str"
18
- def parse_yaml(str)
19
- str =~ /\A---\s*\n/ ? YAML.load(str) : str
20
- end
21
-
22
- def split_argv(argv)
23
- current = []
24
- current_split = []
25
- splits = [current_split]
26
-
27
- argv.each do |arg|
28
- if arg =~ /\A-{2}(\+*)\z/
29
- current_split << current unless current.empty?
30
- current = []
31
- current_split = (splits[$1.length] ||= [])
32
- else
33
- current << arg
34
- end
35
- end
36
-
37
- current_split << current unless current.empty?
38
- splits.delete_if {|split| split.nil? || split.empty? }
39
- splits
40
- end
41
-
42
- def next_arg(argv)
43
- index = nil
44
- argv.each_with_index do |arg, i|
45
- if arg !~ /\A-/
46
- index = i
47
- break
48
- end
49
- end
50
- index == nil ? nil : argv.delete_at(index)
51
- end
52
-
53
- # Handles options using GetoptLong, and passes each option and
54
- # value in ARGV to the block.
55
- #
56
- #--
57
- # expect [long, <short>, type, desc]
58
- #++
59
- def handle_options(*options)
60
- options = options.collect do |opt|
61
- opt = opt[0..-2]
62
- opt.compact
63
- end
64
-
65
- opts = GetoptLong.new(*options)
66
- opts.quiet = true
67
- opts.each do |opt, value|
68
- yield(opt, value)
69
- end
70
- end
71
-
72
- def usage(program_file, *sections)
73
- options = sections.last.kind_of?(Hash) ? sections.pop : {}
74
- options = {:keep_headers => true}.merge(options)
75
- comment = Support::TDoc.usage(program_file, sections, options[:keep_headers])
76
- comment.rstrip + "\n"
77
- end
78
-
79
- def usage_options(opts)
80
- opt_lines = []
81
- opts.each do |long, short, mode, desc|
82
-
83
- if desc.kind_of?(Class) && desc.include?(Tap::Support::Configurable)
84
- key = desc.configurations.opt_map(long)
85
- default = PP.singleline_pp(desc.configurations.default[key], "")
86
- config_attr = desc.tdoc.find_configuration_named(key.to_s)
87
- desc = config_attr.desc
88
- end
89
-
90
- short = short == nil ? " " : "(#{short})"
91
- opt_lines << " %-25s %s %s" % [long, short, desc]
92
- end
93
- opt_lines.join("\n")
94
- end
95
- end
96
- end