jekyll-minibundle 1.5.1 → 1.6.0

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 (48) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -6
  3. data/README.md +34 -24
  4. data/Rakefile +19 -14
  5. data/jekyll-minibundle.gemspec +5 -4
  6. data/lib/jekyll/minibundle/asset_bundle.rb +24 -4
  7. data/lib/jekyll/minibundle/asset_file_operations.rb +0 -8
  8. data/lib/jekyll/minibundle/asset_file_properties.rb +26 -8
  9. data/lib/jekyll/minibundle/asset_file_registry.rb +57 -21
  10. data/lib/jekyll/minibundle/asset_tag_markup.rb +13 -4
  11. data/lib/jekyll/minibundle/bundle_file.rb +9 -6
  12. data/lib/jekyll/minibundle/compatibility.rb +11 -1
  13. data/lib/jekyll/minibundle/development_file.rb +6 -0
  14. data/lib/jekyll/minibundle/development_file_collection.rb +3 -16
  15. data/lib/jekyll/minibundle/environment.rb +5 -12
  16. data/lib/jekyll/minibundle/files.rb +18 -0
  17. data/lib/jekyll/minibundle/hashes.rb +20 -0
  18. data/lib/jekyll/minibundle/mini_bundle_block.rb +52 -12
  19. data/lib/jekyll/minibundle/mini_stamp_tag.rb +27 -8
  20. data/lib/jekyll/minibundle/stamp_file.rb +9 -6
  21. data/lib/jekyll/minibundle/version.rb +1 -1
  22. data/test/fixture/site/_bin/with_count +6 -5
  23. data/test/integration/known_caveats_test.rb +89 -0
  24. data/test/integration/minibundle_development_mode_test.rb +171 -26
  25. data/test/integration/minibundle_production_mode_test.rb +234 -42
  26. data/test/integration/ministamp_development_mode_test.rb +145 -0
  27. data/test/integration/{ministamp_test.rb → ministamp_production_mode_test.rb} +72 -23
  28. data/test/integration/static_files_as_asset_sources_test.rb +3 -0
  29. data/test/support/assertions.rb +24 -0
  30. data/test/support/fixture_config.rb +13 -10
  31. data/test/support/static_file_api_config.rb +9 -3
  32. data/test/support/test_case.rb +7 -6
  33. data/test/unit/asset_bundle_test.rb +16 -2
  34. data/test/unit/asset_file_registry_test.rb +117 -14
  35. data/test/unit/asset_tag_markup_test.rb +17 -5
  36. data/test/unit/bundle_file_properties_test.rb +32 -8
  37. data/test/unit/bundle_file_writing_test.rb +10 -11
  38. data/test/unit/development_file_collection_properties_test.rb +47 -15
  39. data/test/unit/environment_test.rb +0 -13
  40. data/test/unit/files_test.rb +46 -0
  41. data/test/unit/hashes_test.rb +41 -0
  42. data/test/unit/mini_bundle_block_test.rb +56 -1
  43. data/test/unit/mini_stamp_tag_test.rb +8 -8
  44. data/test/unit/stamp_file_properties_test.rb +32 -13
  45. data/test/unit/stamp_file_writing_test.rb +1 -5
  46. metadata +38 -16
  47. data/test/unit/development_file_collection_writing_test.rb +0 -43
  48. data/test/unit/jekyll_payload_test.rb +0 -64
@@ -1,64 +0,0 @@
1
- require 'support/test_case'
2
- require 'support/fixture_config'
3
- require 'jekyll/minibundle/development_file_collection'
4
- require 'jekyll/minibundle/bundle_file'
5
- require 'jekyll/minibundle/stamp_file'
6
-
7
- module Jekyll::Minibundle::Test
8
- class JekyllPayloadTest < TestCase
9
- include FixtureConfig
10
-
11
- def test_sorts_stamp_files_in_site_payload
12
- with_site do |site|
13
- file = StampFile.new(site, STAMP_SOURCE_PATH, STAMP_DESTINATION_PATH, &stamp_basenamer)
14
- run_site_payload(site, file)
15
- end
16
- end
17
-
18
- def test_sorts_bundle_files_in_site_payload
19
- with_site do |site|
20
- file = BundleFile.new(site, bundle_config)
21
- run_site_payload(site, file)
22
- end
23
- end
24
-
25
- def test_sorts_development_files_in_site_payload
26
- with_site do |site|
27
- file = DevelopmentFileCollection.new(site, bundle_config)
28
- run_site_payload(site, file)
29
- end
30
- end
31
-
32
- private
33
-
34
- def with_site(&block)
35
- with_site_dir do
36
- yield new_real_site
37
- end
38
- end
39
-
40
- def run_site_payload(site, file)
41
- file.add_as_static_file_to(site)
42
-
43
- static_file = Jekyll::StaticFile.new(site, '.', 'dir', 'name.css')
44
- site.static_files << static_file
45
-
46
- site.site_payload
47
- end
48
-
49
- def stamp_basenamer
50
- ->(base, ext, stamper) { "#{base}-#{stamper.call}#{ext}" }
51
- end
52
-
53
- def bundle_config
54
- {
55
- 'type' => :js,
56
- 'source_dir' => JS_BUNDLE_SOURCE_DIR,
57
- 'assets' => %w{dependency app},
58
- 'destination_path' => JS_BUNDLE_DESTINATION_PATH,
59
- 'attributes' => {},
60
- 'minifier_cmd' => 'unused_minifier_cmd'
61
- }
62
- end
63
- end
64
- end