spline 0.0.11 → 0.0.12

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.
Files changed (139) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/lib/spline/action_command.rb +21 -0
  4. data/lib/spline/install_command.rb +28 -0
  5. data/lib/spline/process_command.rb +20 -0
  6. data/lib/spline/spline_cli.rb +7 -19
  7. data/lib/spline/templates/action.tt +7 -0
  8. data/lib/spline/templates/my_first_action.tt +11 -0
  9. data/lib/spline/templates/my_process.tt +21 -0
  10. data/lib/spline/templates/my_second_action.tt +11 -0
  11. data/lib/spline/templates/process.tt +6 -0
  12. data/lib/spline/version.rb +1 -1
  13. data/spline.gemspec +0 -1
  14. metadata +9 -140
  15. data/vendor/bundle/ruby/2.1.0/bin/rake +0 -23
  16. data/vendor/bundle/ruby/2.1.0/bin/spline +0 -23
  17. data/vendor/bundle/ruby/2.1.0/build_info/rake-10.3.2.info +0 -1
  18. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/.autotest +0 -7
  19. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/.gemtest +0 -0
  20. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/.rubocop.yml +0 -27
  21. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/.togglerc +0 -7
  22. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/CONTRIBUTING.rdoc +0 -34
  23. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/History.rdoc +0 -609
  24. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/MIT-LICENSE +0 -21
  25. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/Manifest.txt +0 -162
  26. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/README.rdoc +0 -137
  27. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/Rakefile +0 -81
  28. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/bin/rake +0 -33
  29. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/alt_system.rb +0 -110
  30. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/application.rb +0 -783
  31. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/backtrace.rb +0 -23
  32. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/clean.rb +0 -76
  33. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/cloneable.rb +0 -16
  34. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/.document +0 -0
  35. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/compositepublisher.rb +0 -21
  36. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/ftptools.rb +0 -137
  37. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/publisher.rb +0 -81
  38. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/rubyforgepublisher.rb +0 -18
  39. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/sshpublisher.rb +0 -61
  40. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/contrib/sys.rb +0 -4
  41. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/cpu_counter.rb +0 -109
  42. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/default_loader.rb +0 -14
  43. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/dsl_definition.rb +0 -198
  44. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/early_time.rb +0 -21
  45. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/ext/core.rb +0 -25
  46. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/ext/module.rb +0 -1
  47. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/ext/string.rb +0 -173
  48. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/ext/time.rb +0 -15
  49. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/file_creation_task.rb +0 -24
  50. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/file_list.rb +0 -414
  51. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/file_task.rb +0 -46
  52. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/file_utils.rb +0 -116
  53. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/file_utils_ext.rb +0 -144
  54. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/gempackagetask.rb +0 -4
  55. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/invocation_chain.rb +0 -56
  56. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/invocation_exception_mixin.rb +0 -16
  57. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/linked_list.rb +0 -103
  58. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/loaders/makefile.rb +0 -40
  59. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/multi_task.rb +0 -13
  60. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/name_space.rb +0 -38
  61. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/packagetask.rb +0 -202
  62. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/pathmap.rb +0 -3
  63. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/phony.rb +0 -15
  64. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/private_reader.rb +0 -20
  65. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/promise.rb +0 -99
  66. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/pseudo_status.rb +0 -29
  67. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/rake_module.rb +0 -38
  68. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/rake_test_loader.rb +0 -22
  69. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/rdoctask.rb +0 -4
  70. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/ruby182_test_unit_fix.rb +0 -29
  71. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
  72. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/runtest.rb +0 -27
  73. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/scope.rb +0 -42
  74. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/task.rb +0 -383
  75. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/task_argument_error.rb +0 -7
  76. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/task_arguments.rb +0 -98
  77. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/task_manager.rb +0 -310
  78. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/tasklib.rb +0 -24
  79. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/testtask.rb +0 -212
  80. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/thread_history_display.rb +0 -48
  81. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/thread_pool.rb +0 -164
  82. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/trace_output.rb +0 -22
  83. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/version.rb +0 -7
  84. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake/win32.rb +0 -56
  85. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/lib/rake.rb +0 -78
  86. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/rakelib/publish.rake +0 -20
  87. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/rakelib/test_times.rake +0 -25
  88. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/file_creation.rb +0 -34
  89. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/helper.rb +0 -127
  90. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/support/rakefile_definitions.rb +0 -478
  91. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/support/ruby_runner.rb +0 -33
  92. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_private_reader.rb +0 -42
  93. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake.rb +0 -40
  94. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_application.rb +0 -641
  95. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_application_options.rb +0 -466
  96. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_backtrace.rb +0 -119
  97. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_clean.rb +0 -55
  98. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_cpu_counter.rb +0 -50
  99. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_definitions.rb +0 -79
  100. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_directory_task.rb +0 -63
  101. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_dsl.rb +0 -40
  102. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_early_time.rb +0 -31
  103. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_extension.rb +0 -59
  104. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_file_creation_task.rb +0 -56
  105. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_file_list.rb +0 -627
  106. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_file_list_path_map.rb +0 -8
  107. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_file_task.rb +0 -186
  108. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_file_utils.rb +0 -309
  109. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_ftp_file.rb +0 -74
  110. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_functional.rb +0 -482
  111. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_invocation_chain.rb +0 -64
  112. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_linked_list.rb +0 -84
  113. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_makefile_loader.rb +0 -46
  114. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_multi_task.rb +0 -58
  115. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_name_space.rb +0 -57
  116. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_package_task.rb +0 -79
  117. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_path_map.rb +0 -168
  118. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_path_map_explode.rb +0 -34
  119. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_path_map_partial.rb +0 -18
  120. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_pseudo_status.rb +0 -21
  121. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_rake_test_loader.rb +0 -20
  122. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_reduce_compat.rb +0 -26
  123. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_require.rb +0 -40
  124. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_rules.rb +0 -388
  125. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_scope.rb +0 -44
  126. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task.rb +0 -392
  127. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_argument_parsing.rb +0 -109
  128. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_arguments.rb +0 -127
  129. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_lib.rb +0 -9
  130. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_manager.rb +0 -178
  131. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_manager_argument_resolution.rb +0 -19
  132. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_task_with_arguments.rb +0 -171
  133. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_test_task.rb +0 -141
  134. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_thread_pool.rb +0 -142
  135. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_top_level_functions.rb +0 -71
  136. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_rake_win32.rb +0 -72
  137. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_thread_history_display.rb +0 -101
  138. data/vendor/bundle/ruby/2.1.0/gems/rake-10.3.2/test/test_trace_output.rb +0 -52
  139. data/vendor/bundle/ruby/2.1.0/specifications/rake-10.3.2.gemspec +0 -45
