masterview 0.3.2 → 0.3.3

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 (73) hide show
  1. data/CHANGELOG +15 -0
  2. data/RELEASE_NOTES +26 -2
  3. data/Rakefile +35 -10
  4. data/ReleaseAnnouncement +124 -0
  5. data/TODO +6 -0
  6. data/doc/configuration.html +39 -0
  7. data/doc/guide.html +14 -13
  8. data/doc/index.html +1 -1
  9. data/doc/installation.html +1 -1
  10. data/doc/media_list.html +19 -3
  11. data/examples/rails_app_config/masterview/settings.rb +5 -0
  12. data/lib/masterview/analyzer.rb +13 -1
  13. data/lib/masterview/directives/form.rb +4 -1
  14. data/lib/masterview/directives/stylesheet_link.rb +1 -1
  15. data/lib/masterview/extras/auto_copy.rb +80 -0
  16. data/lib/masterview/initializer.rb +87 -4
  17. data/lib/masterview/io.rb +11 -0
  18. data/lib/masterview/masterview_version.rb +1 -1
  19. data/lib/masterview/mtime_tracking_hash.rb +12 -3
  20. data/lib/masterview/parser.rb +2 -2
  21. data/lib/masterview/rails_ext/action_controller_reparse_checking.rb +10 -9
  22. data/lib/masterview/rails_ext/action_view_erb_direct.rb +53 -34
  23. data/lib/masterview/rails_ext/short_path_calc.rb +127 -0
  24. data/lib/masterview/template_spec.rb +27 -9
  25. data/lib/masterview.rb +1 -1
  26. data/test/tmp/dst/public/images/FOO.GIF +1 -0
  27. data/test/tmp/dst/public/images/bar/baz.png +1 -0
  28. data/test/tmp/dst/public/images/blank.gif +1 -0
  29. data/test/tmp/dst/public/images/cat/dog/mouse.JPG +1 -0
  30. data/test/tmp/dst/public/images/star.jpg +1 -0
  31. data/test/tmp/dst/public/images/test.png +1 -0
  32. data/test/tmp/dst/public/javascript/custom/script.js +1 -0
  33. data/test/tmp/dst/public/javascript/nested/custom/foo.js +1 -0
  34. data/test/tmp/dst/public/javascript/prototype.js +1 -0
  35. data/test/tmp/dst/public/javascript/scriptaculous.js +1 -0
  36. data/test/tmp/dst/public/stylesheets/client/standard/great1.css +1 -0
  37. data/test/tmp/dst/public/stylesheets/custom/blue.css +1 -0
  38. data/test/tmp/dst/public/stylesheets/style.css +1 -0
  39. data/test/tmp/src/css/client/standard/great1.css +1 -0
  40. data/test/tmp/src/css/custom/blue.css +1 -0
  41. data/test/tmp/src/css/style.css +1 -0
  42. data/test/tmp/src/images/FOO.GIF +1 -0
  43. data/test/tmp/src/images/bar/baz.png +1 -0
  44. data/test/tmp/src/images/blank.gif +1 -0
  45. data/test/tmp/src/images/cat/dog/mouse.JPG +1 -0
  46. data/test/tmp/src/images/star.jpg +1 -0
  47. data/test/tmp/src/images/test.png +1 -0
  48. data/test/tmp/src/mixed/FOO.GIF +1 -0
  49. data/test/tmp/src/mixed/bar/baz.png +1 -0
  50. data/test/tmp/src/mixed/blank.gif +1 -0
  51. data/test/tmp/src/mixed/cat/dog/mouse.JPG +1 -0
  52. data/test/tmp/src/mixed/client/standard/great1.css +1 -0
  53. data/test/tmp/src/mixed/custom/blue.css +1 -0
  54. data/test/tmp/src/mixed/custom/script.js +1 -0
  55. data/test/tmp/src/mixed/nested/custom/foo.js +1 -0
  56. data/test/tmp/src/mixed/prototype.js +1 -0
  57. data/test/tmp/src/mixed/scriptaculous.js +1 -0
  58. data/test/tmp/src/mixed/star.jpg +1 -0
  59. data/test/tmp/src/mixed/style.css +1 -0
  60. data/test/tmp/src/mixed/test.png +1 -0
  61. data/test/tmp/src/scripts/custom/script.js +1 -0
  62. data/test/tmp/src/scripts/nested/custom/foo.js +1 -0
  63. data/test/tmp/src/scripts/prototype.js +1 -0
  64. data/test/tmp/src/scripts/scriptaculous.js +1 -0
  65. data/test/unit/auto_copy_test.rb +181 -0
  66. data/test/unit/directive_form_test.rb +63 -0
  67. data/test/unit/directive_stylesheet_link_test.rb +3 -3
  68. data/test/unit/file_mio_test.rb +24 -8
  69. data/test/unit/mtime_string_hash_mio_tree_test.rb +19 -6
  70. data/test/unit/short_path_calc_test.rb +135 -0
  71. data/test/unit/string_hash_mio_test.rb +18 -5
  72. data/test/unit/template_test.rb +37 -0
  73. metadata +85 -2
