nanoc 4.7.9 → 4.7.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (511) hide show
  1. checksums.yaml +4 -4
  2. data/Appraisals +2 -0
  3. data/Gemfile +2 -0
  4. data/Gemfile.lock +26 -27
  5. data/Guardfile +2 -0
  6. data/NEWS.md +11 -0
  7. data/README.md +1 -1
  8. data/Rakefile +2 -0
  9. data/bin/nanoc +2 -0
  10. data/lib/nanoc.rb +3 -1
  11. data/lib/nanoc/base.rb +2 -0
  12. data/lib/nanoc/base/contracts_support.rb +2 -0
  13. data/lib/nanoc/base/core_ext.rb +2 -0
  14. data/lib/nanoc/base/core_ext/array.rb +2 -0
  15. data/lib/nanoc/base/core_ext/hash.rb +2 -0
  16. data/lib/nanoc/base/core_ext/pathname.rb +2 -0
  17. data/lib/nanoc/base/core_ext/string.rb +2 -0
  18. data/lib/nanoc/base/entities.rb +2 -0
  19. data/lib/nanoc/base/entities/action_sequence.rb +2 -0
  20. data/lib/nanoc/base/entities/checksum_collection.rb +2 -0
  21. data/lib/nanoc/base/entities/code_snippet.rb +3 -0
  22. data/lib/nanoc/base/entities/configuration.rb +10 -3
  23. data/lib/nanoc/base/entities/content.rb +2 -0
  24. data/lib/nanoc/base/entities/context.rb +2 -0
  25. data/lib/nanoc/base/entities/dependency.rb +2 -0
  26. data/lib/nanoc/base/entities/directed_graph.rb +2 -0
  27. data/lib/nanoc/base/entities/document.rb +2 -0
  28. data/lib/nanoc/base/entities/identifiable_collection.rb +2 -0
  29. data/lib/nanoc/base/entities/identifier.rb +2 -0
  30. data/lib/nanoc/base/entities/item.rb +2 -0
  31. data/lib/nanoc/base/entities/item_rep.rb +2 -0
  32. data/lib/nanoc/base/entities/layout.rb +2 -0
  33. data/lib/nanoc/base/entities/lazy_value.rb +2 -0
  34. data/lib/nanoc/base/entities/outdatedness_reasons.rb +2 -0
  35. data/lib/nanoc/base/entities/outdatedness_status.rb +2 -0
  36. data/lib/nanoc/base/entities/pattern.rb +2 -0
  37. data/lib/nanoc/base/entities/processing_action.rb +2 -0
  38. data/lib/nanoc/base/entities/processing_actions.rb +2 -0
  39. data/lib/nanoc/base/entities/processing_actions/filter.rb +2 -0
  40. data/lib/nanoc/base/entities/processing_actions/layout.rb +2 -0
  41. data/lib/nanoc/base/entities/processing_actions/snapshot.rb +2 -0
  42. data/lib/nanoc/base/entities/props.rb +3 -1
  43. data/lib/nanoc/base/entities/site.rb +2 -0
  44. data/lib/nanoc/base/entities/snapshot_def.rb +2 -0
  45. data/lib/nanoc/base/error.rb +2 -0
  46. data/lib/nanoc/base/errors.rb +3 -1
  47. data/lib/nanoc/base/feature.rb +2 -0
  48. data/lib/nanoc/base/memoization.rb +2 -0
  49. data/lib/nanoc/base/repos.rb +2 -0
  50. data/lib/nanoc/base/repos/action_sequence_store.rb +2 -0
  51. data/lib/nanoc/base/repos/aggregate_data_source.rb +2 -0
  52. data/lib/nanoc/base/repos/checksum_store.rb +2 -0
  53. data/lib/nanoc/base/repos/compiled_content_cache.rb +2 -0
  54. data/lib/nanoc/base/repos/config_loader.rb +2 -0
  55. data/lib/nanoc/base/repos/data_source.rb +2 -0
  56. data/lib/nanoc/base/repos/dependency_store.rb +2 -0
  57. data/lib/nanoc/base/repos/in_mem_data_source.rb +2 -0
  58. data/lib/nanoc/base/repos/item_rep_repo.rb +2 -0
  59. data/lib/nanoc/base/repos/outdatedness_store.rb +2 -0
  60. data/lib/nanoc/base/repos/prefixed_data_source.rb +2 -0
  61. data/lib/nanoc/base/repos/site_loader.rb +2 -0
  62. data/lib/nanoc/base/repos/snapshot_repo.rb +2 -0
  63. data/lib/nanoc/base/repos/store.rb +2 -0
  64. data/lib/nanoc/base/services.rb +2 -0
  65. data/lib/nanoc/base/services/action_provider.rb +2 -0
  66. data/lib/nanoc/base/services/action_sequence_builder.rb +2 -0
  67. data/lib/nanoc/base/services/checksummer.rb +3 -1
  68. data/lib/nanoc/base/services/compilation_context.rb +2 -0
  69. data/lib/nanoc/base/services/compiler.rb +2 -0
  70. data/lib/nanoc/base/services/compiler/phases.rb +2 -0
  71. data/lib/nanoc/base/services/compiler/phases/abstract.rb +2 -0
  72. data/lib/nanoc/base/services/compiler/phases/cache.rb +2 -0
  73. data/lib/nanoc/base/services/compiler/phases/mark_done.rb +2 -0
  74. data/lib/nanoc/base/services/compiler/phases/recalculate.rb +2 -0
  75. data/lib/nanoc/base/services/compiler/phases/resume.rb +2 -0
  76. data/lib/nanoc/base/services/compiler/phases/write.rb +2 -0
  77. data/lib/nanoc/base/services/compiler/stages.rb +2 -0
  78. data/lib/nanoc/base/services/compiler/stages/build_reps.rb +2 -0
  79. data/lib/nanoc/base/services/compiler/stages/calculate_checksums.rb +2 -0
  80. data/lib/nanoc/base/services/compiler/stages/cleanup.rb +2 -0
  81. data/lib/nanoc/base/services/compiler/stages/compile_reps.rb +2 -0
  82. data/lib/nanoc/base/services/compiler/stages/determine_outdatedness.rb +2 -0
  83. data/lib/nanoc/base/services/compiler/stages/forget_outdated_dependencies.rb +2 -0
  84. data/lib/nanoc/base/services/compiler/stages/load_stores.rb +2 -0
  85. data/lib/nanoc/base/services/compiler/stages/postprocess.rb +2 -0
  86. data/lib/nanoc/base/services/compiler/stages/preprocess.rb +2 -0
  87. data/lib/nanoc/base/services/compiler/stages/prune.rb +2 -0
  88. data/lib/nanoc/base/services/compiler/stages/store_post_compilation_state.rb +2 -0
  89. data/lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb +2 -0
  90. data/lib/nanoc/base/services/compiler_loader.rb +2 -0
  91. data/lib/nanoc/base/services/dependency_tracker.rb +2 -0
  92. data/lib/nanoc/base/services/executor.rb +2 -0
  93. data/lib/nanoc/base/services/filter.rb +3 -1
  94. data/lib/nanoc/base/services/item_rep_builder.rb +2 -0
  95. data/lib/nanoc/base/services/item_rep_router.rb +2 -0
  96. data/lib/nanoc/base/services/item_rep_selector.rb +2 -0
  97. data/lib/nanoc/base/services/item_rep_writer.rb +3 -1
  98. data/lib/nanoc/base/services/notification_center.rb +2 -0
  99. data/lib/nanoc/base/services/outdatedness_checker.rb +2 -0
  100. data/lib/nanoc/base/services/outdatedness_rule.rb +2 -0
  101. data/lib/nanoc/base/services/outdatedness_rules.rb +2 -0
  102. data/lib/nanoc/base/services/outdatedness_rules/attributes_modified.rb +2 -0
  103. data/lib/nanoc/base/services/outdatedness_rules/code_snippets_modified.rb +2 -0
  104. data/lib/nanoc/base/services/outdatedness_rules/configuration_modified.rb +2 -0
  105. data/lib/nanoc/base/services/outdatedness_rules/content_modified.rb +2 -0
  106. data/lib/nanoc/base/services/outdatedness_rules/not_written.rb +2 -0
  107. data/lib/nanoc/base/services/outdatedness_rules/rules_modified.rb +2 -0
  108. data/lib/nanoc/base/services/outdatedness_rules/uses_always_outdated_filter.rb +2 -0
  109. data/lib/nanoc/base/services/pruner.rb +4 -2
  110. data/lib/nanoc/base/services/temp_filename_factory.rb +2 -0
  111. data/lib/nanoc/base/views.rb +2 -0
  112. data/lib/nanoc/base/views/config_view.rb +2 -0
  113. data/lib/nanoc/base/views/identifiable_collection_view.rb +2 -0
  114. data/lib/nanoc/base/views/item_collection_with_reps_view.rb +2 -0
  115. data/lib/nanoc/base/views/item_collection_without_reps_view.rb +2 -0
  116. data/lib/nanoc/base/views/item_rep_collection_view.rb +2 -0
  117. data/lib/nanoc/base/views/item_rep_view.rb +2 -0
  118. data/lib/nanoc/base/views/item_with_reps_view.rb +2 -0
  119. data/lib/nanoc/base/views/item_without_reps_view.rb +2 -0
  120. data/lib/nanoc/base/views/layout_collection_view.rb +2 -0
  121. data/lib/nanoc/base/views/layout_view.rb +2 -0
  122. data/lib/nanoc/base/views/mixins/document_view_mixin.rb +2 -0
  123. data/lib/nanoc/base/views/mixins/mutable_document_view_mixin.rb +2 -0
  124. data/lib/nanoc/base/views/mixins/with_reps_view_mixin.rb +2 -0
  125. data/lib/nanoc/base/views/mutable_config_view.rb +2 -0
  126. data/lib/nanoc/base/views/mutable_identifiable_collection_view.rb +2 -0
  127. data/lib/nanoc/base/views/mutable_item_collection_view.rb +2 -0
  128. data/lib/nanoc/base/views/mutable_item_view.rb +2 -0
  129. data/lib/nanoc/base/views/mutable_layout_collection_view.rb +2 -0
  130. data/lib/nanoc/base/views/mutable_layout_view.rb +2 -0
  131. data/lib/nanoc/base/views/post_compile_item_collection_view.rb +2 -0
  132. data/lib/nanoc/base/views/post_compile_item_rep_collection_view.rb +2 -0
  133. data/lib/nanoc/base/views/post_compile_item_rep_view.rb +2 -0
  134. data/lib/nanoc/base/views/post_compile_item_view.rb +2 -0
  135. data/lib/nanoc/base/views/view.rb +2 -0
  136. data/lib/nanoc/base/views/view_context.rb +2 -0
  137. data/lib/nanoc/checking.rb +2 -0
  138. data/lib/nanoc/checking/check.rb +2 -0
  139. data/lib/nanoc/checking/checks.rb +2 -0
  140. data/lib/nanoc/checking/checks/css.rb +2 -0
  141. data/lib/nanoc/checking/checks/external_links.rb +3 -1
  142. data/lib/nanoc/checking/checks/html.rb +2 -0
  143. data/lib/nanoc/checking/checks/internal_links.rb +2 -0
  144. data/lib/nanoc/checking/checks/mixed_content.rb +2 -0
  145. data/lib/nanoc/checking/checks/stale.rb +2 -0
  146. data/lib/nanoc/checking/checks/w3c_validator.rb +2 -0
  147. data/lib/nanoc/checking/dsl.rb +2 -0
  148. data/lib/nanoc/checking/issue.rb +2 -0
  149. data/lib/nanoc/checking/runner.rb +2 -0
  150. data/lib/nanoc/cli.rb +2 -0
  151. data/lib/nanoc/cli/ansi_string_colorizer.rb +2 -0
  152. data/lib/nanoc/cli/cleaning_stream.rb +2 -0
  153. data/lib/nanoc/cli/command_runner.rb +2 -0
  154. data/lib/nanoc/cli/commands/check.rb +2 -0
  155. data/lib/nanoc/cli/commands/compile.rb +4 -2
  156. data/lib/nanoc/cli/commands/compile_listeners/abstract.rb +2 -0
  157. data/lib/nanoc/cli/commands/compile_listeners/debug_printer.rb +2 -0
  158. data/lib/nanoc/cli/commands/compile_listeners/diff_generator.rb +2 -0
  159. data/lib/nanoc/cli/commands/compile_listeners/file_action_printer.rb +2 -0
  160. data/lib/nanoc/cli/commands/compile_listeners/stack_prof_profiler.rb +3 -1
  161. data/lib/nanoc/cli/commands/compile_listeners/timing_recorder.rb +4 -14
  162. data/lib/nanoc/cli/commands/create-site.rb +229 -227
  163. data/lib/nanoc/cli/commands/deploy.rb +2 -0
  164. data/lib/nanoc/cli/commands/nanoc.rb +2 -0
  165. data/lib/nanoc/cli/commands/prune.rb +8 -6
  166. data/lib/nanoc/cli/commands/shell.rb +2 -0
  167. data/lib/nanoc/cli/commands/show-data.rb +6 -4
  168. data/lib/nanoc/cli/commands/show-plugins.rb +6 -4
  169. data/lib/nanoc/cli/commands/show-rules.rb +2 -0
  170. data/lib/nanoc/cli/commands/view.rb +6 -4
  171. data/lib/nanoc/cli/error_handler.rb +2 -0
  172. data/lib/nanoc/cli/logger.rb +2 -0
  173. data/lib/nanoc/cli/stream_cleaners.rb +2 -0
  174. data/lib/nanoc/cli/stream_cleaners/abstract.rb +2 -0
  175. data/lib/nanoc/cli/stream_cleaners/ansi_colors.rb +2 -0
  176. data/lib/nanoc/cli/stream_cleaners/utf8.rb +6 -1
  177. data/lib/nanoc/data_sources.rb +2 -0
  178. data/lib/nanoc/data_sources/filesystem.rb +2 -0
  179. data/lib/nanoc/data_sources/filesystem/errors.rb +2 -0
  180. data/lib/nanoc/data_sources/filesystem/tools.rb +2 -0
  181. data/lib/nanoc/deploying.rb +2 -0
  182. data/lib/nanoc/deploying/deployer.rb +2 -0
  183. data/lib/nanoc/deploying/deployers.rb +2 -0
  184. data/lib/nanoc/deploying/deployers/fog.rb +2 -0
  185. data/lib/nanoc/deploying/deployers/git.rb +2 -0
  186. data/lib/nanoc/deploying/deployers/rsync.rb +2 -0
  187. data/lib/nanoc/extra.rb +2 -0
  188. data/lib/nanoc/extra/core_ext.rb +2 -0
  189. data/lib/nanoc/extra/core_ext/pathname.rb +2 -0
  190. data/lib/nanoc/extra/core_ext/time.rb +2 -0
  191. data/lib/nanoc/extra/jruby_nokogiri_warner.rb +14 -12
  192. data/lib/nanoc/extra/link_collector.rb +2 -0
  193. data/lib/nanoc/extra/parallel_collection.rb +2 -0
  194. data/lib/nanoc/extra/piper.rb +2 -0
  195. data/lib/nanoc/filters.rb +2 -0
  196. data/lib/nanoc/filters/asciidoc.rb +2 -0
  197. data/lib/nanoc/filters/bluecloth.rb +2 -0
  198. data/lib/nanoc/filters/coffeescript.rb +2 -0
  199. data/lib/nanoc/filters/colorize_syntax.rb +3 -1
  200. data/lib/nanoc/filters/colorize_syntax/colorizers.rb +2 -0
  201. data/lib/nanoc/filters/erb.rb +2 -0
  202. data/lib/nanoc/filters/erubi.rb +2 -0
  203. data/lib/nanoc/filters/erubis.rb +2 -0
  204. data/lib/nanoc/filters/haml.rb +2 -0
  205. data/lib/nanoc/filters/handlebars.rb +2 -0
  206. data/lib/nanoc/filters/kramdown.rb +2 -0
  207. data/lib/nanoc/filters/less.rb +2 -0
  208. data/lib/nanoc/filters/markaby.rb +2 -0
  209. data/lib/nanoc/filters/maruku.rb +2 -0
  210. data/lib/nanoc/filters/mustache.rb +2 -0
  211. data/lib/nanoc/filters/pandoc.rb +2 -0
  212. data/lib/nanoc/filters/rainpress.rb +2 -0
  213. data/lib/nanoc/filters/rdiscount.rb +2 -0
  214. data/lib/nanoc/filters/rdoc.rb +2 -0
  215. data/lib/nanoc/filters/redcarpet.rb +2 -0
  216. data/lib/nanoc/filters/redcloth.rb +2 -0
  217. data/lib/nanoc/filters/relativize_paths.rb +8 -7
  218. data/lib/nanoc/filters/rubypants.rb +2 -0
  219. data/lib/nanoc/filters/sass.rb +2 -0
  220. data/lib/nanoc/filters/sass/sass_filesystem_importer.rb +2 -0
  221. data/lib/nanoc/filters/slim.rb +3 -1
  222. data/lib/nanoc/filters/typogruby.rb +2 -0
  223. data/lib/nanoc/filters/uglify_js.rb +2 -0
  224. data/lib/nanoc/filters/xsl.rb +2 -0
  225. data/lib/nanoc/filters/yui_compressor.rb +2 -0
  226. data/lib/nanoc/helpers.rb +2 -0
  227. data/lib/nanoc/helpers/blogging.rb +3 -1
  228. data/lib/nanoc/helpers/breadcrumbs.rb +2 -0
  229. data/lib/nanoc/helpers/capturing.rb +4 -2
  230. data/lib/nanoc/helpers/child_parent.rb +2 -0
  231. data/lib/nanoc/helpers/filtering.rb +2 -0
  232. data/lib/nanoc/helpers/html_escape.rb +2 -0
  233. data/lib/nanoc/helpers/link_to.rb +2 -0
  234. data/lib/nanoc/helpers/rendering.rb +2 -0
  235. data/lib/nanoc/helpers/tagging.rb +2 -0
  236. data/lib/nanoc/helpers/text.rb +2 -0
  237. data/lib/nanoc/helpers/xml_sitemap.rb +3 -1
  238. data/lib/nanoc/rule_dsl.rb +2 -0
  239. data/lib/nanoc/rule_dsl/action_provider.rb +2 -0
  240. data/lib/nanoc/rule_dsl/action_sequence_calculator.rb +2 -0
  241. data/lib/nanoc/rule_dsl/compiler_dsl.rb +4 -1
  242. data/lib/nanoc/rule_dsl/recording_executor.rb +2 -0
  243. data/lib/nanoc/rule_dsl/rule.rb +2 -0
  244. data/lib/nanoc/rule_dsl/rule_context.rb +2 -0
  245. data/lib/nanoc/rule_dsl/rules_collection.rb +2 -0
  246. data/lib/nanoc/rule_dsl/rules_loader.rb +2 -0
  247. data/lib/nanoc/spec.rb +3 -1
  248. data/lib/nanoc/telemetry.rb +4 -0
  249. data/lib/nanoc/telemetry/counter.rb +2 -0
  250. data/lib/nanoc/telemetry/labelled_counter.rb +2 -0
  251. data/lib/nanoc/telemetry/labelled_summary.rb +2 -0
  252. data/lib/nanoc/telemetry/registry.rb +2 -0
  253. data/lib/nanoc/telemetry/stopwatch.rb +2 -0
  254. data/lib/nanoc/telemetry/summary.rb +2 -0
  255. data/lib/nanoc/telemetry/table.rb +35 -0
  256. data/lib/nanoc/version.rb +3 -1
  257. data/nanoc.gemspec +2 -0
  258. data/spec/contributors_spec.rb +2 -0
  259. data/spec/nanoc/base/checksummer_spec.rb +2 -0
  260. data/spec/nanoc/base/compiler_spec.rb +2 -0
  261. data/spec/nanoc/base/directed_graph_spec.rb +2 -0
  262. data/spec/nanoc/base/entities/action_sequence_spec.rb +2 -0
  263. data/spec/nanoc/base/entities/code_snippet_spec.rb +51 -0
  264. data/spec/nanoc/base/entities/configuration_spec.rb +15 -0
  265. data/spec/nanoc/base/entities/content_spec.rb +2 -0
  266. data/spec/nanoc/base/entities/document_spec.rb +2 -0
  267. data/spec/nanoc/base/entities/identifiable_collection_spec.rb +2 -0
  268. data/spec/nanoc/base/entities/identifier_spec.rb +2 -0
  269. data/spec/nanoc/base/entities/item_rep_spec.rb +2 -0
  270. data/spec/nanoc/base/entities/item_spec.rb +2 -0
  271. data/spec/nanoc/base/entities/layout_spec.rb +2 -0
  272. data/spec/nanoc/base/entities/lazy_value_spec.rb +3 -1
  273. data/spec/nanoc/base/entities/outdatedness_status_spec.rb +2 -0
  274. data/spec/nanoc/base/entities/pattern_spec.rb +2 -0
  275. data/spec/nanoc/base/entities/processing_action_spec.rb +2 -0
  276. data/spec/nanoc/base/entities/processing_actions/filter_spec.rb +2 -0
  277. data/spec/nanoc/base/entities/processing_actions/layout_spec.rb +2 -0
  278. data/spec/nanoc/base/entities/processing_actions/snapshot_spec.rb +2 -0
  279. data/spec/nanoc/base/entities/props_spec.rb +2 -0
  280. data/spec/nanoc/base/entities/site_spec.rb +2 -0
  281. data/spec/nanoc/base/errors/dependency_cycle_spec.rb +8 -6
  282. data/spec/nanoc/base/feature_spec.rb +4 -2
  283. data/spec/nanoc/base/filter_spec.rb +2 -0
  284. data/spec/nanoc/base/item_rep_writer_spec.rb +2 -0
  285. data/spec/nanoc/base/memoization_spec.rb +2 -0
  286. data/spec/nanoc/base/repos/checksum_store_spec.rb +2 -0
  287. data/spec/nanoc/base/repos/compiled_content_cache_spec.rb +2 -0
  288. data/spec/nanoc/base/repos/config_loader_spec.rb +2 -0
  289. data/spec/nanoc/base/repos/dependency_store_spec.rb +2 -0
  290. data/spec/nanoc/base/repos/outdatedness_store_spec.rb +2 -0
  291. data/spec/nanoc/base/repos/site_loader_spec.rb +2 -0
  292. data/spec/nanoc/base/repos/snapshot_repo_spec.rb +2 -0
  293. data/spec/nanoc/base/repos/store_spec.rb +2 -0
  294. data/spec/nanoc/base/services/compiler/phases/abstract_spec.rb +2 -0
  295. data/spec/nanoc/base/services/compiler/phases/cache_spec.rb +2 -0
  296. data/spec/nanoc/base/services/compiler/stages/calculate_checksums_spec.rb +2 -0
  297. data/spec/nanoc/base/services/compiler/stages/cleanup_spec.rb +2 -0
  298. data/spec/nanoc/base/services/compiler/stages/compile_reps_spec.rb +2 -0
  299. data/spec/nanoc/base/services/dependency_tracker_spec.rb +2 -0
  300. data/spec/nanoc/base/services/executor_spec.rb +2 -0
  301. data/spec/nanoc/base/services/item_rep_router_spec.rb +2 -0
  302. data/spec/nanoc/base/services/item_rep_selector_spec.rb +2 -0
  303. data/spec/nanoc/base/services/outdatedness_checker_spec.rb +2 -0
  304. data/spec/nanoc/base/services/outdatedness_rules_spec.rb +2 -0
  305. data/spec/nanoc/base/services/pruner_spec.rb +2 -0
  306. data/spec/nanoc/base/services/temp_filename_factory_spec.rb +2 -0
  307. data/spec/nanoc/base/views/config_view_spec.rb +2 -0
  308. data/spec/nanoc/base/views/document_view_spec.rb +2 -0
  309. data/spec/nanoc/base/views/identifiable_collection_view_spec.rb +2 -0
  310. data/spec/nanoc/base/views/item_collection_with_reps_view_spec.rb +2 -0
  311. data/spec/nanoc/base/views/item_collection_without_reps_view_spec.rb +2 -0
  312. data/spec/nanoc/base/views/item_rep_collection_view_spec.rb +2 -0
  313. data/spec/nanoc/base/views/item_rep_view_spec.rb +2 -0
  314. data/spec/nanoc/base/views/item_view_spec.rb +2 -0
  315. data/spec/nanoc/base/views/layout_collection_view_spec.rb +2 -0
  316. data/spec/nanoc/base/views/layout_view_spec.rb +2 -0
  317. data/spec/nanoc/base/views/mutable_config_view_spec.rb +2 -0
  318. data/spec/nanoc/base/views/mutable_document_view_spec.rb +2 -0
  319. data/spec/nanoc/base/views/mutable_identifiable_collection_view_spec.rb +2 -0
  320. data/spec/nanoc/base/views/mutable_item_collection_view_spec.rb +2 -0
  321. data/spec/nanoc/base/views/mutable_item_view_spec.rb +2 -0
  322. data/spec/nanoc/base/views/mutable_layout_collection_view_spec.rb +2 -0
  323. data/spec/nanoc/base/views/mutable_layout_view_spec.rb +2 -0
  324. data/spec/nanoc/base/views/post_compile_item_rep_collection_view_spec.rb +2 -0
  325. data/spec/nanoc/base/views/post_compile_item_rep_view_spec.rb +2 -0
  326. data/spec/nanoc/base/views/post_compile_item_view_spec.rb +2 -0
  327. data/spec/nanoc/cli/commands/compile/diff_generator_spec.rb +2 -0
  328. data/spec/nanoc/cli/commands/compile/file_action_printer_spec.rb +2 -0
  329. data/spec/nanoc/cli/commands/compile/timing_recorder_spec.rb +2 -0
  330. data/spec/nanoc/cli/commands/compile_spec.rb +2 -0
  331. data/spec/nanoc/cli/commands/deploy_spec.rb +2 -0
  332. data/spec/nanoc/cli/commands/shell_spec.rb +8 -0
  333. data/spec/nanoc/cli/commands/show_data_spec.rb +2 -0
  334. data/spec/nanoc/cli/commands/show_plugins_spec.rb +2 -0
  335. data/spec/nanoc/cli/commands/show_rules_spec.rb +2 -0
  336. data/spec/nanoc/cli/commands/view_spec.rb +2 -0
  337. data/spec/nanoc/cli/stream_cleaners/utf8_spec.rb +2 -0
  338. data/spec/nanoc/data_sources/filesystem_spec.rb +2 -0
  339. data/spec/nanoc/deploying/fog_spec.rb +2 -0
  340. data/spec/nanoc/deploying/git_spec.rb +5 -2
  341. data/spec/nanoc/extra/parallel_collection_spec.rb +2 -0
  342. data/spec/nanoc/filters/colorize_syntax/rouge_spec.rb +61 -59
  343. data/spec/nanoc/filters/less_spec.rb +2 -0
  344. data/spec/nanoc/helpers/blogging_spec.rb +2 -0
  345. data/spec/nanoc/helpers/breadcrumbs_spec.rb +2 -0
  346. data/spec/nanoc/helpers/capturing_spec.rb +6 -4
  347. data/spec/nanoc/helpers/child_parent_spec.rb +2 -0
  348. data/spec/nanoc/helpers/filtering_spec.rb +2 -0
  349. data/spec/nanoc/helpers/html_escape_spec.rb +3 -1
  350. data/spec/nanoc/helpers/link_to_spec.rb +2 -0
  351. data/spec/nanoc/helpers/rendering_spec.rb +2 -0
  352. data/spec/nanoc/helpers/tagging_spec.rb +2 -0
  353. data/spec/nanoc/helpers/text_spec.rb +2 -0
  354. data/spec/nanoc/integration/compile_command_spec.rb +6 -4
  355. data/spec/nanoc/integration/outdatedness_integration_spec.rb +36 -34
  356. data/spec/nanoc/integration/partial_recompilation_spec.rb +10 -8
  357. data/spec/nanoc/regressions/gh_1015_spec.rb +2 -0
  358. data/spec/nanoc/regressions/gh_1022_spec.rb +2 -0
  359. data/spec/nanoc/regressions/gh_1031_spec.rb +2 -0
  360. data/spec/nanoc/regressions/gh_1035_spec.rb +10 -8
  361. data/spec/nanoc/regressions/gh_1037a_spec.rb +2 -0
  362. data/spec/nanoc/regressions/gh_1037b_spec.rb +2 -0
  363. data/spec/nanoc/regressions/gh_1040_spec.rb +2 -0
  364. data/spec/nanoc/regressions/gh_1045_spec.rb +14 -12
  365. data/spec/nanoc/regressions/gh_1047_spec.rb +2 -0
  366. data/spec/nanoc/regressions/gh_1064_spec.rb +2 -0
  367. data/spec/nanoc/regressions/gh_1067_spec.rb +8 -6
  368. data/spec/nanoc/regressions/gh_1082a_spec.rb +2 -0
  369. data/spec/nanoc/regressions/gh_1082b_spec.rb +2 -0
  370. data/spec/nanoc/regressions/gh_1082c_spec.rb +2 -0
  371. data/spec/nanoc/regressions/gh_1082d_spec.rb +2 -0
  372. data/spec/nanoc/regressions/gh_1093_spec.rb +2 -0
  373. data/spec/nanoc/regressions/gh_1094_spec.rb +2 -0
  374. data/spec/nanoc/regressions/gh_1097_spec.rb +2 -0
  375. data/spec/nanoc/regressions/gh_1100_spec.rb +2 -0
  376. data/spec/nanoc/regressions/gh_1102_spec.rb +2 -0
  377. data/spec/nanoc/regressions/gh_1107_spec.rb +2 -0
  378. data/spec/nanoc/regressions/gh_1130_spec.rb +8 -6
  379. data/spec/nanoc/regressions/gh_1134_spec.rb +8 -6
  380. data/spec/nanoc/regressions/gh_1145_spec.rb +7 -5
  381. data/spec/nanoc/regressions/gh_1171_spec.rb +17 -15
  382. data/spec/nanoc/regressions/gh_761_spec.rb +2 -0
  383. data/spec/nanoc/regressions/gh_767_spec.rb +2 -0
  384. data/spec/nanoc/regressions/gh_769_spec.rb +2 -0
  385. data/spec/nanoc/regressions/gh_776_spec.rb +2 -0
  386. data/spec/nanoc/regressions/gh_787_spec.rb +2 -0
  387. data/spec/nanoc/regressions/gh_795_spec.rb +2 -0
  388. data/spec/nanoc/regressions/gh_804_spec.rb +7 -5
  389. data/spec/nanoc/regressions/gh_807_spec.rb +2 -0
  390. data/spec/nanoc/regressions/gh_809_spec.rb +2 -0
  391. data/spec/nanoc/regressions/gh_813_spec.rb +2 -0
  392. data/spec/nanoc/regressions/gh_815_spec.rb +2 -0
  393. data/spec/nanoc/regressions/gh_828_spec.rb +2 -0
  394. data/spec/nanoc/regressions/gh_833_spec.rb +2 -0
  395. data/spec/nanoc/regressions/gh_841_spec.rb +2 -0
  396. data/spec/nanoc/regressions/gh_867_spec.rb +2 -0
  397. data/spec/nanoc/regressions/gh_882_spec.rb +2 -0
  398. data/spec/nanoc/regressions/gh_885_spec.rb +2 -0
  399. data/spec/nanoc/regressions/gh_891_spec.rb +2 -0
  400. data/spec/nanoc/regressions/gh_913_spec.rb +2 -0
  401. data/spec/nanoc/regressions/gh_924_spec.rb +58 -56
  402. data/spec/nanoc/regressions/gh_928_spec.rb +2 -0
  403. data/spec/nanoc/regressions/gh_937_spec.rb +7 -5
  404. data/spec/nanoc/regressions/gh_942_spec.rb +2 -0
  405. data/spec/nanoc/regressions/gh_947_spec.rb +2 -0
  406. data/spec/nanoc/regressions/gh_948_spec.rb +2 -0
  407. data/spec/nanoc/regressions/gh_951_spec.rb +2 -0
  408. data/spec/nanoc/regressions/gh_954_spec.rb +14 -12
  409. data/spec/nanoc/regressions/gh_970a_spec.rb +6 -4
  410. data/spec/nanoc/regressions/gh_970b_spec.rb +10 -8
  411. data/spec/nanoc/regressions/gh_974_spec.rb +6 -4
  412. data/spec/nanoc/regressions/gh_981_spec.rb +2 -0
  413. data/spec/nanoc/rule_dsl/action_sequence_calculator_spec.rb +2 -0
  414. data/spec/nanoc/rule_dsl/recording_executor_spec.rb +2 -0
  415. data/spec/nanoc/rule_dsl/rule_context_spec.rb +2 -0
  416. data/spec/nanoc/rule_dsl/rules_collection_spec.rb +2 -0
  417. data/spec/nanoc/spec_spec.rb +2 -0
  418. data/spec/nanoc/telemetry/counter_spec.rb +2 -0
  419. data/spec/nanoc/telemetry/labelled_counter_spec.rb +2 -0
  420. data/spec/nanoc/telemetry/labelled_summary_spec.rb +2 -0
  421. data/spec/nanoc/telemetry/stopwatch_spec.rb +2 -0
  422. data/spec/nanoc/telemetry/summary_spec.rb +2 -0
  423. data/spec/nanoc/telemetry_spec.rb +2 -0
  424. data/spec/regression_filenames_spec.rb +3 -1
  425. data/spec/spec_helper.rb +2 -0
  426. data/test/base/core_ext/array_spec.rb +2 -0
  427. data/test/base/core_ext/hash_spec.rb +2 -0
  428. data/test/base/core_ext/string_spec.rb +2 -0
  429. data/test/base/test_code_snippet.rb +2 -0
  430. data/test/base/test_compiler.rb +2 -0
  431. data/test/base/test_context.rb +2 -0
  432. data/test/base/test_data_source.rb +2 -0
  433. data/test/base/test_dependency_tracker.rb +2 -0
  434. data/test/base/test_directed_graph.rb +2 -0
  435. data/test/base/test_filter.rb +2 -0
  436. data/test/base/test_item.rb +2 -0
  437. data/test/base/test_item_array.rb +2 -0
  438. data/test/base/test_layout.rb +2 -0
  439. data/test/base/test_notification_center.rb +2 -0
  440. data/test/base/test_site.rb +17 -15
  441. data/test/base/test_store.rb +2 -0
  442. data/test/checking/checks/test_css.rb +2 -0
  443. data/test/checking/checks/test_external_links.rb +2 -0
  444. data/test/checking/checks/test_html.rb +2 -0
  445. data/test/checking/checks/test_internal_links.rb +2 -0
  446. data/test/checking/checks/test_mixed_content.rb +2 -0
  447. data/test/checking/checks/test_stale.rb +2 -0
  448. data/test/checking/test_check.rb +2 -0
  449. data/test/checking/test_dsl.rb +2 -0
  450. data/test/checking/test_runner.rb +2 -0
  451. data/test/cli/commands/test_check.rb +2 -0
  452. data/test/cli/commands/test_compile.rb +2 -0
  453. data/test/cli/commands/test_create_site.rb +2 -0
  454. data/test/cli/commands/test_help.rb +2 -0
  455. data/test/cli/commands/test_info.rb +2 -0
  456. data/test/cli/commands/test_prune.rb +2 -0
  457. data/test/cli/test_cleaning_stream.rb +2 -0
  458. data/test/cli/test_cli.rb +16 -14
  459. data/test/cli/test_error_handler.rb +2 -0
  460. data/test/cli/test_logger.rb +2 -0
  461. data/test/data_sources/test_filesystem.rb +2 -0
  462. data/test/data_sources/test_filesystem_tools.rb +2 -0
  463. data/test/deploying/test_fog.rb +2 -0
  464. data/test/deploying/test_git.rb +33 -31
  465. data/test/deploying/test_rsync.rb +2 -0
  466. data/test/extra/core_ext/test_pathname.rb +2 -0
  467. data/test/extra/core_ext/test_time.rb +2 -0
  468. data/test/extra/test_link_collector.rb +2 -0
  469. data/test/extra/test_piper.rb +2 -0
  470. data/test/filters/colorize_syntax/test_coderay.rb +43 -41
  471. data/test/filters/colorize_syntax/test_common.rb +24 -22
  472. data/test/filters/colorize_syntax/test_pygmentize.rb +2 -0
  473. data/test/filters/colorize_syntax/test_pygments.rb +2 -0
  474. data/test/filters/colorize_syntax/test_simon.rb +2 -0
  475. data/test/filters/test_asciidoc.rb +2 -0
  476. data/test/filters/test_bluecloth.rb +2 -0
  477. data/test/filters/test_coffeescript.rb +2 -0
  478. data/test/filters/test_erb.rb +2 -0
  479. data/test/filters/test_erubi.rb +2 -0
  480. data/test/filters/test_erubis.rb +2 -0
  481. data/test/filters/test_haml.rb +2 -0
  482. data/test/filters/test_handlebars.rb +2 -0
  483. data/test/filters/test_kramdown.rb +2 -0
  484. data/test/filters/test_markaby.rb +2 -0
  485. data/test/filters/test_maruku.rb +2 -0
  486. data/test/filters/test_mustache.rb +2 -0
  487. data/test/filters/test_pandoc.rb +2 -0
  488. data/test/filters/test_rainpress.rb +2 -0
  489. data/test/filters/test_rdiscount.rb +2 -0
  490. data/test/filters/test_rdoc.rb +2 -0
  491. data/test/filters/test_redcarpet.rb +2 -0
  492. data/test/filters/test_redcloth.rb +2 -0
  493. data/test/filters/test_relativize_paths.rb +52 -50
  494. data/test/filters/test_rubypants.rb +2 -0
  495. data/test/filters/test_sass.rb +2 -0
  496. data/test/filters/test_slim.rb +26 -0
  497. data/test/filters/test_typogruby.rb +2 -0
  498. data/test/filters/test_uglify_js.rb +2 -0
  499. data/test/filters/test_xsl.rb +64 -62
  500. data/test/filters/test_yui_compressor.rb +2 -0
  501. data/test/helper.rb +20 -13
  502. data/test/helpers/test_blogging.rb +2 -0
  503. data/test/helpers/test_capturing.rb +12 -10
  504. data/test/helpers/test_link_to.rb +2 -0
  505. data/test/helpers/test_xml_sitemap.rb +2 -0
  506. data/test/rule_dsl/test_action_provider.rb +2 -0
  507. data/test/rule_dsl/test_compiler_dsl.rb +42 -40
  508. data/test/rule_dsl/test_rule.rb +2 -0
  509. data/test/rule_dsl/test_rules_collection.rb +2 -0
  510. data/test/test_gem.rb +2 -0
  511. metadata +5 -3
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ColorizeSyntax::CommonTest < Nanoc::TestCase
@@ -18,7 +20,7 @@ class Nanoc::Filters::ColorizeSyntax::CommonTest < Nanoc::TestCase
18
20
 