@@ -1,627 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
-
3
- class TestRakeFileList < Rake::TestCase
4
- FileList = Rake::FileList
5
-
6
- def setup
7
- super
8
-
9
- FileUtils.mkdir "CVS" rescue nil
10
- FileUtils.mkdir ".svn" rescue nil
11
- @cdir = "cfiles"
12
- FileUtils.mkdir @cdir rescue nil
13
- FileUtils.touch ".dummy"
14
- FileUtils.touch "x.bak"
15
- FileUtils.touch "x~"
16
- FileUtils.touch "core"
17
- FileUtils.touch "x.c"
18
- FileUtils.touch "xyz.c"
19
- FileUtils.touch "abc.c"
20
- FileUtils.touch "abc.h"
21
- FileUtils.touch "abc.x"
22
- FileUtils.touch "existing"
23
-
24
- open 'xyzzy.txt', 'w' do |io|
25
- io.puts 'x'
26
- io.puts 'XYZZY'
27
- end
28
-
29
- end
30
-
31
- def test_delegating_methods_do_not_include_to_a_or_to_ary
32
- assert ! FileList::DELEGATING_METHODS.include?("to_a"), "should not include to_a"
33
- assert ! FileList::DELEGATING_METHODS.include?(:to_a), "should not include to_a"
34
- assert ! FileList::DELEGATING_METHODS.include?("to_ary"), "should not include to_ary"
35
- assert ! FileList::DELEGATING_METHODS.include?(:to_ary), "should not include to_ary"
36
- end
37
-
38
- def test_create
39
- fl = FileList.new
40
- assert_equal 0, fl.size
41
- end
42
-
43
- def test_create_with_args
44
- fl = FileList.new("*.c", "x")
45
- assert_equal ["abc.c", "x.c", "xyz.c", "x"].sort,
46
- fl.sort
47
- end
48
-
49
- def test_create_with_block
50
- fl = FileList.new { |f| f.include("x") }
51
- assert_equal ["x"], fl.resolve
52
- end
53
-
54
- def test_create_with_brackets
55
- fl = FileList["*.c", "x"]
56
- assert_equal ["abc.c", "x.c", "xyz.c", "x"].sort,
57
- fl.sort
58
- end
59
-
60
- def test_create_with_brackets_and_filelist
61
- fl = FileList[FileList["*.c", "x"]]
62
- assert_equal ["abc.c", "x.c", "xyz.c", "x"].sort,
63
- fl.sort
64
- end
65
-
66
- def test_include_with_another_array
67
- fl = FileList.new.include(["x", "y", "z"])
68
- assert_equal ["x", "y", "z"].sort, fl.sort
69
- end
70
-
71
- def test_include_with_another_filelist
72
- fl = FileList.new.include(FileList["*.c", "x"])
73
- assert_equal ["abc.c", "x.c", "xyz.c", "x"].sort,
74
- fl.sort
75
- end
76
-
77
- def test_append
78
- fl = FileList.new
79
- fl << "a.rb" << "b.rb"
80
- assert_equal ['a.rb', 'b.rb'], fl
81
- end
82
-
83
- def test_add_many
84
- fl = FileList.new
85
- fl.include %w(a d c)
86
- fl.include('x', 'y')
87
- assert_equal ['a', 'd', 'c', 'x', 'y'], fl
88
- assert_equal ['a', 'd', 'c', 'x', 'y'], fl.resolve
89
- end
90
-
91
- def test_add_return
92
- f = FileList.new
93
- g = f << "x"
94
- assert_equal f.object_id, g.object_id
95
- h = f.include("y")
96
- assert_equal f.object_id, h.object_id
97
- end
98
-
99
- def test_match
100
- fl = FileList.new
101
- fl.include '*.c'
102
-
103
- assert_equal %w[abc.c x.c xyz.c], fl.sort
104
- end
105
-
106
- def test_add_matching
107
- fl = FileList.new
108
- fl << "a.java"
109
- fl.include '*.c'
110
-
111
- assert_equal %w[a.java abc.c x.c xyz.c], fl.sort
112
- end
113
-
114
- def test_multiple_patterns
115
- fl = FileList.new
116
- fl.include('*.z', '*foo*')
117
-
118
- assert_equal [], fl
119
-
120
- fl.include('*.c', '*xist*')
121
- assert_equal %w[x.c xyz.c abc.c existing].sort, fl.sort
122
- end
123
-
124
- def test_square_bracket_pattern
125
- fl = FileList.new
126
- fl.include("abc.[ch]")
127
- assert fl.size == 2
128
- assert fl.include?("abc.c")
129
- assert fl.include?("abc.h")
130
- end
131
-
132
- def test_curly_bracket_pattern
133
- fl = FileList.new
134
- fl.include("abc.{c,h}")
135
- assert fl.size == 2
136
- assert fl.include?("abc.c")
137
- assert fl.include?("abc.h")
138
- end
139
-
140
- def test_reject
141
- fl = FileList.new
142
- fl.include %w(x.c abc.c xyz.c existing)
143
- fl.reject! { |fn| fn =~ /^x/ }
144
- assert_equal %w[abc.c existing], fl
145
- end
146
-
147
- def test_exclude
148
- fl = FileList['x.c', 'abc.c', 'xyz.c', 'existing']
149
- fl.each { |fn| touch fn, :verbose => false }
150
-
151
- x = fl.exclude(%r{^x.+\.})
152
-
153
- assert_equal FileList, x.class
154
- assert_equal %w(x.c abc.c existing), fl
155
- assert_equal fl.object_id, x.object_id
156
-
157
- fl.exclude('*.c')
158
-
159
- assert_equal ['existing'], fl
160
-
161
- fl.exclude('existing')
162
-
163
- assert_equal [], fl
164
- end
165
-
166
- def test_excluding_via_block
167
- fl = FileList['a.c', 'b.c', 'xyz.c']
168
- fl.exclude { |fn| fn.pathmap('%n') == 'xyz' }
169
- assert fl.excluded_from_list?("xyz.c"), "Should exclude xyz.c"
170
- assert_equal ['a.c', 'b.c'], fl
171
- end
172
-
173
- def test_exclude_return_on_create
174
- fl = FileList['*'].exclude(/.*\.[hcx]$/)
175
- assert_equal %w[cfiles existing xyzzy.txt], fl.sort
176
- assert_equal FileList, fl.class
177
- end
178
-
179
- def test_exclude_with_string_return_on_create
180
- fl = FileList['*'].exclude('abc.c')
181
- assert_equal %w[abc.h abc.x cfiles existing x.c xyz.c xyzzy.txt], fl.sort
182
- assert_equal FileList, fl.class
183
- end
184
-
185
- def test_default_exclude
186
- fl = FileList.new
187
- fl.clear_exclude
188
- fl.include("**/*~", "**/*.bak", "**/core")
189
- assert fl.member?("core"), "Should include core"
190
- assert fl.member?("x.bak"), "Should include .bak files"
191
- end
192
-
193
- def test_unique
194
- fl = FileList.new
195
- fl << "x.c" << "a.c" << "b.rb" << "a.c"
196
- assert_equal ['x.c', 'a.c', 'b.rb', 'a.c'], fl
197
- fl.uniq!
198
- assert_equal ['x.c', 'a.c', 'b.rb'], fl
199
- end
200
-
201
- def test_to_string
202
- fl = FileList.new
203
- fl << "a.java" << "b.java"
204
- assert_equal "a.java b.java", fl.to_s
205
- assert_equal "a.java b.java", "#{fl}"
206
- end
207
-
208
- def test_to_array
209
- fl = FileList['a.java', 'b.java']
210
- assert_equal ['a.java', 'b.java'], fl.to_a
211
- assert_equal Array, fl.to_a.class
212
- assert_equal ['a.java', 'b.java'], fl.to_ary
213
- assert_equal Array, fl.to_ary.class
214
- end
215
-
216
- def test_to_s_pending
217
- fl = FileList['abc.*']
218
- result = fl.to_s
219
- assert_match(%r{abc\.c}, result)
220
- assert_match(%r{abc\.h}, result)
221
- assert_match(%r{abc\.x}, result)
222
- assert_match(%r{(abc\..\b ?){2}}, result)
223
- end
224
-
225
- def test_inspect_pending
226
- fl = FileList['abc.*']
227
- result = fl.inspect
228
- assert_match(%r{"abc\.c"}, result)
229
- assert_match(%r{"abc\.h"}, result)
230
- assert_match(%r{"abc\.x"}, result)
231
- assert_match(%r|^\[("abc\..", ){2}"abc\.."\]$|, result)
232
- end
233
-
234
- def test_sub
235
- fl = FileList["*.c"]
236
- f2 = fl.sub(/\.c$/, ".o")
237
- assert_equal FileList, f2.class
238
- assert_equal ["abc.o", "x.o", "xyz.o"].sort,
239
- f2.sort
240
- f3 = fl.gsub(/\.c$/, ".o")
241
- assert_equal FileList, f3.class
242
- assert_equal ["abc.o", "x.o", "xyz.o"].sort,
243
- f3.sort
244
- end
245
-
246
- def test_claim_to_be_a_kind_of_array
247
- fl = FileList['*.c']
248
- assert fl.is_a?(Array)
249
- assert fl.kind_of?(Array)
250
- end
251
-
252
- def test_claim_to_be_a_kind_of_filelist
253
- fl = FileList['*.c']
254
- assert fl.is_a?(FileList)
255
- assert fl.kind_of?(FileList)
256
- end
257
-
258
- def test_claim_to_be_a_filelist_instance
259
- fl = FileList['*.c']
260
- assert fl.instance_of?(FileList)
261
- end
262
-
263
- def test_dont_claim_to_be_an_array_instance
264
- fl = FileList['*.c']
265
- assert ! fl.instance_of?(Array)
266
- end
267
-
268
- def test_sub!
269
- f = "x/a.c"
270
- fl = FileList[f, "x/b.c"]
271
- res = fl.sub!(/\.c$/, ".o")
272
- assert_equal ["x/a.o", "x/b.o"].sort, fl.sort
273
- assert_equal "x/a.c", f
274
- assert_equal fl.object_id, res.object_id
275
- end
276
-
277
- def test_sub_with_block
278
- fl = FileList["src/org/onestepback/a.java", "src/org/onestepback/b.java"]
279
- # The block version doesn't work the way I want it to ...
280
- # f2 = fl.sub(%r{^src/(.*)\.java$}) { |x| "classes/" + $1 + ".class" }
281
- f2 = fl.sub(%r{^src/(.*)\.java$}, "classes/\\1.class")
282
- assert_equal [
283
- "classes/org/onestepback/a.class",
284
- "classes/org/onestepback/b.class"
285
- ].sort,
286
- f2.sort
287
- end
288
-
289
- def test_string_ext
290
- assert_equal "one.net", "one.two".ext("net")
291
- assert_equal "one.net", "one.two".ext(".net")
292
- assert_equal "one.net", "one".ext("net")
293
- assert_equal "one.net", "one".ext(".net")
294
- assert_equal "one.two.net", "one.two.c".ext(".net")
295
- assert_equal "one/two.net", "one/two.c".ext(".net")
296
- assert_equal "one.x/two.net", "one.x/two.c".ext(".net")
297
- assert_equal "one.x/two.net", "one.x/two".ext(".net")
298
- assert_equal ".onerc.net", ".onerc.dot".ext("net")
299
- assert_equal ".onerc.net", ".onerc".ext("net")
300
- assert_equal ".a/.onerc.net", ".a/.onerc".ext("net")
301
- assert_equal "one", "one.two".ext('')
302
- assert_equal "one", "one.two".ext
303
- assert_equal ".one", ".one.two".ext
304
- assert_equal ".one", ".one".ext
305
- assert_equal ".", ".".ext("c")
306
- assert_equal "..", "..".ext("c")
307
- # These only need to work in windows
308
- if Rake::Win32.windows?
309
- assert_equal "one.x\\two.net", "one.x\\two.c".ext(".net")
310
- assert_equal "one.x\\two.net", "one.x\\two".ext(".net")
311
- end
312
- end
313
-
314
- def test_filelist_ext
315
- assert_equal FileList['one.c', '.one.c'],
316
- FileList['one.net', '.one'].ext('c')
317
- end
318
-
319
- def test_gsub
320
- fl = FileList["*.c"]
321
- f2 = fl.gsub(/a/, "A")
322
- assert_equal ["Abc.c", "x.c", "xyz.c"].sort,
323
- f2.sort
324
- end
325
-
326
- def test_gsub!
327
- f = FileList["*.c"]
328
- f.gsub!(/a/, "A")
329
- assert_equal ["Abc.c", "x.c", "xyz.c"].sort,
330
- f.sort
331
- end
332
-
333
- def test_egrep_returns_0_if_no_matches
334
- files = FileList['test/lib/*_test.rb'].exclude("test/lib/filelist_test.rb")
335
- assert_equal 0, files.egrep(/XYZZY/) { }
336
- end
337
-
338
- def test_egrep_with_output
339
- files = FileList['*.txt']
340
-
341
- out, = capture_io do
342
- files.egrep(/XYZZY/)
343
- end
344
-
345
- assert_equal "xyzzy.txt:2:XYZZY\n", out
346
- end
347
-
348
- def test_egrep_with_block
349
- files = FileList['*.txt']
350
- found = nil
351
-
352
- files.egrep(/XYZZY/) do |fn, ln, line|
353
- found = [fn, ln, line]
354
- end
355
-
356
- assert_equal ["xyzzy.txt", 2, "XYZZY\n"], found
357
- end
358
-
359
- def test_egrep_with_error
360
- files = FileList['*.txt']
361
-
362
- _, err = capture_io do
363
- files.egrep(/XYZZY/) do |fn, ln, line |
364
- raise "_EGREP_FAILURE_"
365
- end
366
- end
367
-
368
- assert_equal "Error while processing 'xyzzy.txt': _EGREP_FAILURE_\n", err
369
- end
370
-
371
- def test_existing
372
- fl = FileList['abc.c', 'notthere.c']
373
- assert_equal ["abc.c"], fl.existing
374
- assert fl.existing.is_a?(FileList)
375
- end
376
-
377
- def test_existing!
378
- fl = FileList['abc.c', 'notthere.c']
379
- result = fl.existing!
380
- assert_equal ["abc.c"], fl
381
- assert_equal fl.object_id, result.object_id
382
- end
383
-
384
- def test_ignore_special
385
- f = FileList['*']
386
- assert ! f.include?("CVS"), "Should not contain CVS"
387
- assert ! f.include?(".svn"), "Should not contain .svn"
388
- assert ! f.include?(".dummy"), "Should not contain dot files"
389
- assert ! f.include?("x.bak"), "Should not contain .bak files"
390
- assert ! f.include?("x~"), "Should not contain ~ files"
391
- assert ! f.include?("core"), "Should not contain core files"
392
- end
393
-
394
- def test_clear_ignore_patterns
395
- f = FileList['*', '.svn']
396
- f.clear_exclude
397
- assert f.include?("abc.c")
398
- assert f.include?("xyz.c")
399
- assert f.include?("CVS")
400
- assert f.include?(".svn")
401
- assert f.include?("x.bak")
402
- assert f.include?("x~")
403
- end
404
-
405
- def test_exclude_with_alternate_file_seps
406
- fl = FileList.new
407
- assert fl.excluded_from_list?("x/CVS/y")
408
- assert fl.excluded_from_list?("x\\CVS\\y")
409
- assert fl.excluded_from_list?("x/.svn/y")
410
- assert fl.excluded_from_list?("x\\.svn\\y")
411
- assert fl.excluded_from_list?("x/core")
412
- assert fl.excluded_from_list?("x\\core")
413
- end
414
-
415
- def test_add_default_exclude_list
416
- fl = FileList.new
417
- fl.exclude(/~\d+$/)
418
- assert fl.excluded_from_list?("x/CVS/y")
419
- assert fl.excluded_from_list?("x\\CVS\\y")
420
- assert fl.excluded_from_list?("x/.svn/y")
421
- assert fl.excluded_from_list?("x\\.svn\\y")
422
- assert fl.excluded_from_list?("x/core")
423
- assert fl.excluded_from_list?("x\\core")
424
- assert fl.excluded_from_list?("x/abc~1")
425
- end
426
-
427
- def test_basic_array_functions
428
- f = FileList['b', 'c', 'a']
429
- assert_equal 'b', f.first
430
- assert_equal 'b', f[0]
431
- assert_equal 'a', f.last
432
- assert_equal 'a', f[2]
433
- assert_equal 'a', f[-1]
434
- assert_equal ['a', 'b', 'c'], f.sort
435
- f.sort!
436
- assert_equal ['a', 'b', 'c'], f
437
- end
438
-
439
- def test_flatten
440
- assert_equal ['a', 'x.c', 'xyz.c', 'abc.c'].sort,
441
- ['a', FileList['*.c']].flatten.sort
442
- end
443
-
444
- def test_clone_and_dup
445
- a = FileList['a', 'b', 'c']
446
- c = a.clone
447
- d = a.dup
448
- a << 'd'
449
- assert_equal ['a', 'b', 'c', 'd'], a
450
- assert_equal ['a', 'b', 'c'], c
451
- assert_equal ['a', 'b', 'c'], d
452
- end
453
-
454
- def test_dup_and_clone_replicate_taint
455
- a = FileList['a', 'b', 'c']
456
- a.taint
457
- c = a.clone
458
- d = a.dup
459
- assert c.tainted?, "Clone should be tainted"
460
- assert d.tainted?, "Dup should be tainted"
461
- end
462
-
463
- def test_duped_items_will_thaw
464
- a = FileList['a', 'b', 'c']
465
- a.freeze
466
- d = a.dup
467
- d << 'more'
468
- assert_equal ['a', 'b', 'c', 'more'], d
469
- end
470
-
471
- def test_cloned_items_stay_frozen
472
- a = FileList['a', 'b', 'c']
473
- a.freeze
474
- c = a.clone
475
- assert_raises(TypeError, RuntimeError) do
476
- c << 'more'
477
- end
478
- end
479
-
480
- def test_array_comparisons
481
- fl = FileList['b', 'b']
482
- a = ['b', 'a']
483
- b = ['b', 'b']
484
- c = ['b', 'c']
485
- assert_equal(1, fl <=> a)
486
- assert_equal(0, fl <=> b)
487
- assert_equal(-1, fl <=> c)
488
- assert_equal(-1, a <=> fl)
489
- assert_equal(0, b <=> fl)
490
- assert_equal(1, c <=> fl)
491
- end
492
-
493
- def test_array_equality
494
- a = FileList['a', 'b']
495
- b = ['a', 'b']
496
- assert a == b
497
- assert b == a
498
- # assert a.eql?(b)
499
- # assert b.eql?(a)
500
- assert ! a.equal?(b)
501
- assert ! b.equal?(a)
502
- end
503
-
504
- def test_enumeration_methods
505
- a = FileList['a', 'b']
506
- b = a.map { |it| it.upcase }
507
- assert_equal ['A', 'B'], b
508
- assert_equal FileList, b.class
509
-
510
- b = a.map { |it| it.upcase }
511
- assert_equal ['A', 'B'], b
512
- assert_equal FileList, b.class
513
-
514
- b = a.sort
515
- assert_equal ['a', 'b'], b
516
- assert_equal FileList, b.class
517
-
518
- b = a.sort_by { |it| it }
519
- assert_equal ['a', 'b'], b
520
- assert_equal FileList, b.class
521
-
522
- b = a.select { |it| it == 'b' }
523
- assert_equal ['b'], b
524
- assert_equal FileList, b.class
525
-
526
- b = a.select { |it| it.size == 1 }
527
- assert_equal ['a', 'b'], b
528
- assert_equal FileList, b.class
529
-
530
- b = a.reject { |it| it == 'b' }
531
- assert_equal ['a'], b
532
- assert_equal FileList, b.class
533
-
534
- b = a.grep(/./)
535
- assert_equal ['a', 'b'], b
536
- assert_equal FileList, b.class
537
-
538
- b = a.partition { |it| it == 'b' }
539
- assert_equal [['b'], ['a']], b
540
- assert_equal Array, b.class
541
- assert_equal FileList, b[0].class
542
- assert_equal FileList, b[1].class
543
-
544
- b = a.zip(['x', 'y']).to_a
545
- assert_equal [['a', 'x'], ['b', 'y']], b
546
- assert_equal Array, b.class
547
- assert_equal Array, b[0].class
548
- assert_equal Array, b[1].class
549
- end
550
-
551
- def test_array_operators
552
- a = ['a', 'b']
553
- b = ['c', 'd']
554
- f = FileList['x', 'y']
555
- g = FileList['w', 'z']
556
-
557
- r = f + g
558
- assert_equal ['x', 'y', 'w', 'z'], r
559
- assert_equal FileList, r.class
560
-
561
- r = a + g
562
- assert_equal ['a', 'b', 'w', 'z'], r
563
- assert_equal Array, r.class
564
-
565
- r = f + b
566
- assert_equal ['x', 'y', 'c', 'd'], r
567
- assert_equal FileList, r.class
568
-
569
- r = FileList['w', 'x', 'y', 'z'] - f
570
- assert_equal ['w', 'z'], r
571
- assert_equal FileList, r.class
572
-
573
- r = FileList['w', 'x', 'y', 'z'] & f
574
- assert_equal ['x', 'y'], r
575
- assert_equal FileList, r.class
576
-
577
- r = f * 2
578
- assert_equal ['x', 'y', 'x', 'y'], r
579
- assert_equal FileList, r.class
580
-
581
- r = f * ','
582
- assert_equal 'x,y', r
583
- assert_equal String, r.class
584
-
585
- r = f | ['a', 'x']
586
- assert_equal ['a', 'x', 'y'].sort, r.sort
587
- assert_equal FileList, r.class
588
- end
589
-
590
- def test_other_array_returning_methods
591
- f = FileList['a', nil, 'b']
592
- r = f.compact
593
- assert_equal ['a', 'b'], r
594
- assert_equal FileList, r.class
595
-
596
- f = FileList['a', 'b']
597
- r = f.concat(['x', 'y'])
598
- assert_equal ['a', 'b', 'x', 'y'], r
599
- assert_equal FileList, r.class
600
-
601
- f = FileList['a', ['b', 'c'], FileList['d', 'e']]
602
- r = f.flatten
603
- assert_equal ['a', 'b', 'c', 'd', 'e'], r
604
- assert_equal FileList, r.class
605
-
606
- f = FileList['a', 'b', 'a']
607
- r = f.uniq
608
- assert_equal ['a', 'b'], r
609
- assert_equal FileList, r.class
610
-
611
- f = FileList['a', 'b', 'c', 'd']
612
- r = f.values_at(1, 3)
613
- assert_equal ['b', 'd'], r
614
- assert_equal FileList, r.class
615
- end
616
-
617
- def test_file_utils_can_use_filelists
618
- cfiles = FileList['*.c']
619
-
620
- cp cfiles, @cdir, :verbose => false
621
-
622
- assert File.exist?(File.join(@cdir, 'abc.c'))
623
- assert File.exist?(File.join(@cdir, 'xyz.c'))
624
- assert File.exist?(File.join(@cdir, 'x.c'))
625
- end
626
-
627
- end
@@ -1,8 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
-
3
- class TestRakeFileListPathMap < Rake::TestCase
4
- def test_file_list_supports_pathmap
5
- assert_equal ['a', 'b'], FileList['dir/a.rb', 'dir/b.rb'].pathmap("%n")
6
- end
7
- end
8
-