@@ -0,0 +1,135 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'test/unit'
4
+ currentPath = File.dirname(__FILE__)
5
+ require File.join( currentPath, '../../lib/masterview' )
6
+ require File.join( currentPath, '../../lib/masterview/rails_ext/short_path_calc' )
7
+
8
+ class TestShortPathCalc < Test::Unit::TestCase
9
+
10
+ # we'll just pretend we are running in rails and thus cwd would be Rails root and app/views would be under us
11
+ RAILS_ROOT_PATHNAME = Pathname.for_path('.').expand_path
12
+ RAILS_ROOT_STR = RAILS_ROOT_PATHNAME.to_s
13
+ RAILS_ROOT_VIEW_DIR = './app/views'
14
+ RAILS_ROOT_VIEW_PATHNAME = Pathname.for_path(RAILS_ROOT_VIEW_DIR)
15
+ RR_VIEW_EXP_PATHNAME = RAILS_ROOT_VIEW_PATHNAME.expand_path
16
+
17
+ RV_PATHNAME = RAILS_ROOT_VIEW_PATHNAME.expand_path
18
+ RV_ABS = RV_PATHNAME.to_s # '/home/foo/app/views'
19
+ RV_REL = RV_PATHNAME.relative_path_from(RAILS_ROOT_PATHNAME).to_s # './script/../config/../app/views'
20
+
21
+ PLUGIN_PATH = RV_PATHNAME.join('../../vendor/plugins/bar/app/views')
22
+ PLUGIN_ABS = PLUGIN_PATH.to_s
23
+ PLUGIN_REL = PLUGIN_PATH.relative_path_from(RAILS_ROOT_PATHNAME) # 'vendor/plugins/bar/app/views'
24
+ GEM_ABS = RAILS_ROOT_STR.slice(/[^\/]*\//) + 'usr/lib/ruby/cat/app/views' # build /usr/lib/... on *nix or c:/usr/lib/ on windows
25
+ GEM_REL = Pathname.for_path(GEM_ABS).relative_path_from(RAILS_ROOT_PATHNAME)
26
+
27
+ ALL_VIEW_BASES = [RV_ABS, RV_REL, PLUGIN_ABS, PLUGIN_REL, GEM_ABS, GEM_REL]
28
+
29
+ SHORT_FILE = 'store/list'
30
+ RV_ABS_FILE = RV_PATHNAME.join('store/list').to_s
31
+ PLUGIN_ABS_FILE = PLUGIN_PATH.join('store/list').to_s
32
+ GEM_ABS_FILE = Pathname.join(GEM_ABS, 'store/list').to_s
33
+ RV_TO_PLUGIN_FILE = Pathname.for_path(PLUGIN_ABS_FILE).relative_path_from(RV_PATHNAME).to_s # '../../vendor/plugins/app/views/store/list'
34
+ PLUGIN_TO_RV_FILE = Pathname.for_path(RV_ABS_FILE).relative_path_from(PLUGIN_PATH).to_s #'../../../../../app/views/store/list'
35
+ GEM_TO_RV_FILE = Pathname.for_path(RV_ABS_FILE).relative_path_from(Pathname.for_path(GEM_ABS)).to_s # '../../../../../../home/foo/app/views/store/list'
36
+
37
+ def setup
38
+ @old_rails_view_dir_path = MasterView::RailsExt::ShortPathCalculator.mv_path
39
+ MasterView::RailsExt::ShortPathCalculator.mv_path = RAILS_ROOT_VIEW_DIR
40
+ end
41
+
42
+ def teardown
43
+ MasterView::RailsExt::ShortPathCalculator.mv_path = @old_rails_view_dir_path
44
+ end
45
+
46
+ ## SUCCESS tests - can find short path in RAILS_ROOT_VIEW_DIR
47
+
48
+ # in rv abs, short file
49
+ def test_rv_abs_short_file
50
+ verify_path(SHORT_FILE, RV_ABS, SHORT_FILE)
51
+ verify_path(SHORT_FILE, RV_ABS, SHORT_FILE)
52
+ end
53
+
54
+ # in rv relative, short file
55
+ def test_rv_rel_short_file
56
+ verify_path(SHORT_FILE, RV_REL, SHORT_FILE)
57
+ verify_path(SHORT_FILE, RV_REL, SHORT_FILE)
58
+ end
59
+
60
+
61
+ # in plugin abs, relative path to rv file
62
+ def test_plugin_abs_to_rv
63
+ verify_path(SHORT_FILE, PLUGIN_ABS, PLUGIN_TO_RV_FILE)
64
+ verify_path(SHORT_FILE, PLUGIN_ABS, PLUGIN_TO_RV_FILE)
65
+ end
66
+
67
+ # in plugin rel, relative path to rv file
68
+ def test_plugin_rel_to_rv
69
+ verify_path(SHORT_FILE, PLUGIN_REL, PLUGIN_TO_RV_FILE)
70
+ end
71
+
72
+ # in gem abs, relative path to rv file
73
+ def test_gem_abs_to_rv
74
+ verify_path(SHORT_FILE, GEM_ABS, GEM_TO_RV_FILE)
75
+ end
76
+
77
+ # in gem relative, relative path to rv file
78
+ def test_gem_rel_to_rv
79
+ verify_path(SHORT_FILE, GEM_REL, GEM_TO_RV_FILE)
80
+ end
81
+
82
+ # absolute rv file any base
83
+ def test_rv_file_abs
84
+ ALL_VIEW_BASES.each do |view_base|
85
+ verify_path(SHORT_FILE, view_base, RV_ABS_FILE)
86
+ end
87
+ end
88
+
89
+
90
+ ## Failure tests - combination of base and template is not in RAILS_ROOT_VIEW_DIR, returns nil
91
+
92
+ # in rv, relative path to plugin file, returns nil
93
+ def test_rv_plugin_file
94
+ verify_path(nil, RV_ABS, RV_TO_PLUGIN_FILE)
95
+ verify_path(nil, RV_REL, RV_TO_PLUGIN_FILE)
96
+ end
97
+
98
+ # in plugin, short path returns nil
99
+ def test_plugin_short_file
100
+ verify_path(nil, PLUGIN_ABS, SHORT_FILE)
101
+ verify_path(nil, PLUGIN_REL, SHORT_FILE)
102
+ end
103
+
104
+ # in gem, short path returns nil
105
+ def test_gem_short_file
106
+ verify_path(nil, GEM_ABS, SHORT_FILE)
107
+ verify_path(nil, GEM_REL, SHORT_FILE)
108
+ end
109
+
110
+ # absolute plugin file any base
111
+ def test_plugin_file_abs
112
+ ALL_VIEW_BASES.each do |view_base|
113
+ verify_path(nil, view_base, PLUGIN_ABS_FILE)
114
+ end
115
+ end
116
+
117
+ # absolute plugin file any base
118
+ def test_gem_file_abs
119
+ ALL_VIEW_BASES.each do |view_base|
120
+ verify_path(nil, view_base, GEM_ABS_FILE)
121
+ end
122
+ end
123
+
124
+
125
+
126
+
127
+ private
128
+
129
+ # make it easier for us to type
130
+ def verify_path(expected, base_path, template_path)
131
+ assert_equal(expected, MasterView::RailsExt::ShortPathCalculator.calc_short_path(base_path, template_path))
132
+ end
133
+
134
+
135
+ end
@@ -121,7 +121,7 @@ class TestStringHashMIO < Test::Unit::TestCase
121
121
 
122
122
  file_content_strings = [ 'hello', 'world']
123
123
  file_content = file_content_strings.join('')
124
- IOMgr.template.path( TestWritePath).write do |f|
124
+ IOMgr.template.path( TestWritePath).write do |f|
125
125
  file_content_strings.each { |str| f.write(str) }
126
126
  end
127
127
  verify_mio_handler_read( TestWritePath, file_content, IOMgr.template, @template_hash )
@@ -143,6 +143,19 @@ class TestStringHashMIO < Test::Unit::TestCase
143
143
  assert_equal true, IOMgr.template.path( TestWritePath).exist?
144
144
  end
145
145
 
146
+ def test_remove
147
+ IOMgr.template.path( TestWritePath).write("foo")
148
+ assert_equal true, IOMgr.template.path( TestWritePath).exist?
149
+ IOMgr.template.path(TestWritePath).remove
150
+ assert_equal false, IOMgr.template.path( TestWritePath).exist?
151
+ end
152
+
153
+ def test_remove_file_doesnt_exist
154
+ @template_hash.clear
155
+ assert_equal false, IOMgr.template.path( TestWritePath).exist?
156
+ assert_nil(IOMgr.template.path(TestWritePath).remove)
157
+ end
158
+
146
159
  def test_identical
147
160
  @template_hash.clear
148
161
  assert_equal false, IOMgr.template.path( TestWritePath).identical?("hello\nworld")
@@ -198,7 +211,7 @@ class TestStringHashMIO < Test::Unit::TestCase
198
211
  assert_equal 'sub/two/baz.txt', found[2].pathname.to_s
199
212
  end
200
213
 
201
- def test_findfiles_single_dir_pattern
214
+ def test_findfiles_single_dir_pattern
202
215
  @template_hash.clear
203
216
  IOMgr.template.path( 'sub/two/apple.txt').write('foo')
204
217
  IOMgr.template.path( 'sub/two/bar.log').write('foo')
@@ -211,7 +224,7 @@ class TestStringHashMIO < Test::Unit::TestCase
211
224
  assert_equal 'sub/two/baz.txt', found[1].pathname.to_s
212
225
  end
213
226
 
214
- def test_findfiles_multi_dir_root
227
+ def test_findfiles_multi_dir_root
215
228
  @template_hash.clear
216
229
  IOMgr.template.path( 'one/two/three.txt').write('foo')
217
230
  IOMgr.template.path( 'sub/two/apple.txt').write('foo')
@@ -229,7 +242,7 @@ class TestStringHashMIO < Test::Unit::TestCase
229
242
  assert_equal 'sub/two/baz.txt', found[3].pathname.to_s
230
243
  end
231
244
 
232
- def test_findfiles_multi_dir_pattern
245
+ def test_findfiles_multi_dir_pattern
233
246
  @template_hash.clear
234
247
  IOMgr.template.path( 'one/two/three.txt').write('foo')
235
248
  IOMgr.template.path( 'sub/two/apple.txt').write('foo')
@@ -245,7 +258,7 @@ class TestStringHashMIO < Test::Unit::TestCase
245
258
  assert_equal 'sub/two/baz.txt', found[2].pathname.to_s
246
259
  end
247
260
 
248
- def test_findfiles_multi_dir_pattern_deep
261
+ def test_findfiles_multi_dir_pattern_deep
249
262
  @template_hash.clear
250
263
  IOMgr.template.path( 'one/two/three.txt').write('foo')
251
264
  IOMgr.template.path( 'sub/two/apple.txt').write('foo')
@@ -1153,5 +1153,42 @@ class TestTemplate < Test::Unit::TestCase
1153
1153
  assert_template_result expected, template, :template_pathname => 'one/two_three.four'
1154
1154
  end
1155
1155
 
1156
+ def test_gen_replace
1157
+ template = <<-END
1158
+ <div mv:generate='foo/bar'>
1159
+ Foo
1160
+ <div mv:generate="baz/cat" mv:gen_replace="@content_for_layout">
1161
+ Bar
1162
+ </div>
1163
+ </div>
1164
+ END
1165
+ expected = {
1166
+ 'foo/bar' => "<div>Foo <%= @content_for_layout %></div>",
1167
+ 'baz/cat' => "<div>Bar </div>"
1168
+ }
1169
+ assert_template_result expected, template
1170
+ end
1171
+
1172
+ def test_nested_gen_replace
1173
+ template = <<-END
1174
+ <div mv:generate='foo/bar'>
1175
+ Foo
1176
+ <div mv:generate="baz/cat" mv:gen_replace="@content_for_layout">
1177
+ Bar
1178
+ <div mv:generate="dog/egg" mv:gen_replace="yield :foo">
1179
+ Car
1180
+ </div>
1181
+ </div>
1182
+ </div>
1183
+ END
1184
+ expected = {
1185
+ 'foo/bar' => "<div>Foo <%= @content_for_layout %></div>",
1186
+ 'baz/cat' => "<div>Bar <%= yield :foo %></div>",
1187
+ 'dog/egg' => "<div>Car </div>"
1188
+ }
1189
+ assert_template_result expected, template
1190
+ end
1191
+
1192
+
1156
1193
 
1157
1194
  end
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: masterview
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.3.2
7
- date: 2007-02-21 00:00:00 -06:00
6
+ version: 0.3.3
7
+ date: 2007-07-01 00:00:00 -05:00
8
8
  summary: A (x)html friendly template engine for rails with the power of layouts, and partials.
9
9
  require_paths:
10
10
  - lib
@@ -34,6 +34,7 @@ files:
34
34
  - lib/rexml
35
35
  - lib/masterview.rb
36
36
  - lib/#ChangeLog#
37
+ - lib/facets/core
37
38
  - lib/facets/ProjectInfo
38
39
  - lib/facets/AUTHORS
39
40
  - lib/facets/CHANGELOG
@@ -105,6 +106,7 @@ files:
105
106
  - lib/masterview/extras/app
106
107
  - lib/masterview/extras/init_logger.rb
107
108
  - lib/masterview/extras/watcher.rb
109
+ - lib/masterview/extras/auto_copy.rb
108
110
  - lib/masterview/extras/admin_auth_mixin.rb
109
111
  - lib/masterview/extras/sample_templates.rb
110
112
  - lib/masterview/extras/init_mv_admin_pages.rb
@@ -128,6 +130,7 @@ files:
128
130
  - lib/masterview/rails_ext/action_controller_erb_direct.rb
129
131
  - lib/masterview/rails_ext/action_view_erb_direct.rb
130
132
  - lib/masterview/rails_ext/action_controller_reparse_checking.rb
133
+ - lib/masterview/rails_ext/short_path_calc.rb
131
134
  - lib/masterview/core_ext/pathname.rb
132
135
  - lib/masterview/core_ext/string.rb
133
136
  - lib/rexml/parsers
@@ -139,6 +142,7 @@ files:
139
142
  - doc/stylesheets
140
143
  - doc/directives.html
141
144
  - doc/guide.html
145
+ - doc/api
142
146
  - doc/screenshots
143
147
  - doc/installation.html
144
148
  - doc/configuration.html
@@ -147,6 +151,7 @@ files:
147
151
  - doc/media_list.html
148
152
  - doc/images
149
153
  - doc/about.html
154
+ - doc/presentations
150
155
  - doc/simple_diagram.html
151
156
  - doc/developer.html
152
157
  - doc/images/masterview_rhtml_rendering_thumbnail_smaller.png
@@ -222,6 +227,7 @@ files:
222
227
  - test/unit/string_hash_mio_test.rb
223
228
  - test/unit/directive_image_tag_test.rb
224
229
  - test/unit/directive_base_test.rb
230
+ - test/unit/auto_copy_test.rb
225
231
  - test/unit/default_generate_mio_filter_test.rb
226
232
  - test/unit/find_directive_parent_test.rb
227
233
  - test/unit/simplified_directive_base_test.rb
@@ -240,6 +246,7 @@ files:
240
246
  - test/unit/deprecated_directive_base_test.rb
241
247
  - test/unit/example_directive_base_old_test.rb
242
248
  - test/unit/deprecated_directive_base_example_test.rb
249
+ - test/unit/short_path_calc_test.rb
243
250
  - test/xtras/config_initialize_standalone.rb
244
251
  - test/xtras/config-mv-logger_config.rb
245
252
  - test/fixtures/configs
@@ -263,6 +270,8 @@ files:
263
270
  - test/tmp/erb
264
271
  - test/tmp/views
265
272
  - test/tmp/templates_src
273
+ - test/tmp/src
274
+ - test/tmp/dst
266
275
  - test/tmp/template/foo.txt
267
276
  - test/tmp/views/product
268
277
  - test/tmp/views/layouts
@@ -276,11 +285,85 @@ files:
276
285
  - test/tmp/views/product/destroy.rhtml
277
286
  - test/tmp/views/layouts/product.rhtml
278
287
  - test/tmp/templates_src/product.html
288
+ - test/tmp/src/images
289
+ - test/tmp/src/css
290
+ - test/tmp/src/scripts
291
+ - test/tmp/src/mixed
292
+ - test/tmp/src/images/blank.gif
293
+ - test/tmp/src/images/star.jpg
294
+ - test/tmp/src/images/test.png
295
+ - test/tmp/src/images/FOO.GIF
296
+ - test/tmp/src/images/bar
297
+ - test/tmp/src/images/cat
298
+ - test/tmp/src/images/bar/baz.png
299
+ - test/tmp/src/images/cat/dog
300
+ - test/tmp/src/images/cat/dog/mouse.JPG
301
+ - test/tmp/src/css/style.css
302
+ - test/tmp/src/css/custom
303
+ - test/tmp/src/css/client
304
+ - test/tmp/src/css/custom/blue.css
305
+ - test/tmp/src/css/client/standard
306
+ - test/tmp/src/css/client/standard/great1.css
307
+ - test/tmp/src/scripts/prototype.js
308
+ - test/tmp/src/scripts/scriptaculous.js
309
+ - test/tmp/src/scripts/custom
310
+ - test/tmp/src/scripts/nested
311
+ - test/tmp/src/scripts/custom/script.js
312
+ - test/tmp/src/scripts/nested/custom
313
+ - test/tmp/src/scripts/nested/custom/foo.js
314
+ - test/tmp/src/mixed/blank.gif
315
+ - test/tmp/src/mixed/star.jpg
316
+ - test/tmp/src/mixed/test.png
317
+ - test/tmp/src/mixed/FOO.GIF
318
+ - test/tmp/src/mixed/bar
319
+ - test/tmp/src/mixed/cat
320
+ - test/tmp/src/mixed/style.css
321
+ - test/tmp/src/mixed/custom
322
+ - test/tmp/src/mixed/client
323
+ - test/tmp/src/mixed/prototype.js
324
+ - test/tmp/src/mixed/scriptaculous.js
325
+ - test/tmp/src/mixed/nested
326
+ - test/tmp/src/mixed/bar/baz.png
327
+ - test/tmp/src/mixed/cat/dog
328
+ - test/tmp/src/mixed/cat/dog/mouse.JPG
329
+ - test/tmp/src/mixed/custom/blue.css
330
+ - test/tmp/src/mixed/custom/script.js
331
+ - test/tmp/src/mixed/client/standard
332
+ - test/tmp/src/mixed/client/standard/great1.css
333
+ - test/tmp/src/mixed/nested/custom
334
+ - test/tmp/src/mixed/nested/custom/foo.js
335
+ - test/tmp/dst/public
336
+ - test/tmp/dst/public/images
337
+ - test/tmp/dst/public/stylesheets
338
+ - test/tmp/dst/public/javascript
339
+ - test/tmp/dst/public/images/FOO.GIF
340
+ - test/tmp/dst/public/images/bar
341
+ - test/tmp/dst/public/images/blank.gif
342
+ - test/tmp/dst/public/images/cat
343
+ - test/tmp/dst/public/images/star.jpg
344
+ - test/tmp/dst/public/images/test.png
345
+ - test/tmp/dst/public/images/bar/baz.png
346
+ - test/tmp/dst/public/images/cat/dog
347
+ - test/tmp/dst/public/images/cat/dog/mouse.JPG
348
+ - test/tmp/dst/public/stylesheets/client
349
+ - test/tmp/dst/public/stylesheets/custom
350
+ - test/tmp/dst/public/stylesheets/style.css
351
+ - test/tmp/dst/public/stylesheets/client/standard
352
+ - test/tmp/dst/public/stylesheets/client/standard/great1.css
353
+ - test/tmp/dst/public/stylesheets/custom/blue.css
354
+ - test/tmp/dst/public/javascript/custom
355
+ - test/tmp/dst/public/javascript/nested
356
+ - test/tmp/dst/public/javascript/prototype.js
357
+ - test/tmp/dst/public/javascript/scriptaculous.js
358
+ - test/tmp/dst/public/javascript/custom/script.js
359
+ - test/tmp/dst/public/javascript/nested/custom
360
+ - test/tmp/dst/public/javascript/nested/custom/foo.js
279
361
  - CHANGELOG
280
362
  - TODO
281
363
  - RELEASE_NOTES
282
364
  - README
283
365
  - MIT-LICENSE
366
+ - ReleaseAnnouncement
284
367
  test_files: []
285
368
 
286
369
  rdoc_options: []