19
21
  def test_with_frozen_input
20
22
  if_have 'nokogiri' do
21
- input = '<pre title="moo"><code class="language-ruby"># comment</code></pre>'.freeze
23
+ input = '<pre title="moo"><code class="language-ruby"># comment</code></pre>'
22
24
  input.freeze
23
25
 
24
26
  filter = ::Nanoc::Filters::ColorizeSyntax.new
@@ -32,16 +34,16 @@ class Nanoc::Filters::ColorizeSyntax::CommonTest < Nanoc::TestCase
32
34
  filter = ::Nanoc::Filters::ColorizeSyntax.new
33
35
 
34
36
  # Get input and expected output
35
- input = <<EOS
36
- <!DOCTYPE html>
37
- <html>
38
- <head>
39
- <title>Foo</title>
40
- </head>
41
- <body>
42
- <pre title="moo"><code class="language-ruby"># comment</code></pre>
43
- </body>
44
- </html>
37
+ input = <<~EOS
38
+ <!DOCTYPE html>
39
+ <html>
40
+ <head>
41
+ <title>Foo</title>
42
+ </head>
43
+ <body>
44
+ <pre title="moo"><code class="language-ruby"># comment</code></pre>
45
+ </body>
46
+ </html>
45
47
  EOS
46
48
  expected_output_regex = %r{^<!DOCTYPE html>\s*<html>\s*<head>\s*<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\s*<title>Foo</title>\s*</head>\s*<body>\s*<pre title="moo"><code class="language-ruby"># comment</code></pre>\s*</body>\s*</html>}
47
49
 
@@ -56,17 +58,17 @@ EOS
56
58
  filter = ::Nanoc::Filters::ColorizeSyntax.new
57
59
 
58
60
  # Get input and expected output
59
- input = <<EOS
60
- <!DOCTYPE html>
61
- <html>
62
- <head>
63
- <meta charset="utf-8">
64
- <title>Foo</title>
65
- </head>
66
- <body>
67
- <pre title="moo"><code class="language-ruby"># comment</code></pre>
68
- </body>
69
- </html>
61
+ input = <<~EOS
62
+ <!DOCTYPE html>
63
+ <html>
64
+ <head>
65
+ <meta charset="utf-8">
66
+ <title>Foo</title>
67
+ </head>
68
+ <body>
69
+ <pre title="moo"><code class="language-ruby"># comment</code></pre>
70
+ </body>
71
+ </html>
70
72
  EOS
71
73
  expected_output_regex = %r{^<!DOCTYPE html>\s*<html>\s*<head>\s*<meta charset="utf-8">\s*<title>Foo</title>\s*</head>\s*<body>\s*<pre title="moo"><code class="language-ruby"># comment</code></pre>\s*</body>\s*</html>}
72
74
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ColorizeSyntax::PygmentizeTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ColorizeSyntax::PygmentsTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ColorizeSyntax::SimonTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::AsciiDocTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::BlueClothTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::CoffeeScriptTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ERBTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ErubiTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::ErubisTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::HamlTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::HandlebarsTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::KramdownTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::MarkabyTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::MarukuTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::MustacheTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::PandocTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RainpressTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RDiscountTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RDocTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RedcarpetTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RedClothTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RelativizePathsTest < Nanoc::TestCase
@@ -97,16 +99,16 @@ class Nanoc::Filters::RelativizePathsTest < Nanoc::TestCase
97
99
  end
98
100
 
99
101
  # Set content
100
- raw_content = <<EOS
101
- <!DOCTYPE html>
102
- <html>
103
- <head>
104
- <title>Hello</title>
105
- </head>
106
- <body>
107
- <a href=/foo>foo</a>
108
- </body>
109
- </html>
102
+ raw_content = <<~EOS
103
+ <!DOCTYPE html>
104
+ <html>
105
+ <head>
106
+ <title>Hello</title>
107
+ </head>
108
+ <body>
109
+ <a href=/foo>foo</a>
110
+ </body>
111
+ </html>
110
112
  EOS
111
113
  expected0 = %r{<a href="\.\./\.\.">foo</a>}
112
114
  expected1 = %r{\A\s*<!DOCTYPE html\s*>\s*<html>\s*<head>(.|\s)*<title>Hello</title>\s*</head>\s*<body>\s*<a href="../..">foo</a>\s*</body>\s*</html>\s*\Z}m
@@ -135,16 +137,16 @@ EOS
135
137
  end
136
138
 
137
139
  # Set content
138
- raw_content = <<EOS
139
- <!DOCTYPE html>
140
- <html>
141
- <head>
142
- <title>Hello</title>
143
- </head>
144
- <body>
145
- <a href=/foo>foo</a>
146
- </body>
147
- </html>
140
+ raw_content = <<~EOS
141
+ <!DOCTYPE html>
142
+ <html>
143
+ <head>
144
+ <title>Hello</title>
145
+ </head>
146
+ <body>
147
+ <a href=/foo>foo</a>
148
+ </body>
149
+ </html>
148
150
  EOS
149
151
  expected0 = %r{<a href="\.\./\.\.">foo</a>}
150
152
  expected1 = %r{\A\s*<!DOCTYPE html\s*>\s*<html>\s*<head>\s*<title>Hello</title>\s*</head>\s*<body>\s*<a href="../..">foo</a>\s*</body>\s*</html>\s*\Z}m
@@ -602,11 +604,11 @@ EOS
602
604
 
603
605
  # Set content
604
606
  expected = /<bar boo="\.\.\/\.\.">baz<\/bar>/
605
- raw_content = <<-XML
606
- <?xml version="1.0" encoding="utf-8"?>
607
- <foo>
608
- <bar boo="/foo">baz</bar>
609
- </foo>
607
+ raw_content = <<~XML
608
+ <?xml version="1.0" encoding="utf-8"?>
609
+ <foo>
610
+ <bar boo="/foo">baz</bar>
611
+ </foo>
610
612
  XML
611
613
 
612
614
  actual_content = filter.setup_and_run(raw_content, type: :xml, select: ['*/@boo'])
@@ -634,10 +636,10 @@ XML
634
636
  end
635
637
 
636
638
  # Set content
637
- raw_content = <<-XML
638
- <foo>
639
- <bar><far href="/foo">baz</far></bar>
640
- </foo>
639
+ raw_content = <<~XML
640
+ <foo>
641
+ <bar><far href="/foo">baz</far></bar>
642
+ </foo>
641
643
  XML
642
644
 
643
645
  actual_content = filter.setup_and_run(raw_content, type: :xml, select: ['far/@href'])
@@ -666,10 +668,10 @@ XML
666
668
  end
667
669
 
668
670
  # Set content
669
- raw_content = <<-XML
670
- <foo xmlns="http://example.org">
671
- <bar><a href="/foo">baz</a></bar>
672
- </foo>
671
+ raw_content = <<~XML
672
+ <foo xmlns="http://example.org">
673
+ <bar><a href="/foo">baz</a></bar>
674
+ </foo>
673
675
  XML
674
676
 
675
677
  options = {
@@ -703,18 +705,18 @@ XML
703
705
  end
704
706
 
705
707
  # Set content
706
- raw_content = <<-XML
707
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
708
- <html xmlns="http://www.w3.org/1999/xhtml">
709
- <head>
710
- <link rel="stylesheet" href="/css"/>
711
- <script src="/js"></script>
712
- </head>
713
- <body>
714
- <a href="/foo">bar</a>
715
- <img src="/img"/>
716
- </body>
717
- </html>
708
+ raw_content = <<~XML
709
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
710
+ <html xmlns="http://www.w3.org/1999/xhtml">
711
+ <head>
712
+ <link rel="stylesheet" href="/css"/>
713
+ <script src="/js"></script>
714
+ </head>
715
+ <body>
716
+ <a href="/foo">bar</a>
717
+ <img src="/img"/>
718
+ </body>
719
+ </html>
718
720
  XML
719
721
 
720
722
  actual_content = filter.setup_and_run(raw_content, type: :xhtml)
@@ -745,11 +747,11 @@ XML
745
747
  end
746
748
 
747
749
  # Set content
748
- raw_content = <<-XML
749
- <a href="/foo">bar</a>
750
- <p>
751
- <img src="/img"/>
752
- </p>
750
+ raw_content = <<~XML
751
+ <a href="/foo">bar</a>
752
+ <p>
753
+ <img src="/img"/>
754
+ </p>
753
755
  XML
754
756
 
755
757
  expected_content =
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::RubyPantsTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::SassTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::SlimTest < Nanoc::TestCase
@@ -28,4 +30,28 @@ class Nanoc::Filters::SlimTest < Nanoc::TestCase
28
30
  assert_equal('<p>The rabbit is on the branch.</p>', result)
29
31
  end
30
32
  end
33
+
34
+ def new_view_context
35
+ Nanoc::ViewContext.new(
36
+ reps: :__irrelevat_reps,
37
+ items: :__irrelevat_items,
38
+ dependency_tracker: :__irrelevant_dependency_tracker,
39
+ compilation_context: :__irrelevat_compiler,
40
+ snapshot_repo: :__irrelevant_snapshot_repo,
41
+ )
42
+ end
43
+
44
+ def test_filter_slim_reports_filename
45
+ if_have 'slim' do
46
+ layout = Nanoc::Int::Layout.new('', {}, '/layout.slim')
47
+ layout = Nanoc::LayoutView.new(layout, new_view_context)
48
+
49
+ assigns = { layout: layout }
50
+
51
+ filter = ::Nanoc::Filters::Slim.new(assigns)
52
+
53
+ error = assert_raises(NameError) { filter.setup_and_run('deliberate=failure') }
54
+ assert_match(%r{^layout /layout.slim}, error.backtrace[1])
55
+ end
56
+ end
31
57
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::TypogrubyTest < Nanoc::TestCase
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  class Nanoc::Filters::UglifyJSTest < Nanoc::TestCase
@@ -1,84 +1,86 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'helper'
2
4
 
3
5
  require 'tempfile'
4
6
 
5
7
  class Nanoc::Filters::XSLTest < Nanoc::TestCase
6
- SAMPLE_XSL = <<-EOS.freeze
7
- <?xml version="1.0" encoding="utf-8"?>
8
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
9
- <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>
10
- <xsl:template match="/">
11
- <html>
12
- <head>
13
- <title><xsl:value-of select="report/title"/></title>
14
- </head>
15
- <body>
16
- <h1><xsl:value-of select="report/title"/></h1>
17
- </body>
18
- </html>
19
- </xsl:template>
20
- </xsl:stylesheet>
8
+ SAMPLE_XSL = <<~EOS
9
+ <?xml version="1.0" encoding="utf-8"?>
10
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
11
+ <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>
12
+ <xsl:template match="/">
13
+ <html>
14
+ <head>
15
+ <title><xsl:value-of select="report/title"/></title>
16
+ </head>
17
+ <body>
18
+ <h1><xsl:value-of select="report/title"/></h1>
19
+ </body>
20
+ </html>
21
+ </xsl:template>
22
+ </xsl:stylesheet>
21
23
  EOS
22
24
 
23
- SAMPLE_XML_IN = <<-EOS.freeze
24
- <?xml version="1.0" encoding="utf-8"?>
25
- <report>
26
- <title>My Report</title>
27
- </report>
25
+ SAMPLE_XML_IN = <<~EOS
26
+ <?xml version="1.0" encoding="utf-8"?>
27
+ <report>
28
+ <title>My Report</title>
29
+ </report>
28
30
  EOS
29
31
 
30
32
  SAMPLE_XML_OUT = %r{\A<\?xml version="1.0" encoding="utf-8"\?>\s*<html>\s*<head>\s*<title>My Report</title>\s*</head>\s*<body>\s*<h1>My Report</h1>\s*</body>\s*</html>\s*\Z}m
31
33
 
32
- SAMPLE_XSL_WITH_PARAMS = <<-EOS.freeze
33
- <?xml version="1.0" encoding="utf-8"?>
34
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
35
- <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>
36
- <xsl:param name="foo"/>
37
- <xsl:template match="/">
38
- <html>
39
- <head>
40
- <title><xsl:value-of select="report/title"/></title>
41
- </head>
42
- <body>
43
- <h1><xsl:value-of select="$foo"/></h1>
44
- </body>
45
- </html>
46
- </xsl:template>
47
- </xsl:stylesheet>
34
+ SAMPLE_XSL_WITH_PARAMS = <<~EOS
35
+ <?xml version="1.0" encoding="utf-8"?>
36
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
37
+ <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>
38
+ <xsl:param name="foo"/>
39
+ <xsl:template match="/">
40
+ <html>
41
+ <head>
42
+ <title><xsl:value-of select="report/title"/></title>
43
+ </head>
44
+ <body>
45
+ <h1><xsl:value-of select="$foo"/></h1>
46
+ </body>
47
+ </html>
48
+ </xsl:template>
49
+ </xsl:stylesheet>
48
50
  EOS
49
51
 
50
- SAMPLE_XML_IN_WITH_PARAMS = <<-EOS.freeze
51
- <?xml version="1.0" encoding="utf-8"?>
52
- <report>
53
- <title>My Report</title>
54
- </report>
52
+ SAMPLE_XML_IN_WITH_PARAMS = <<~EOS
53
+ <?xml version="1.0" encoding="utf-8"?>
54
+ <report>
55
+ <title>My Report</title>
56
+ </report>
55
57
  EOS
56
58
 
57
59
  SAMPLE_XML_OUT_WITH_PARAMS = %r{\A<\?xml version="1.0" encoding="utf-8"\?>\s*<html>\s*<head>\s*<title>My Report</title>\s*</head>\s*<body>\s*<h1>bar</h1>\s*</body>\s*</html>\s*\Z}m
58
60
 
59
- SAMPLE_XSL_WITH_OMIT_XML_DECL = <<-EOS.freeze
60
- <?xml version="1.0" encoding="utf-8"?>
61
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
62
- <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"
63
- omit-xml-declaration="yes"/>
64
- <xsl:template match="/">
65
- <html>
66
- <head>
67
- <title><xsl:value-of select="report/title"/></title>
68
- </head>
69
- <body>
70
- <h1><xsl:value-of select="report/title"/></h1>
71
- </body>
72
- </html>
73
- </xsl:template>
74
- </xsl:stylesheet>
61
+ SAMPLE_XSL_WITH_OMIT_XML_DECL = <<~EOS
62
+ <?xml version="1.0" encoding="utf-8"?>
63
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
64
+ <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"
65
+ omit-xml-declaration="yes"/>
66
+ <xsl:template match="/">
67
+ <html>
68
+ <head>
69
+ <title><xsl:value-of select="report/title"/></title>
70
+ </head>
71
+ <body>
72
+ <h1><xsl:value-of select="report/title"/></h1>
73
+ </body>
74
+ </html>
75
+ </xsl:template>
76
+ </xsl:stylesheet>
75
77
  EOS
76
78
 
77
- SAMPLE_XML_IN_WITH_OMIT_XML_DECL = <<-EOS.freeze
78
- <?xml version="1.0" encoding="utf-8"?>
79
- <report>
80
- <title>My Report</title>
81
- </report>
79
+ SAMPLE_XML_IN_WITH_OMIT_XML_DECL = <<~EOS
80
+ <?xml version="1.0" encoding="utf-8"?>
81
+ <report>
82
+ <title>My Report</title>
83
+ </report>
82
84
  EOS
83
85
 
84
86
  SAMPLE_XML_OUT_WITH_OMIT_XML_DECL = %r{\A<html>\s*<head>\s*<title>My Report</title>\s*</head>\s*<body>\s*<h1>My Report</h1>\s*</body>\s*</html>\s*\Z}m