nanoc 3.7.4 → 3.7.5
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.
- checksums.yaml +4 -4
- data/Gemfile +19 -18
- data/LICENSE +1 -1
- data/NEWS.md +14 -0
- data/Rakefile +1 -1
- data/doc/yardoc_handlers/identifier.rb +1 -5
- data/lib/nanoc.rb +1 -3
- data/lib/nanoc/base.rb +1 -4
- data/lib/nanoc/base/checksummer.rb +10 -12
- data/lib/nanoc/base/compilation/checksum_store.rb +0 -4
- data/lib/nanoc/base/compilation/compiled_content_cache.rb +0 -4
- data/lib/nanoc/base/compilation/compiler.rb +27 -31
- data/lib/nanoc/base/compilation/compiler_dsl.rb +3 -7
- data/lib/nanoc/base/compilation/dependency_tracker.rb +2 -6
- data/lib/nanoc/base/compilation/filter.rb +1 -7
- data/lib/nanoc/base/compilation/item_rep_proxy.rb +0 -4
- data/lib/nanoc/base/compilation/item_rep_recorder_proxy.rb +0 -4
- data/lib/nanoc/base/compilation/outdatedness_checker.rb +0 -4
- data/lib/nanoc/base/compilation/outdatedness_reasons.rb +0 -6
- data/lib/nanoc/base/compilation/rule.rb +1 -5
- data/lib/nanoc/base/compilation/rule_context.rb +7 -11
- data/lib/nanoc/base/compilation/rule_memory_calculator.rb +0 -4
- data/lib/nanoc/base/compilation/rule_memory_store.rb +0 -4
- data/lib/nanoc/base/compilation/rules_collection.rb +5 -9
- data/lib/nanoc/base/context.rb +0 -3
- data/lib/nanoc/base/core_ext.rb +0 -1
- data/lib/nanoc/base/core_ext/array.rb +0 -2
- data/lib/nanoc/base/core_ext/hash.rb +0 -2
- data/lib/nanoc/base/core_ext/pathname.rb +0 -2
- data/lib/nanoc/base/core_ext/string.rb +0 -2
- data/lib/nanoc/base/directed_graph.rb +0 -4
- data/lib/nanoc/base/errors.rb +1 -39
- data/lib/nanoc/base/memoization.rb +0 -4
- data/lib/nanoc/base/notification_center.rb +1 -7
- data/lib/nanoc/base/plugin_registry.rb +4 -10
- data/lib/nanoc/base/result_data/item_rep.rb +8 -16
- data/lib/nanoc/base/source_data/code_snippet.rb +1 -5
- data/lib/nanoc/base/source_data/configuration.rb +0 -4
- data/lib/nanoc/base/source_data/data_source.rb +2 -5
- data/lib/nanoc/base/source_data/item.rb +3 -7
- data/lib/nanoc/base/source_data/item_array.rb +1 -5
- data/lib/nanoc/base/source_data/layout.rb +2 -6
- data/lib/nanoc/base/source_data/site.rb +20 -23
- data/lib/nanoc/base/store.rb +1 -5
- data/lib/nanoc/base/temp_filename_factory.rb +0 -4
- data/lib/nanoc/cli.rb +3 -5
- data/lib/nanoc/cli/ansi_string_colorizer.rb +6 -10
- data/lib/nanoc/cli/cleaning_stream.rb +2 -6
- data/lib/nanoc/cli/command_runner.rb +1 -5
- data/lib/nanoc/cli/commands/autocompile.rb +2 -6
- data/lib/nanoc/cli/commands/check.rb +0 -4
- data/lib/nanoc/cli/commands/compile.rb +12 -27
- data/lib/nanoc/cli/commands/create-item.rb +1 -5
- data/lib/nanoc/cli/commands/create-layout.rb +0 -4
- data/lib/nanoc/cli/commands/create-site.rb +2 -8
- data/lib/nanoc/cli/commands/deploy.rb +3 -7
- data/lib/nanoc/cli/commands/prune.rb +2 -6
- data/lib/nanoc/cli/commands/shell.rb +4 -8
- data/lib/nanoc/cli/commands/show-data.rb +3 -7
- data/lib/nanoc/cli/commands/show-plugins.rb +3 -7
- data/lib/nanoc/cli/commands/show-rules.rb +11 -15
- data/lib/nanoc/cli/commands/sync.rb +0 -4
- data/lib/nanoc/cli/commands/update.rb +1 -7
- data/lib/nanoc/cli/commands/validate-css.rb +0 -4
- data/lib/nanoc/cli/commands/validate-html.rb +0 -4
- data/lib/nanoc/cli/commands/validate-links.rb +0 -4
- data/lib/nanoc/cli/commands/view.rb +3 -7
- data/lib/nanoc/cli/commands/watch.rb +4 -10
- data/lib/nanoc/cli/error_handler.rb +9 -13
- data/lib/nanoc/cli/logger.rb +8 -12
- data/lib/nanoc/cli/stream_cleaners.rb +0 -4
- data/lib/nanoc/cli/stream_cleaners/abstract.rb +1 -5
- data/lib/nanoc/cli/stream_cleaners/ansi_colors.rb +0 -4
- data/lib/nanoc/cli/stream_cleaners/utf8.rb +1 -5
- data/lib/nanoc/data_sources.rb +2 -4
- data/lib/nanoc/data_sources/deprecated/delicious.rb +6 -10
- data/lib/nanoc/data_sources/deprecated/last_fm.rb +7 -11
- data/lib/nanoc/data_sources/deprecated/twitter.rb +2 -6
- data/lib/nanoc/data_sources/filesystem.rb +10 -13
- data/lib/nanoc/data_sources/filesystem_unified.rb +0 -4
- data/lib/nanoc/data_sources/filesystem_verbose.rb +0 -4
- data/lib/nanoc/data_sources/static.rb +4 -8
- data/lib/nanoc/extra.rb +2 -4
- data/lib/nanoc/extra/auto_compiler.rb +2 -6
- data/lib/nanoc/extra/checking.rb +0 -4
- data/lib/nanoc/extra/checking/check.rb +0 -4
- data/lib/nanoc/extra/checking/checks.rb +0 -2
- data/lib/nanoc/extra/checking/checks/css.rb +6 -6
- data/lib/nanoc/extra/checking/checks/external_links.rb +3 -11
- data/lib/nanoc/extra/checking/checks/html.rb +6 -6
- data/lib/nanoc/extra/checking/checks/internal_links.rb +3 -7
- data/lib/nanoc/extra/checking/checks/stale.rb +3 -7
- data/lib/nanoc/extra/checking/dsl.rb +0 -4
- data/lib/nanoc/extra/checking/issue.rb +0 -4
- data/lib/nanoc/extra/checking/runner.rb +4 -7
- data/lib/nanoc/extra/chick.rb +7 -17
- data/lib/nanoc/extra/core_ext.rb +0 -1
- data/lib/nanoc/extra/core_ext/pathname.rb +0 -4
- data/lib/nanoc/extra/core_ext/time.rb +0 -2
- data/lib/nanoc/extra/deployer.rb +0 -4
- data/lib/nanoc/extra/deployers.rb +0 -4
- data/lib/nanoc/extra/deployers/fog.rb +7 -11
- data/lib/nanoc/extra/deployers/rsync.rb +1 -5
- data/lib/nanoc/extra/file_proxy.rb +1 -5
- data/lib/nanoc/extra/filesystem_tools.rb +37 -12
- data/lib/nanoc/extra/jruby_nokogiri_warner.rb +0 -4
- data/lib/nanoc/extra/link_collector.rb +3 -7
- data/lib/nanoc/extra/piper.rb +0 -6
- data/lib/nanoc/extra/pruner.rb +1 -7
- data/lib/nanoc/extra/validators.rb +0 -4
- data/lib/nanoc/extra/validators/links.rb +0 -4
- data/lib/nanoc/extra/validators/w3c.rb +0 -4
- data/lib/nanoc/extra/vcs.rb +3 -7
- data/lib/nanoc/extra/vcses.rb +0 -2
- data/lib/nanoc/extra/vcses/bazaar.rb +0 -4
- data/lib/nanoc/extra/vcses/dummy.rb +0 -4
- data/lib/nanoc/extra/vcses/git.rb +0 -4
- data/lib/nanoc/extra/vcses/mercurial.rb +0 -4
- data/lib/nanoc/extra/vcses/subversion.rb +0 -4
- data/lib/nanoc/filters.rb +0 -2
- data/lib/nanoc/filters/asciidoc.rb +1 -5
- data/lib/nanoc/filters/bluecloth.rb +0 -2
- data/lib/nanoc/filters/coderay.rb +0 -2
- data/lib/nanoc/filters/coffeescript.rb +0 -4
- data/lib/nanoc/filters/colorize_syntax.rb +17 -15
- data/lib/nanoc/filters/erb.rb +1 -3
- data/lib/nanoc/filters/erubis.rb +2 -4
- data/lib/nanoc/filters/haml.rb +2 -4
- data/lib/nanoc/filters/handlebars.rb +0 -4
- data/lib/nanoc/filters/kramdown.rb +7 -4
- data/lib/nanoc/filters/less.rb +1 -3
- data/lib/nanoc/filters/markaby.rb +0 -2
- data/lib/nanoc/filters/maruku.rb +0 -2
- data/lib/nanoc/filters/mustache.rb +1 -5
- data/lib/nanoc/filters/pandoc.rb +0 -2
- data/lib/nanoc/filters/rainpress.rb +0 -2
- data/lib/nanoc/filters/rdiscount.rb +0 -2
- data/lib/nanoc/filters/rdoc.rb +0 -2
- data/lib/nanoc/filters/redcarpet.rb +0 -4
- data/lib/nanoc/filters/redcloth.rb +0 -2
- data/lib/nanoc/filters/relativize_paths.rb +2 -4
- data/lib/nanoc/filters/rubypants.rb +0 -2
- data/lib/nanoc/filters/sass.rb +2 -4
- data/lib/nanoc/filters/sass/sass_filesystem_importer.rb +0 -2
- data/lib/nanoc/filters/slim.rb +2 -6
- data/lib/nanoc/filters/typogruby.rb +0 -4
- data/lib/nanoc/filters/uglify_js.rb +0 -2
- data/lib/nanoc/filters/xsl.rb +1 -5
- data/lib/nanoc/filters/yui_compressor.rb +0 -4
- data/lib/nanoc/helpers.rb +0 -2
- data/lib/nanoc/helpers/blogging.rb +12 -20
- data/lib/nanoc/helpers/breadcrumbs.rb +0 -4
- data/lib/nanoc/helpers/capturing.rb +2 -10
- data/lib/nanoc/helpers/filtering.rb +0 -4
- data/lib/nanoc/helpers/html_escape.rb +3 -7
- data/lib/nanoc/helpers/link_to.rb +0 -4
- data/lib/nanoc/helpers/rendering.rb +8 -12
- data/lib/nanoc/helpers/tagging.rb +0 -4
- data/lib/nanoc/helpers/text.rb +1 -5
- data/lib/nanoc/helpers/xml_sitemap.rb +3 -7
- data/lib/nanoc/tasks/clean.rb +1 -7
- data/lib/nanoc/tasks/deploy/rsync.rake +0 -2
- data/lib/nanoc/tasks/validate.rake +0 -4
- data/lib/nanoc/version.rb +1 -3
- data/nanoc.gemspec +12 -9
- data/tasks/rubocop.rake +1 -1
- data/tasks/test.rake +6 -7
- data/test/base/checksummer_spec.rb +28 -44
- data/test/base/core_ext/array_spec.rb +1 -9
- data/test/base/core_ext/hash_spec.rb +7 -19
- data/test/base/core_ext/pathname_spec.rb +2 -4
- data/test/base/core_ext/string_spec.rb +0 -4
- data/test/base/temp_filename_factory_spec.rb +0 -8
- data/test/base/test_checksum_store.rb +0 -2
- data/test/base/test_code_snippet.rb +0 -2
- data/test/base/test_compiler.rb +15 -17
- data/test/base/test_compiler_dsl.rb +7 -9
- data/test/base/test_context.rb +2 -4
- data/test/base/test_data_source.rb +0 -2
- data/test/base/test_dependency_tracker.rb +0 -2
- data/test/base/test_directed_graph.rb +2 -4
- data/test/base/test_filter.rb +5 -7
- data/test/base/test_item.rb +17 -13
- data/test/base/test_item_array.rb +2 -4
- data/test/base/test_item_rep.rb +79 -73
- data/test/base/test_layout.rb +3 -5
- data/test/base/test_memoization.rb +13 -21
- data/test/base/test_notification_center.rb +0 -2
- data/test/base/test_outdatedness_checker.rb +34 -36
- data/test/base/test_plugin.rb +0 -2
- data/test/base/test_rule.rb +3 -5
- data/test/base/test_rule_context.rb +4 -6
- data/test/base/test_site.rb +9 -17
- data/test/base/test_store.rb +2 -6
- data/test/cli/commands/test_check.rb +1 -3
- data/test/cli/commands/test_compile.rb +24 -15
- data/test/cli/commands/test_create_item.rb +1 -3
- data/test/cli/commands/test_create_layout.rb +0 -2
- data/test/cli/commands/test_create_site.rb +0 -3
- data/test/cli/commands/test_deploy.rb +9 -11
- data/test/cli/commands/test_help.rb +0 -2
- data/test/cli/commands/test_info.rb +0 -2
- data/test/cli/commands/test_prune.rb +6 -8
- data/test/cli/commands/test_sync.rb +0 -2
- data/test/cli/commands/test_update.rb +0 -2
- data/test/cli/commands/test_watch.rb +4 -6
- data/test/cli/test_cleaning_stream.rb +4 -6
- data/test/cli/test_cli.rb +9 -5
- data/test/cli/test_error_handler.rb +9 -7
- data/test/cli/test_logger.rb +0 -2
- data/test/data_sources/test_filesystem.rb +8 -10
- data/test/data_sources/test_filesystem_unified.rb +35 -34
- data/test/data_sources/test_filesystem_verbose.rb +31 -33
- data/test/data_sources/test_static.rb +20 -21
- data/test/extra/checking/checks/test_css.rb +23 -2
- data/test/extra/checking/checks/test_external_links.rb +2 -4
- data/test/extra/checking/checks/test_html.rb +4 -3
- data/test/extra/checking/checks/test_internal_links.rb +1 -3
- data/test/extra/checking/checks/test_stale.rb +4 -6
- data/test/extra/checking/test_check.rb +0 -2
- data/test/extra/checking/test_dsl.rb +1 -3
- data/test/extra/checking/test_runner.rb +0 -2
- data/test/extra/core_ext/test_pathname.rb +0 -3
- data/test/extra/core_ext/test_time.rb +0 -2
- data/test/extra/deployers/test_fog.rb +13 -15
- data/test/extra/deployers/test_rsync.rb +4 -6
- data/test/extra/test_auto_compiler.rb +47 -25
- data/test/extra/test_file_proxy.rb +1 -3
- data/test/extra/test_filesystem_tools.rb +47 -7
- data/test/extra/test_link_collector.rb +0 -2
- data/test/extra/test_piper.rb +3 -5
- data/test/extra/test_vcs.rb +0 -2
- data/test/extra/validators/test_links.rb +0 -1
- data/test/extra/validators/test_w3c.rb +2 -4
- data/test/filters/test_asciidoc.rb +0 -2
- data/test/filters/test_bluecloth.rb +0 -2
- data/test/filters/test_coderay.rb +2 -4
- data/test/filters/test_coffeescript.rb +0 -2
- data/test/filters/test_colorize_syntax.rb +16 -18
- data/test/filters/test_erb.rb +12 -14
- data/test/filters/test_erubis.rb +4 -6
- data/test/filters/test_haml.rb +7 -9
- data/test/filters/test_handlebars.rb +10 -12
- data/test/filters/test_kramdown.rb +13 -1
- data/test/filters/test_less.rb +9 -11
- data/test/filters/test_markaby.rb +0 -2
- data/test/filters/test_maruku.rb +0 -2
- data/test/filters/test_mustache.rb +4 -6
- data/test/filters/test_pandoc.rb +1 -3
- data/test/filters/test_rainpress.rb +1 -3
- data/test/filters/test_rdiscount.rb +1 -3
- data/test/filters/test_rdoc.rb +0 -2
- data/test/filters/test_redcarpet.rb +6 -8
- data/test/filters/test_redcloth.rb +1 -3
- data/test/filters/test_relativize_paths.rb +29 -34
- data/test/filters/test_rubypants.rb +0 -2
- data/test/filters/test_sass.rb +8 -10
- data/test/filters/test_slim.rb +2 -4
- data/test/filters/test_typogruby.rb +0 -3
- data/test/filters/test_uglify_js.rb +2 -4
- data/test/filters/test_xsl.rb +16 -18
- data/test/filters/test_yui_compressor.rb +3 -5
- data/test/fixtures/vcr_cassettes/css_run_parse_error.yml +65 -0
- data/test/gem_loader.rb +1 -1
- data/test/helper.rb +11 -15
- data/test/helpers/test_blogging.rb +61 -63
- data/test/helpers/test_breadcrumbs.rb +0 -2
- data/test/helpers/test_capturing.rb +4 -6
- data/test/helpers/test_filtering.rb +2 -4
- data/test/helpers/test_html_escape.rb +0 -2
- data/test/helpers/test_link_to.rb +5 -6
- data/test/helpers/test_rendering.rb +2 -4
- data/test/helpers/test_tagging.rb +9 -11
- data/test/helpers/test_text.rb +6 -8
- data/test/helpers/test_xml_sitemap.rb +11 -13
- data/test/tasks/test_clean.rb +0 -2
- data/test/test_gem.rb +1 -3
- metadata +15 -14
- data/Gemfile.lock +0 -252
- data/lib/nanoc/base/core_ext/date.rb +0 -29
- data/lib/nanoc/base/ordered_hash.rb +0 -228
- data/lib/nanoc/extra/core_ext/enumerable.rb +0 -33
- data/test/base/core_ext/date_spec.rb +0 -15
- data/test/extra/core_ext/test_enumerable.rb +0 -28
data/test/base/test_site.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::SiteTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_initialize_with_dir_without_config_yaml
|
|
6
5
|
assert_raises(Nanoc::Errors::GenericTrivial) do
|
|
7
6
|
Nanoc::Site.new('.')
|
|
@@ -21,12 +20,12 @@ class Nanoc::SiteTest < Nanoc::TestCase
|
|
|
21
20
|
end
|
|
22
21
|
|
|
23
22
|
def test_initialize_with_config_hash
|
|
24
|
-
site = Nanoc::Site.new(:
|
|
23
|
+
site = Nanoc::Site.new(foo: 'bar')
|
|
25
24
|
assert_equal 'bar', site.config[:foo]
|
|
26
25
|
end
|
|
27
26
|
|
|
28
27
|
def test_initialize_with_incomplete_data_source_config
|
|
29
|
-
site = Nanoc::Site.new(:
|
|
28
|
+
site = Nanoc::Site.new(data_sources: [{ type: 'foo', items_root: '/bar/' }])
|
|
30
29
|
assert_equal('foo', site.config[:data_sources][0][:type])
|
|
31
30
|
assert_equal('/bar/', site.config[:data_sources][0][:items_root])
|
|
32
31
|
assert_equal('/', site.config[:data_sources][0][:layouts_root])
|
|
@@ -74,7 +73,7 @@ EOF
|
|
|
74
73
|
end
|
|
75
74
|
|
|
76
75
|
error = assert_raises(Nanoc::Errors::GenericTrivial) do
|
|
77
|
-
|
|
76
|
+
Nanoc::Site.new('.')
|
|
78
77
|
end
|
|
79
78
|
assert_equal(
|
|
80
79
|
"Could not find parent configuration file 'foo/foo.yaml'",
|
|
@@ -98,7 +97,7 @@ EOF
|
|
|
98
97
|
end
|
|
99
98
|
|
|
100
99
|
error = assert_raises(Nanoc::Errors::GenericTrivial) do
|
|
101
|
-
|
|
100
|
+
Nanoc::Site.new('.')
|
|
102
101
|
end
|
|
103
102
|
assert_equal(
|
|
104
103
|
"Cycle detected. Could not use parent configuration file '../nanoc.yaml'",
|
|
@@ -213,15 +212,13 @@ EOF
|
|
|
213
212
|
end
|
|
214
213
|
end
|
|
215
214
|
end
|
|
216
|
-
|
|
217
215
|
end
|
|
218
216
|
|
|
219
217
|
describe 'Nanoc::Site#initialize' do
|
|
220
|
-
|
|
221
218
|
include Nanoc::TestHelpers
|
|
222
219
|
|
|
223
220
|
it 'should merge default config' do
|
|
224
|
-
site = Nanoc::Site.new(:
|
|
221
|
+
site = Nanoc::Site.new(foo: 'bar')
|
|
225
222
|
site.config[:foo].must_equal 'bar'
|
|
226
223
|
site.config[:output_dir].must_equal 'output'
|
|
227
224
|
end
|
|
@@ -231,30 +228,26 @@ describe 'Nanoc::Site#initialize' do
|
|
|
231
228
|
end
|
|
232
229
|
|
|
233
230
|
it 'should not raise for non-existant output directory' do
|
|
234
|
-
Nanoc::Site.new(:
|
|
231
|
+
Nanoc::Site.new(output_dir: 'fklsdhailfdjalghlkasdflhagjskajdf')
|
|
235
232
|
end
|
|
236
233
|
|
|
237
234
|
it 'should not raise for unknown data sources' do
|
|
238
235
|
proc do
|
|
239
|
-
Nanoc::Site.new(:
|
|
236
|
+
Nanoc::Site.new(data_source: 'fklsdhailfdjalghlkasdflhagjskajdf')
|
|
240
237
|
end
|
|
241
238
|
end
|
|
242
|
-
|
|
243
239
|
end
|
|
244
240
|
|
|
245
241
|
describe 'Nanoc::Site#compiler' do
|
|
246
|
-
|
|
247
242
|
include Nanoc::TestHelpers
|
|
248
243
|
|
|
249
244
|
it 'should not raise under normal circumstances' do
|
|
250
245
|
site = Nanoc::Site.new({})
|
|
251
246
|
site.compiler
|
|
252
247
|
end
|
|
253
|
-
|
|
254
248
|
end
|
|
255
249
|
|
|
256
250
|
describe 'Nanoc::Site#data_sources' do
|
|
257
|
-
|
|
258
251
|
include Nanoc::TestHelpers
|
|
259
252
|
|
|
260
253
|
it 'should not raise for known data sources' do
|
|
@@ -265,8 +258,8 @@ describe 'Nanoc::Site#data_sources' do
|
|
|
265
258
|
it 'should raise for unknown data sources' do
|
|
266
259
|
proc do
|
|
267
260
|
site = Nanoc::Site.new(
|
|
268
|
-
:
|
|
269
|
-
{ :
|
|
261
|
+
data_sources: [
|
|
262
|
+
{ type: 'fklsdhailfdjalghlkasdflhagjskajdf' }
|
|
270
263
|
]
|
|
271
264
|
)
|
|
272
265
|
site.data_sources
|
|
@@ -291,5 +284,4 @@ describe 'Nanoc::Site#data_sources' do
|
|
|
291
284
|
assert data_sources.first.config[:bbb] = 'two'
|
|
292
285
|
end
|
|
293
286
|
end
|
|
294
|
-
|
|
295
287
|
end
|
data/test/base/test_store.rb
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::StoreTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
class TestStore < Nanoc::Store
|
|
6
|
-
|
|
7
5
|
def data
|
|
8
6
|
@data
|
|
9
7
|
end
|
|
@@ -11,7 +9,6 @@ class Nanoc::StoreTest < Nanoc::TestCase
|
|
|
11
9
|
def data=(new_data)
|
|
12
10
|
@data = new_data
|
|
13
11
|
end
|
|
14
|
-
|
|
15
12
|
end
|
|
16
13
|
|
|
17
14
|
def test_delete_and_reload_on_error
|
|
@@ -19,13 +16,13 @@ class Nanoc::StoreTest < Nanoc::TestCase
|
|
|
19
16
|
|
|
20
17
|
# Create
|
|
21
18
|
store.load
|
|
22
|
-
store.data = { :
|
|
19
|
+
store.data = { fun: 'sure' }
|
|
23
20
|
store.store
|
|
24
21
|
|
|
25
22
|
# Test stored values
|
|
26
23
|
store = TestStore.new('test.db', 1)
|
|
27
24
|
store.load
|
|
28
|
-
assert_equal({ :
|
|
25
|
+
assert_equal({ fun: 'sure' }, store.data)
|
|
29
26
|
|
|
30
27
|
# Mess up
|
|
31
28
|
File.open('test.db', 'w') do |io|
|
|
@@ -37,5 +34,4 @@ class Nanoc::StoreTest < Nanoc::TestCase
|
|
|
37
34
|
store.load
|
|
38
35
|
assert_equal(nil, store.data)
|
|
39
36
|
end
|
|
40
|
-
|
|
41
37
|
end
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::CheckTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_check_stale
|
|
6
|
-
with_site do |
|
|
5
|
+
with_site do |_site|
|
|
7
6
|
FileUtils.mkdir_p('output')
|
|
8
7
|
|
|
9
8
|
# Should not raise now
|
|
@@ -16,5 +15,4 @@ class Nanoc::CLI::Commands::CheckTest < Nanoc::TestCase
|
|
|
16
15
|
end
|
|
17
16
|
end
|
|
18
17
|
end
|
|
19
|
-
|
|
20
18
|
end
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_profiling_information
|
|
6
|
-
with_site do |
|
|
5
|
+
with_site do |_site|
|
|
7
6
|
Nanoc::CLI.run %w( create_item foo )
|
|
8
7
|
Nanoc::CLI.run %w( create_item bar )
|
|
9
8
|
Nanoc::CLI.run %w( create_item baz )
|
|
@@ -29,7 +28,7 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
29
28
|
end
|
|
30
29
|
|
|
31
30
|
def test_auto_prune
|
|
32
|
-
with_site do |
|
|
31
|
+
with_site do |_site|
|
|
33
32
|
Nanoc::CLI.run %w( create_item foo )
|
|
34
33
|
Nanoc::CLI.run %w( create_item bar )
|
|
35
34
|
Nanoc::CLI.run %w( create_item baz )
|
|
@@ -70,7 +69,7 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
70
69
|
end
|
|
71
70
|
|
|
72
71
|
def test_auto_prune_with_exclude
|
|
73
|
-
with_site do |
|
|
72
|
+
with_site do |_site|
|
|
74
73
|
Nanoc::CLI.run %w( create_item foo )
|
|
75
74
|
Nanoc::CLI.run %w( create_item bar )
|
|
76
75
|
Nanoc::CLI.run %w( create_item baz )
|
|
@@ -118,10 +117,21 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
118
117
|
def test_setup_and_teardown_listeners
|
|
119
118
|
with_site do
|
|
120
119
|
test_listener_class = Class.new(::Nanoc::CLI::Commands::Compile::Listener) do
|
|
121
|
-
def start
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
120
|
+
def start
|
|
121
|
+
@started = true
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def stop
|
|
125
|
+
@stopped = true
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
def started?
|
|
129
|
+
@started
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
def stopped?
|
|
133
|
+
@stopped
|
|
134
|
+
end
|
|
125
135
|
end
|
|
126
136
|
|
|
127
137
|
options = {}
|
|
@@ -129,7 +139,7 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
129
139
|
cmd = nil
|
|
130
140
|
listener_classes = [test_listener_class]
|
|
131
141
|
cmd_runner = Nanoc::CLI::Commands::Compile.new(
|
|
132
|
-
options, arguments, cmd, :
|
|
142
|
+
options, arguments, cmd, listener_classes: listener_classes)
|
|
133
143
|
|
|
134
144
|
cmd_runner.run
|
|
135
145
|
|
|
@@ -183,15 +193,15 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
183
193
|
end
|
|
184
194
|
|
|
185
195
|
def new_file_action_printer(reps)
|
|
186
|
-
listener = Nanoc::CLI::Commands::Compile::FileActionPrinter.new(:
|
|
196
|
+
listener = Nanoc::CLI::Commands::Compile::FileActionPrinter.new(reps: reps)
|
|
187
197
|
|
|
188
198
|
def listener.log(level, action, path, duration)
|
|
189
199
|
@events ||= []
|
|
190
200
|
@events << {
|
|
191
|
-
:
|
|
192
|
-
:
|
|
193
|
-
:
|
|
194
|
-
:
|
|
201
|
+
level: level,
|
|
202
|
+
action: action,
|
|
203
|
+
path: path,
|
|
204
|
+
duration: duration
|
|
195
205
|
}
|
|
196
206
|
end
|
|
197
207
|
|
|
@@ -201,5 +211,4 @@ class Nanoc::CLI::Commands::CompileTest < Nanoc::TestCase
|
|
|
201
211
|
|
|
202
212
|
listener
|
|
203
213
|
end
|
|
204
|
-
|
|
205
214
|
end
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::CreateLayoutTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_can_compile_new_layout
|
|
6
5
|
require 'nanoc/cli'
|
|
7
6
|
|
|
@@ -22,5 +21,4 @@ class Nanoc::CLI::Commands::CreateLayoutTest < Nanoc::TestCase
|
|
|
22
21
|
site.compile
|
|
23
22
|
end
|
|
24
23
|
end
|
|
25
|
-
|
|
26
24
|
end
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::CreateSiteTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_create_site_with_existing_name
|
|
6
5
|
Nanoc::CLI.run %w( create_site foo )
|
|
7
6
|
assert_raises(::Nanoc::Errors::GenericTrivial) do
|
|
@@ -31,7 +30,6 @@ class Nanoc::CLI::Commands::CreateSiteTest < Nanoc::TestCase
|
|
|
31
30
|
Nanoc::CLI.run %w( create_site foo )
|
|
32
31
|
|
|
33
32
|
FileUtils.cd('foo') do
|
|
34
|
-
|
|
35
33
|
# Try with encoding = default encoding = utf-8
|
|
36
34
|
File.open('content/index.html', 'w') { |io| io.write("Hello <\xD6>!\n") }
|
|
37
35
|
site = Nanoc::Site.new('.')
|
|
@@ -59,5 +57,4 @@ class Nanoc::CLI::Commands::CreateSiteTest < Nanoc::TestCase
|
|
|
59
57
|
assert_match(/\/stylesheet.css/, File.read('output/index.html'))
|
|
60
58
|
end
|
|
61
59
|
end
|
|
62
|
-
|
|
63
60
|
end
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_deploy
|
|
6
5
|
skip_unless_have_command 'rsync'
|
|
7
|
-
with_site do |
|
|
6
|
+
with_site do |_site|
|
|
8
7
|
File.open('nanoc.yaml', 'w') do |io|
|
|
9
8
|
io.write "deploy:\n"
|
|
10
9
|
io.write " public:\n"
|
|
@@ -23,7 +22,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
23
22
|
end
|
|
24
23
|
|
|
25
24
|
def test_deploy_with_dry_run
|
|
26
|
-
with_site do |
|
|
25
|
+
with_site do |_site|
|
|
27
26
|
File.open('nanoc.yaml', 'w') do |io|
|
|
28
27
|
io.write "deploy:\n"
|
|
29
28
|
io.write " public:\n"
|
|
@@ -42,7 +41,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
42
41
|
end
|
|
43
42
|
|
|
44
43
|
def test_deploy_with_list_without_config
|
|
45
|
-
with_site do |
|
|
44
|
+
with_site do |_site|
|
|
46
45
|
FileUtils.mkdir_p('output')
|
|
47
46
|
File.open('output/blah.html', 'w') { |io| io.write 'moo' }
|
|
48
47
|
|
|
@@ -58,7 +57,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
58
57
|
end
|
|
59
58
|
|
|
60
59
|
def test_deploy_with_list
|
|
61
|
-
with_site do |
|
|
60
|
+
with_site do |_site|
|
|
62
61
|
File.open('nanoc.yaml', 'w') do |io|
|
|
63
62
|
io.write "deploy:\n"
|
|
64
63
|
io.write " public:\n"
|
|
@@ -81,7 +80,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
81
80
|
end
|
|
82
81
|
|
|
83
82
|
def test_deploy_with_list_deployers
|
|
84
|
-
with_site do |
|
|
83
|
+
with_site do |_site|
|
|
85
84
|
File.open('nanoc.yaml', 'w') do |io|
|
|
86
85
|
io.write "deploy:\n"
|
|
87
86
|
io.write " public:\n"
|
|
@@ -105,7 +104,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
105
104
|
|
|
106
105
|
def test_deploy_without_kind
|
|
107
106
|
skip_unless_have_command 'rsync'
|
|
108
|
-
with_site do |
|
|
107
|
+
with_site do |_site|
|
|
109
108
|
File.open('nanoc.yaml', 'w') do |io|
|
|
110
109
|
io.write "deploy:\n"
|
|
111
110
|
io.write " public:\n"
|
|
@@ -127,7 +126,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
127
126
|
end
|
|
128
127
|
|
|
129
128
|
def test_deploy_without_target_without_default
|
|
130
|
-
with_site do |
|
|
129
|
+
with_site do |_site|
|
|
131
130
|
File.open('nanoc.yaml', 'w') do |io|
|
|
132
131
|
io.write "deploy:\n"
|
|
133
132
|
io.write " public:\n"
|
|
@@ -137,7 +136,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
137
136
|
FileUtils.mkdir_p('output')
|
|
138
137
|
File.open('output/blah.html', 'w') { |io| io.write 'moo' }
|
|
139
138
|
|
|
140
|
-
|
|
139
|
+
capturing_stdio do
|
|
141
140
|
err = assert_raises Nanoc::Errors::GenericTrivial do
|
|
142
141
|
Nanoc::CLI.run %w( deploy )
|
|
143
142
|
end
|
|
@@ -148,7 +147,7 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
148
147
|
|
|
149
148
|
def test_deploy_without_target_with_default
|
|
150
149
|
skip_unless_have_command 'rsync'
|
|
151
|
-
with_site do |
|
|
150
|
+
with_site do |_site|
|
|
152
151
|
File.open('nanoc.yaml', 'w') do |io|
|
|
153
152
|
io.write "deploy:\n"
|
|
154
153
|
io.write " default:\n"
|
|
@@ -166,5 +165,4 @@ class Nanoc::CLI::Commands::DeployTest < Nanoc::TestCase
|
|
|
166
165
|
assert File.file?('mydestination/blah.html')
|
|
167
166
|
end
|
|
168
167
|
end
|
|
169
|
-
|
|
170
168
|
end
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
4
|
-
|
|
5
4
|
def test_run_without_yes
|
|
6
|
-
with_site do |
|
|
5
|
+
with_site do |_site|
|
|
7
6
|
# Set output dir
|
|
8
7
|
File.open('nanoc.yaml', 'w') { |io| io.write 'output_dir: output2' }
|
|
9
8
|
FileUtils.mkdir_p('output2')
|
|
@@ -25,7 +24,7 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
25
24
|
end
|
|
26
25
|
|
|
27
26
|
def test_run_with_yes
|
|
28
|
-
with_site do |
|
|
27
|
+
with_site do |_site|
|
|
29
28
|
# Set output dir
|
|
30
29
|
File.open('nanoc.yaml', 'w') { |io| io.write 'output_dir: output2' }
|
|
31
30
|
FileUtils.mkdir_p('output2')
|
|
@@ -45,7 +44,7 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
45
44
|
end
|
|
46
45
|
|
|
47
46
|
def test_run_with_dry_run
|
|
48
|
-
with_site do |
|
|
47
|
+
with_site do |_site|
|
|
49
48
|
# Set output dir
|
|
50
49
|
File.open('nanoc.yaml', 'w') { |io| io.write 'output_dir: output2' }
|
|
51
50
|
FileUtils.mkdir_p('output2')
|
|
@@ -65,7 +64,7 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
65
64
|
end
|
|
66
65
|
|
|
67
66
|
def test_run_with_exclude
|
|
68
|
-
|
|
67
|
+
with_site do |_site|
|
|
69
68
|
# Set output dir
|
|
70
69
|
File.open('nanoc.yaml', 'w') { |io| io.write "prune:\n exclude: [ 'good-dir', 'good-file.html' ]" }
|
|
71
70
|
FileUtils.mkdir_p('output')
|
|
@@ -98,7 +97,7 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
98
97
|
skip 'JRuby 1.7.11 has buggy File.find behavior (see https://github.com/jruby/jruby/issues/1647)'
|
|
99
98
|
end
|
|
100
99
|
|
|
101
|
-
with_site do |
|
|
100
|
+
with_site do |_site|
|
|
102
101
|
# Set output dir
|
|
103
102
|
FileUtils.rm_rf('output')
|
|
104
103
|
FileUtils.mkdir_p('output-real')
|
|
@@ -121,7 +120,7 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
121
120
|
end
|
|
122
121
|
|
|
123
122
|
def test_run_with_nested_empty_dirs
|
|
124
|
-
with_site do |
|
|
123
|
+
with_site do |_site|
|
|
125
124
|
# Set output dir
|
|
126
125
|
File.open('nanoc.yaml', 'w') { |io| io.write 'output_dir: output' }
|
|
127
126
|
FileUtils.mkdir_p('output')
|
|
@@ -138,5 +137,4 @@ class Nanoc::CLI::Commands::PruneTest < Nanoc::TestCase
|
|
|
138
137
|
assert !File.directory?('output/a')
|
|
139
138
|
end
|
|
140
139
|
end
|
|
141
|
-
|
|
142
140
|
end
|