middleman-core 3.1.0.beta.3 → 3.1.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/features/asset_hash.feature +135 -0
- data/features/asset_host.feature +56 -0
- data/features/automatic_image_sizes.feature +16 -0
- data/features/cache_buster.feature +42 -0
- data/features/coffee-script.feature +22 -0
- data/features/compass-sprites.feature +6 -0
- data/features/content_for.feature +16 -0
- data/features/directory_index.feature +67 -0
- data/features/fonts.feature +15 -0
- data/features/former_padrino_helpers.feature +27 -0
- data/features/gzip.feature +21 -0
- data/features/helpers_auto_javascript_include_tag.feature +27 -0
- data/features/helpers_auto_stylesheet_link_tag.feature +27 -0
- data/features/helpers_form_tag.feature +26 -0
- data/features/helpers_link_to.feature +152 -0
- data/features/helpers_lorem.feature +6 -0
- data/features/helpers_page_classes.feature +17 -0
- data/features/helpers_url_for.feature +152 -0
- data/features/i18n_builder.feature +148 -0
- data/features/i18n_force_locale.feature +13 -0
- data/features/i18n_preview.feature +230 -0
- data/features/ignore_already_minified.feature +47 -0
- data/features/liquid.feature +11 -0
- data/features/markdown.feature +13 -0
- data/features/markdown_redcarpet.feature +86 -0
- data/features/markdown_redcarpet_in_haml.feature +42 -0
- data/features/minify_css.feature +127 -0
- data/features/minify_javascript.feature +225 -0
- data/features/more-clean_build.feature +14 -0
- data/features/more-extensionless_text_files.feature +28 -0
- data/features/more-frontmatter_page_settings.feature +42 -0
- data/features/more-ignore.feature +62 -0
- data/features/more-implied_extensions.feature +42 -0
- data/features/more-instance_vars.feature +18 -0
- data/features/more-sitemap_traversal.feature +73 -0
- data/features/more-wildcard_page_helper.feature +10 -0
- data/features/nested_layouts.feature +55 -0
- data/features/partials.feature +46 -0
- data/features/partials_dir.feature +30 -0
- data/features/relative_assets.feature +136 -0
- data/features/sass-assets-paths.feature +11 -0
- data/features/sass_cache_path.feature +22 -0
- data/features/sass_partials.feature +54 -0
- data/features/scss-support.feature +12 -0
- data/features/slim.feature +69 -0
- data/features/stylus.feature +55 -0
- data/features/twitter-bootstrap-compile.feature +6 -0
- data/fixtures/asset-hash-app/config.rb +8 -0
- data/fixtures/asset-hash-app/lib/middleware.rb +16 -0
- data/fixtures/asset-hash-app/source/apple-touch-icon.png +0 -0
- data/fixtures/asset-hash-app/source/favicon.ico +0 -0
- data/fixtures/asset-hash-app/source/images/100px.gif +0 -0
- data/fixtures/asset-hash-app/source/images/100px.jpg +0 -0
- data/fixtures/asset-hash-app/source/images/100px.png +0 -0
- data/fixtures/asset-hash-app/source/index.html.erb +311 -0
- data/fixtures/asset-hash-app/source/javascripts/application.js +8 -0
- data/fixtures/asset-hash-app/source/layout.erb +18 -0
- data/fixtures/asset-hash-app/source/other.html.erb +2 -0
- data/fixtures/asset-hash-app/source/partials.html.erb +1 -0
- data/fixtures/asset-hash-app/source/stylesheets/_partial.sass +2 -0
- data/fixtures/asset-hash-app/source/stylesheets/site.css.scss +4 -0
- data/fixtures/asset-hash-app/source/stylesheets/uses_partials.css.sass +4 -0
- data/fixtures/asset-hash-app/source/subdir/index.html.erb +308 -0
- data/fixtures/asset-hash-host-app/config.rb +6 -0
- data/fixtures/asset-hash-host-app/source/images/100px.gif +0 -0
- data/fixtures/asset-hash-host-app/source/images/100px.jpg +0 -0
- data/fixtures/asset-hash-host-app/source/images/100px.png +0 -0
- data/fixtures/asset-hash-host-app/source/index.html.erb +6 -0
- data/fixtures/asset-hash-host-app/source/layout.erb +17 -0
- data/fixtures/asset-hash-host-app/source/other.html.erb +2 -0
- data/fixtures/asset-hash-host-app/source/stylesheets/site.css.scss +4 -0
- data/fixtures/asset-hash-host-app/source/subdir/index.html.erb +6 -0
- data/fixtures/asset-host-app/config.rb +0 -0
- data/fixtures/asset-host-app/source/.htaccess +1 -0
- data/fixtures/asset-host-app/source/asset_host.html.erb +1 -0
- data/fixtures/asset-host-app/source/images/blank.gif +0 -0
- data/fixtures/asset-host-app/source/stylesheets/asset_host.css.sass +3 -0
- data/fixtures/auto-css-app/config.rb +11 -0
- data/fixtures/auto-css-app/source/auto-css/auto-css.html.erb +1 -0
- data/fixtures/auto-css-app/source/auto-css/index.html.erb +1 -0
- data/fixtures/auto-css-app/source/auto-css/sub/auto-css.html.erb +1 -0
- data/fixtures/auto-css-app/source/auto-css.html.erb +1 -0
- data/fixtures/auto-css-app/source/stylesheets/auto-css/auto-css.css +3 -0
- data/fixtures/auto-css-app/source/stylesheets/auto-css/index.css +0 -0
- data/fixtures/auto-css-app/source/stylesheets/auto-css/sub/auto-css.css +3 -0
- data/fixtures/auto-css-app/source/stylesheets/auto-css.css +3 -0
- data/fixtures/auto-js-app/config.rb +11 -0
- data/fixtures/auto-js-app/source/auto-js/auto-js.html.erb +1 -0
- data/fixtures/auto-js-app/source/auto-js/index.html.erb +1 -0
- data/fixtures/auto-js-app/source/auto-js/sub/auto-js.html.erb +1 -0
- data/fixtures/auto-js-app/source/auto-js.html.erb +1 -0
- data/fixtures/auto-js-app/source/javascripts/auto-js/auto-js.js +1 -0
- data/fixtures/auto-js-app/source/javascripts/auto-js/index.js +1 -0
- data/fixtures/auto-js-app/source/javascripts/auto-js/sub/auto-js.js +1 -0
- data/fixtures/auto-js-app/source/javascripts/auto-js.js +1 -0
- data/fixtures/automatic-image-size-app/config.rb +0 -0
- data/fixtures/automatic-image-size-app/source/auto-image-sizes.html.erb +1 -0
- data/fixtures/automatic-image-size-app/source/images/blank.gif +0 -0
- data/fixtures/cache-buster-app/config.rb +0 -0
- data/fixtures/cache-buster-app/source/cache-buster.html.erb +3 -0
- data/fixtures/cache-buster-app/source/images/blank.gif +0 -0
- data/fixtures/cache-buster-app/source/stylesheets/relative_assets.css.sass +3 -0
- data/fixtures/cache-buster-app/source/stylesheets/site.css.sass +1 -0
- data/fixtures/clean-dir-app/config.rb +2 -0
- data/fixtures/clean-dir-app/source/about.html +1 -0
- data/fixtures/coffeescript-app/config.rb +0 -0
- data/fixtures/coffeescript-app/source/inline-coffeescript.html.haml +3 -0
- data/fixtures/coffeescript-app/source/javascripts/broken-coffee.js.coffee +3 -0
- data/fixtures/coffeescript-app/source/javascripts/coffee_test.js.coffee +3 -0
- data/fixtures/compass-sprites-app/config.rb +0 -0
- data/fixtures/compass-sprites-app/source/images/icon/arrow_down.png +0 -0
- data/fixtures/compass-sprites-app/source/images/icon/arrow_left.png +0 -0
- data/fixtures/compass-sprites-app/source/images/icon/arrow_right.png +0 -0
- data/fixtures/compass-sprites-app/source/images/icon/arrow_up.png +0 -0
- data/fixtures/compass-sprites-app/source/stylesheets/site.css.scss +3 -0
- data/fixtures/content-for-app/config.rb +7 -0
- data/fixtures/content-for-app/source/content_for_erb.html.erb +5 -0
- data/fixtures/content-for-app/source/content_for_haml.html.haml +4 -0
- data/fixtures/content-for-app/source/content_for_slim.html.slim +4 -0
- data/fixtures/content-for-app/source/layouts/content_for.erb +4 -0
- data/fixtures/default-partials-dir-app/source/_partial.html.erb +1 -0
- data/fixtures/default-partials-dir-app/source/index.html.erb +2 -0
- data/fixtures/different-engine-layout/source/index.html.str +1 -0
- data/fixtures/different-engine-partial/config.rb +0 -0
- data/fixtures/different-engine-partial/source/index.html.erb +1 -0
- data/fixtures/different-engine-partial/source/layouts/layout.erb +7 -0
- data/fixtures/different-engine-partial/source/shared/_footer.str +1 -0
- data/fixtures/different-engine-partial/source/shared/_header.erb +1 -0
- data/fixtures/fonts-app/config.rb +0 -0
- data/fixtures/fonts-app/source/fonts/StMarie-Thin.otf +0 -0
- data/fixtures/fonts-app/source/fonts/blank/blank.otf +0 -0
- data/fixtures/fonts-app/source/stylesheets/fonts.css.sass +5 -0
- data/fixtures/gzip-app/config.rb +1 -0
- data/fixtures/gzip-app/source/index.html +0 -0
- data/fixtures/gzip-app/source/javascripts/test.js +1 -0
- data/fixtures/gzip-app/source/stylesheets/test.css +1 -0
- data/fixtures/i18n-alt-root-app/locales/en.yml +4 -0
- data/fixtures/i18n-alt-root-app/locales/es.yml +7 -0
- data/fixtures/i18n-alt-root-app/source/lang_data/hello.html.erb +1 -0
- data/fixtures/i18n-alt-root-app/source/lang_data/index.html.erb +1 -0
- data/fixtures/i18n-alt-root-app/source/layout.erb +1 -0
- data/fixtures/i18n-default-app/locales/en.yml +4 -0
- data/fixtures/i18n-default-app/locales/es.yml +8 -0
- data/fixtures/i18n-default-app/source/localizable/index.html.erb +5 -0
- data/fixtures/i18n-force-locale/config.rb +13 -0
- data/fixtures/i18n-force-locale/locales/en.yml +3 -0
- data/fixtures/i18n-force-locale/locales/es.yml +3 -0
- data/fixtures/i18n-force-locale/locales/fr.yml +3 -0
- data/fixtures/i18n-force-locale/source/index.haml +2 -0
- data/fixtures/i18n-test-app/locales/en.yml +4 -0
- data/fixtures/i18n-test-app/locales/es.yml +8 -0
- data/fixtures/i18n-test-app/source/CNAME +1 -0
- data/fixtures/i18n-test-app/source/layout.erb +8 -0
- data/fixtures/i18n-test-app/source/localizable/hello.html.erb +1 -0
- data/fixtures/i18n-test-app/source/localizable/index.html.erb +1 -0
- data/fixtures/i18n-test-app/source/morning.en.html.erb +1 -0
- data/fixtures/i18n-test-app/source/morning.es.html.erb +1 -0
- data/fixtures/i18n-test-app/source/password.txt +1 -0
- data/fixtures/i18n-test-app/source/stylesheets/site.css +3 -0
- data/fixtures/indexable-app/config.rb +4 -0
- data/fixtures/indexable-app/source/.htpasswd +1 -0
- data/fixtures/liquid-app/config.rb +0 -0
- data/fixtures/liquid-app/data/test.yml +4 -0
- data/fixtures/liquid-app/data/test2.json +4 -0
- data/fixtures/liquid-app/source/_liquid_partial.liquid +1 -0
- data/fixtures/liquid-app/source/data2.html.liquid +2 -0
- data/fixtures/liquid-app/source/liquid_master.html.liquid +1 -0
- data/fixtures/lorem-app/config.rb +1 -0
- data/fixtures/lorem-app/source/lorem.html.erb +13 -0
- data/fixtures/markdown-app/config.rb +1 -0
- data/fixtures/markdown-app/source/autolink.html.markdown +5 -0
- data/fixtures/markdown-app/source/fenced_code_blocks.html.markdown +7 -0
- data/fixtures/markdown-app/source/hard_wrap.html.markdown +2 -0
- data/fixtures/markdown-app/source/images/blank.gif +0 -0
- data/fixtures/markdown-app/source/index.html.markdown +4 -0
- data/fixtures/markdown-app/source/no_intra_emphasis.html.markdown +5 -0
- data/fixtures/markdown-app/source/smarty_pants.html.markdown +5 -0
- data/fixtures/markdown-app/source/space_after_headers.html.markdown +5 -0
- data/fixtures/markdown-app/source/strikethrough.html.markdown +5 -0
- data/fixtures/markdown-app/source/superscript.html.markdown +5 -0
- data/fixtures/markdown-app/source/tables.html.markdown +8 -0
- data/fixtures/markdown-app/source/with_toc_data.html.markdown +3 -0
- data/fixtures/markdown-frontmatter-options-app/config.rb +1 -0
- data/fixtures/markdown-frontmatter-options-app/source/smarty_pants-default.html.markdown +5 -0
- data/fixtures/markdown-frontmatter-options-app/source/smarty_pants-off.html.markdown +7 -0
- data/fixtures/markdown-frontmatter-options-app/source/smarty_pants-on.html.markdown +7 -0
- data/fixtures/markdown-frontmatter-options-app/source/tables-default.html.markdown +8 -0
- data/fixtures/markdown-frontmatter-options-app/source/tables-off.html.markdown +10 -0
- data/fixtures/markdown-frontmatter-options-app/source/tables-on.html.markdown +10 -0
- data/fixtures/markdown-in-haml-app/config.rb +0 -0
- data/fixtures/markdown-in-haml-app/source/images/blank.gif +0 -0
- data/fixtures/markdown-in-haml-app/source/link_target.html.markdown +4 -0
- data/fixtures/minify-css-app/source/inline-css.html.haml +5 -0
- data/fixtures/minify-css-app/source/more-css/site.css +3 -0
- data/fixtures/minify-css-app/source/stylesheets/report.css +1 -0
- data/fixtures/minify-css-app/source/stylesheets/site.css.sass +5 -0
- data/fixtures/minify-js-app/config.rb +0 -0
- data/fixtures/minify-js-app/source/inline-coffeescript.html.haml +3 -0
- data/fixtures/minify-js-app/source/inline-js.html.haml +28 -0
- data/fixtures/minify-js-app/source/javascripts/coffee_test.js.coffee +3 -0
- data/fixtures/minify-js-app/source/javascripts/js_test.js +8 -0
- data/fixtures/minify-js-app/source/more-js/other.js +8 -0
- data/fixtures/more-extensionless-text-files-app/config.rb +1 -0
- data/fixtures/more-extensionless-text-files-app/source/CNAME +1 -0
- data/fixtures/more-extensionless-text-files-app/source/LICENSE +1 -0
- data/fixtures/more-extensionless-text-files-app/source/README +1 -0
- data/fixtures/more-extensionless-text-files-app/source/index.html +1 -0
- data/fixtures/more-frontmatter-settings-app/config.rb +4 -0
- data/fixtures/more-frontmatter-settings-app/source/alternate_layout.html.erb +5 -0
- data/fixtures/more-frontmatter-settings-app/source/ignored.html.erb +5 -0
- data/fixtures/more-frontmatter-settings-app/source/layouts/alternate.erb +3 -0
- data/fixtures/more-frontmatter-settings-app/source/no_index.html.erb +5 -0
- data/fixtures/more-ignore-app/source/about.html.erb +1 -0
- data/fixtures/more-ignore-app/source/images/icon/messages.png +0 -0
- data/fixtures/more-ignore-app/source/images/pic.png +0 -0
- data/fixtures/more-ignore-app/source/images/portrait.jpg +0 -0
- data/fixtures/more-ignore-app/source/index.html.erb +0 -0
- data/fixtures/more-ignore-app/source/plain.html +1 -0
- data/fixtures/more-ignore-app/source/reports/another.html +0 -0
- data/fixtures/more-ignore-app/source/reports/index.html +0 -0
- data/fixtures/more-implied-extensions-app/config.rb +0 -0
- data/fixtures/more-implied-extensions-app/source/javascripts/app.coffee +1 -0
- data/fixtures/more-implied-extensions-app/source/stylesheets/style.scss +3 -0
- data/fixtures/more-implied-extensions-app/source/stylesheets/style2.sass +3 -0
- data/fixtures/more-implied-extensions-app/source/stylesheets/style3.less +4 -0
- data/fixtures/more-implied-extensions-app/source/test.haml +4 -0
- data/fixtures/more-implied-extensions-app/source/test2.markdown +3 -0
- data/fixtures/more-implied-extensions-app/source/test3.slim +3 -0
- data/fixtures/more-implied-extensions-app/source/test4.liquid +1 -0
- data/fixtures/more-instance-vars-app/config.rb +0 -0
- data/fixtures/more-instance-vars-app/source/_vartial.erb +5 -0
- data/fixtures/more-instance-vars-app/source/instance-var-set.html.erb +2 -0
- data/fixtures/more-instance-vars-app/source/layout.erb +3 -0
- data/fixtures/more-instance-vars-app/source/no-instance-var.html.erb +1 -0
- data/fixtures/more-preview-app/config.rb +0 -0
- data/fixtures/more-preview-app/source/content.html.erb +1 -0
- data/fixtures/more-preview-app/source/layout.erb +1 -0
- data/fixtures/more-preview-app/source/stylesheets/_partial.sass +2 -0
- data/fixtures/more-preview-app/source/stylesheets/_partial2.css.sass +2 -0
- data/fixtures/more-preview-app/source/stylesheets/main.css.sass +4 -0
- data/fixtures/more-preview-app/source/stylesheets/main2.css.sass +4 -0
- data/fixtures/more-preview-app/source/stylesheets/plain.css.sass +2 -0
- data/fixtures/more-traversal-app/config.rb +7 -0
- data/fixtures/more-traversal-app/source/directory-indexed/sibling.html.erb +3 -0
- data/fixtures/more-traversal-app/source/directory-indexed/sibling2.html.erb +3 -0
- data/fixtures/more-traversal-app/source/directory-indexed/sub2/index.html.erb +0 -0
- data/fixtures/more-traversal-app/source/directory-indexed/sub3/deep.html.erb +0 -0
- data/fixtures/more-traversal-app/source/directory-indexed.html.erb +0 -0
- data/fixtures/more-traversal-app/source/index.html.erb +0 -0
- data/fixtures/more-traversal-app/source/layout.erb +21 -0
- data/fixtures/more-traversal-app/source/proxied.html.erb +0 -0
- data/fixtures/more-traversal-app/source/root.html.erb +0 -0
- data/fixtures/more-traversal-app/source/sub/index.html.erb +0 -0
- data/fixtures/more-traversal-app/source/sub/sibling.html.erb +0 -0
- data/fixtures/more-traversal-app/source/sub/sibling2.html.erb +0 -0
- data/fixtures/more-traversal-app/source/sub/sub2/index.html.erb +0 -0
- data/fixtures/more-traversal-app/source/sub/sub3/deep.html.erb +0 -0
- data/fixtures/nested-layout-app/config.rb +1 -0
- data/fixtures/nested-layout-app/source/another.html.markdown +7 -0
- data/fixtures/nested-layout-app/source/data-one.html.erb +5 -0
- data/fixtures/nested-layout-app/source/data-two.html.erb +5 -0
- data/fixtures/nested-layout-app/source/haml-test.html.markdown +7 -0
- data/fixtures/nested-layout-app/source/index.html.erb +6 -0
- data/fixtures/nested-layout-app/source/layouts/inner.erb +4 -0
- data/fixtures/nested-layout-app/source/layouts/inner_haml.haml +3 -0
- data/fixtures/nested-layout-app/source/layouts/inner_slim.slim +3 -0
- data/fixtures/nested-layout-app/source/layouts/master.erb +3 -0
- data/fixtures/nested-layout-app/source/layouts/master_haml.haml +3 -0
- data/fixtures/nested-layout-app/source/layouts/master_slim.slim +3 -0
- data/fixtures/nested-layout-app/source/layouts/outer.erb +4 -0
- data/fixtures/nested-layout-app/source/layouts/outer_haml.haml +3 -0
- data/fixtures/nested-layout-app/source/layouts/outer_slim.slim +3 -0
- data/fixtures/nested-layout-app/source/slim-test.html.markdown +7 -0
- data/fixtures/padrino-helpers-app/config.rb +0 -0
- data/fixtures/padrino-helpers-app/source/former_padrino_test.html.erb +6 -0
- data/fixtures/page-classes-app/config.rb +4 -0
- data/fixtures/page-classes-app/source/page-classes.html.erb +1 -0
- data/fixtures/page-classes-app/source/sub1/page-classes.html.erb +1 -0
- data/fixtures/page-classes-app/source/sub1/sub2/page-classes.html.erb +1 -0
- data/fixtures/partials-app/config.rb +0 -0
- data/fixtures/partials-app/source/_locals.erb +1 -0
- data/fixtures/partials-app/source/_main.erb +1 -0
- data/fixtures/partials-app/source/_main.str +1 -0
- data/fixtures/partials-app/source/index.html.erb +3 -0
- data/fixtures/partials-app/source/locals.html.erb +1 -0
- data/fixtures/partials-app/source/second.html.str +3 -0
- data/fixtures/partials-app/source/shared/_footer.erb +1 -0
- data/fixtures/partials-app/source/shared/_header.erb +1 -0
- data/fixtures/partials-app/source/shared/snippet.erb +1 -0
- data/fixtures/partials-app/source/sub/_local.erb +1 -0
- data/fixtures/partials-app/source/sub/index.html.erb +3 -0
- data/fixtures/partials-app/source/using_snippet.html.erb +1 -0
- data/fixtures/partials-dir-app/source/index.html.erb +2 -0
- data/fixtures/partials-dir-app/source/nested/partials/_partial.html.erb +1 -0
- data/fixtures/partials-dir-app/source/partials/_partial.html.erb +1 -0
- data/fixtures/passthrough-app/source/.htaccess +1 -0
- data/fixtures/passthrough-app/source/inline-coffeescript.html.haml +3 -0
- data/fixtures/passthrough-app/source/inline-css.html.haml +4 -0
- data/fixtures/passthrough-app/source/inline-js.html.haml +28 -0
- data/fixtures/passthrough-app/source/javascripts/coffee_test.js.coffee +3 -0
- data/fixtures/passthrough-app/source/javascripts/js_test.js +8 -0
- data/fixtures/passthrough-app/source/stylesheets/site.css.sass +1 -0
- data/fixtures/relative-app/config.rb +0 -0
- data/fixtures/relative-app/source/images/blank.gif +0 -0
- data/fixtures/relative-app/source/stylesheets/relative_assets.css.sass +3 -0
- data/fixtures/relative-assets-app/config.rb +1 -0
- data/fixtures/relative-assets-app/source/images/blank.gif +0 -0
- data/fixtures/relative-assets-app/source/img/blank.gif +0 -0
- data/fixtures/relative-assets-app/source/relative_image.html.erb +8 -0
- data/fixtures/relative-assets-app/source/stylesheets/relative_assets.css.sass +3 -0
- data/fixtures/sass-assets-path-app/assets/stylesheets/_shared-asset-sass.sass +1 -0
- data/fixtures/sass-assets-path-app/assets/stylesheets/_shared-asset.scss +1 -0
- data/fixtures/sass-assets-path-app/config.rb +4 -0
- data/fixtures/sass-assets-path-app/my-vendor/stylesheets/_partial.sass +2 -0
- data/fixtures/sass-assets-path-app/source/stylesheets/plain.css.sass +16 -0
- data/fixtures/sass-cache-path-custom-app/config.rb +3 -0
- data/fixtures/sass-cache-path-custom-app/source/stylesheets/plain.css.sass +4 -0
- data/fixtures/sass-cache-path-default-app/config.rb +3 -0
- data/fixtures/sass-cache-path-default-app/source/stylesheets/plain.css.sass +4 -0
- data/fixtures/scss-app/config.rb +0 -0
- data/fixtures/scss-app/source/stylesheets/layout.css.sass +2 -0
- data/fixtures/scss-app/source/stylesheets/site_scss.css.scss +1 -0
- data/fixtures/stylus-preview-app/config.rb +0 -0
- data/fixtures/stylus-preview-app/source/content.html.erb +1 -0
- data/fixtures/stylus-preview-app/source/layout.erb +1 -0
- data/fixtures/stylus-preview-app/source/stylesheets/_partial.styl +2 -0
- data/fixtures/stylus-preview-app/source/stylesheets/_partial2.css.styl +2 -0
- data/fixtures/stylus-preview-app/source/stylesheets/main.css.styl +4 -0
- data/fixtures/stylus-preview-app/source/stylesheets/main2.css.styl +4 -0
- data/fixtures/stylus-preview-app/source/stylesheets/plain.css.styl +2 -0
- data/fixtures/twitter-bootstrap-app/config.rb +0 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/.gitignore +36 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/.travis.yml +3 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/LICENSE +176 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/README.md +137 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/img/glyphicons-halflings-white.png +0 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/img/glyphicons-halflings.png +0 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/.jshintrc +10 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/README.md +112 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-alert.js +90 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-button.js +96 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-carousel.js +169 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-collapse.js +157 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-dropdown.js +100 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-modal.js +218 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-popover.js +98 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-scrollspy.js +151 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-tab.js +135 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-tooltip.js +275 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-transition.js +61 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/bootstrap-typeahead.js +285 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/index.html +54 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/phantom.js +63 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/server.js +14 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-alert.js +56 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-button.js +77 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-carousel.js +28 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-collapse.js +54 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-dropdown.js +87 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-modal.js +114 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-phantom.js +21 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-popover.js +93 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-scrollspy.js +31 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-tab.js +61 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-tooltip.js +155 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-transition.js +13 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/unit/bootstrap-typeahead.js +148 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/vendor/jquery.js +9252 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/vendor/qunit.css +232 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/js/tests/vendor/qunit.js +1510 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_accordion.less +33 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_alerts.less +58 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_breadcrumbs.less +24 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_button-groups.less +191 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_buttons.less +191 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_carousel.less +121 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_close.less +29 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_code.less +57 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_component-animations.less +20 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_dropdowns.less +143 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_forms.less +583 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_grid.less +5 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_hero-unit.less +22 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_labels-badges.less +55 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_layouts.less +17 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_mixins.less +646 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_modals.less +90 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_navbar.less +358 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_navs.less +363 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_pager.less +36 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_pagination.less +56 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_popovers.less +49 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_progress-bars.less +117 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_reset.less +131 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_responsive-1200px-min.less +26 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_responsive-767px-max.less +149 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_responsive-768px-979px.less +17 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_responsive-navbar.less +153 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_responsive-utilities.less +41 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_scaffolding.less +29 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_sprites.less +191 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_tables.less +176 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_thumbnails.less +47 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_tooltip.less +35 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_type.less +232 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_utilities.less +23 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_variables.less +206 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/_wells.less +27 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/bootstrap.less +62 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/responsive.less +48 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/tests/css-tests.css +52 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/tests/css-tests.html +917 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/tests/forms.html +179 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/less/tests/navbar.html +108 -0
- data/fixtures/twitter-bootstrap-app/source/twitter-bootstrap-ebc6935/package.json +25 -0
- data/fixtures/wildcard-directory-index-app/config.rb +2 -0
- data/fixtures/wildcard-directory-index-app/source/admin/index.html.erb +1 -0
- data/fixtures/wildcard-directory-index-app/source/admin/page.html.erb +1 -0
- data/fixtures/wildcard-directory-index-app/source/index.html.erb +1 -0
- data/fixtures/wildcard-directory-index-app/source/layouts/admin.erb +2 -0
- data/fixtures/wildcard-directory-index-app/source/layouts/layout.erb +2 -0
- data/lib/middleman-core/cli/build.rb +8 -5
- data/lib/middleman-core/extensions.rb +0 -5
- data/lib/middleman-core/meta_pages/sitemap_resource.rb +2 -0
- data/lib/middleman-core/preview_server.rb +1 -1
- data/lib/middleman-core/templates/shared/Gemfile.tt +1 -1
- data/lib/middleman-core/util.rb +9 -7
- data/lib/middleman-core/version.rb +1 -1
- data/lib/middleman-core.rb +1 -0
- data/lib/middleman-more/core_extensions/compass.rb +75 -0
- data/lib/middleman-more/core_extensions/default_helpers.rb +235 -0
- data/lib/middleman-more/core_extensions/i18n.rb +182 -0
- data/lib/middleman-more/extensions/asset_hash.rb +114 -0
- data/lib/middleman-more/extensions/asset_host.rb +50 -0
- data/lib/middleman-more/extensions/automatic_image_sizes/fastimage.rb +287 -0
- data/lib/middleman-more/extensions/automatic_image_sizes.rb +42 -0
- data/lib/middleman-more/extensions/cache_buster.rb +56 -0
- data/lib/middleman-more/extensions/directory_indexes.rb +24 -0
- data/lib/middleman-more/extensions/gzip.rb +75 -0
- data/lib/middleman-more/extensions/lorem.rb +176 -0
- data/lib/middleman-more/extensions/minify_css.rb +77 -0
- data/lib/middleman-more/extensions/minify_javascript.rb +83 -0
- data/lib/middleman-more/extensions/relative_assets.rb +29 -0
- data/lib/middleman-more/templates/smacss/source/_footer.haml +1 -0
- data/lib/middleman-more/templates/smacss/source/index.html.haml +1 -0
- data/lib/middleman-more/templates/smacss/source/layouts/layout.haml +13 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/base/README.markdown +11 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/base/base.scss +1 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/base/normalize.scss +375 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/layout/README.markdown +9 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/modules/README.markdown +9 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/states/README.markdown +12 -0
- data/lib/middleman-more/templates/smacss/source/stylesheets/style.css.scss +12 -0
- data/lib/middleman-more/templates/smacss.rb +30 -0
- data/lib/middleman-more.rb +102 -0
- data/middleman-core.gemspec +4 -1
- metadata +885 -7
- data/.cane +0 -2
- data/.cane-exclusions.yml +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7e40df8cb66fd2ae88e80198382cc84972e0e429
|
4
|
+
data.tar.gz: 17f92284191312808e9eeaade8cd2729aa163700
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cab5e84751490941fde3dedad1ec279364a9f56c7bcf9110405eba53683b26022ce3d69fc54f053e664b14a2434c3e8a3ccd988bf31ae720e0ad054c94c2c211
|
7
|
+
data.tar.gz: b0fa568aa63304d35b56a6803a49871ec74af6e81708b09f93e434ac1c829b2ea9c4957bdeb1b721bd468fbe36fb5d35de5b25873abad5c6bfa394132f5e8632
|
@@ -0,0 +1,135 @@
|
|
1
|
+
Feature: Assets get a file hash appended to their and references to them are updated
|
2
|
+
Scenario: Hashed-asset files are produced, and HTML, CSS, and JavaScript gets rewritten to reference the new files
|
3
|
+
Given a successfully built app at "asset-hash-app"
|
4
|
+
When I cd to "build"
|
5
|
+
Then the following files should exist:
|
6
|
+
| index.html |
|
7
|
+
| apple-touch-icon.png |
|
8
|
+
| favicon.ico |
|
9
|
+
| images/100px-1242c368.png |
|
10
|
+
| images/100px-5fd6fb90.jpg |
|
11
|
+
| images/100px-5fd6fb90.gif |
|
12
|
+
| javascripts/application-1d8d5276.js |
|
13
|
+
| stylesheets/site-50eaa978.css |
|
14
|
+
| index.html |
|
15
|
+
| subdir/index.html |
|
16
|
+
| other/index.html |
|
17
|
+
And the following files should not exist:
|
18
|
+
| images/100px.png |
|
19
|
+
| images/100px.jpg |
|
20
|
+
| images/100px.gif |
|
21
|
+
| javascripts/application.js |
|
22
|
+
| stylesheets/site.css |
|
23
|
+
|
24
|
+
And the file "javascripts/application-1d8d5276.js" should contain "img.src = '/images/100px-5fd6fb90.jpg'"
|
25
|
+
And the file "stylesheets/site-50eaa978.css" should contain "background-image: url('../images/100px-5fd6fb90.jpg')"
|
26
|
+
And the file "index.html" should contain 'href="apple-touch-icon.png"'
|
27
|
+
And the file "index.html" should contain 'href="stylesheets/site-50eaa978.css"'
|
28
|
+
And the file "index.html" should contain 'src="javascripts/application-1d8d5276.js"'
|
29
|
+
And the file "index.html" should contain 'src="images/100px-5fd6fb90.jpg"'
|
30
|
+
And the file "subdir/index.html" should contain 'href="../stylesheets/site-50eaa978.css"'
|
31
|
+
And the file "subdir/index.html" should contain 'src="../javascripts/application-1d8d5276.js"'
|
32
|
+
And the file "subdir/index.html" should contain 'src="../images/100px-5fd6fb90.jpg"'
|
33
|
+
And the file "other/index.html" should contain 'href="../stylesheets/site-50eaa978.css"'
|
34
|
+
And the file "other/index.html" should contain 'src="../javascripts/application-1d8d5276.js"'
|
35
|
+
And the file "other/index.html" should contain 'src="../images/100px-5fd6fb90.jpg"'
|
36
|
+
|
37
|
+
Scenario: Hashed assets work in preview server
|
38
|
+
Given the Server is running at "asset-hash-app"
|
39
|
+
When I go to "/"
|
40
|
+
Then I should see 'href="apple-touch-icon.png"'
|
41
|
+
And I should see 'href="stylesheets/site-50eaa978.css"'
|
42
|
+
And I should see 'src="javascripts/application-1d8d5276.js"'
|
43
|
+
And I should see 'src="images/100px-5fd6fb90.jpg"'
|
44
|
+
When I go to "/subdir/"
|
45
|
+
Then I should see 'href="../stylesheets/site-50eaa978.css"'
|
46
|
+
And I should see 'src="../javascripts/application-1d8d5276.js"'
|
47
|
+
And I should see 'src="../images/100px-5fd6fb90.jpg"'
|
48
|
+
When I go to "/other/"
|
49
|
+
Then I should see 'href="../stylesheets/site-50eaa978.css"'
|
50
|
+
And I should see 'src="../javascripts/application-1d8d5276.js"'
|
51
|
+
And I should see 'src="../images/100px-5fd6fb90.jpg"'
|
52
|
+
When I go to "/javascripts/application-1d8d5276.js"
|
53
|
+
Then I should see "img.src = '/images/100px-5fd6fb90.jpg'"
|
54
|
+
When I go to "/stylesheets/site-50eaa978.css"
|
55
|
+
Then I should see "background-image: url('../images/100px-5fd6fb90.jpg')"
|
56
|
+
|
57
|
+
Scenario: Enabling an asset host still produces hashed files and references
|
58
|
+
Given the Server is running at "asset-hash-host-app"
|
59
|
+
When I go to "/"
|
60
|
+
Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
|
61
|
+
And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
|
62
|
+
When I go to "/subdir/"
|
63
|
+
Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
|
64
|
+
And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
|
65
|
+
When I go to "/other/"
|
66
|
+
Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
|
67
|
+
And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
|
68
|
+
# Asset helpers don't appear to work from Compass right now
|
69
|
+
# When I go to "/stylesheets/site-e5a31a3e.css"
|
70
|
+
# Then I should see "background-image: url('http://middlemanapp.com/images/100px-5fd6fb90.jpg')"
|
71
|
+
|
72
|
+
Scenario: The asset hash should change when a SASS partial changes
|
73
|
+
Given the Server is running at "asset-hash-app"
|
74
|
+
And the file "source/stylesheets/_partial.sass" has the contents
|
75
|
+
"""
|
76
|
+
body
|
77
|
+
font-size: 14px
|
78
|
+
"""
|
79
|
+
When I go to "/partials/"
|
80
|
+
Then I should see 'href="../stylesheets/uses_partials-423a00f7.css'
|
81
|
+
And the file "source/stylesheets/_partial.sass" has the contents
|
82
|
+
"""
|
83
|
+
body
|
84
|
+
font-size: 18px !important
|
85
|
+
"""
|
86
|
+
When I go to "/partials/"
|
87
|
+
Then I should see 'href="../stylesheets/uses_partials-e8c3d4eb.css'
|
88
|
+
|
89
|
+
Scenario: The asset hash should change when a Rack-based filter changes
|
90
|
+
Given a fixture app "asset-hash-app"
|
91
|
+
And a file named "config.rb" with:
|
92
|
+
"""
|
93
|
+
activate :asset_hash
|
94
|
+
activate :relative_assets
|
95
|
+
activate :directory_indexes
|
96
|
+
require 'lib/middleware.rb'
|
97
|
+
use Middleware
|
98
|
+
"""
|
99
|
+
Given the Server is running at "asset-hash-app"
|
100
|
+
When I go to "/"
|
101
|
+
Then I should see 'href="stylesheets/site-5770af52.css'
|
102
|
+
When I go to "stylesheets/site-5770af52.css"
|
103
|
+
Then I should see 'background-image'
|
104
|
+
Then I should see 'Added by Rack filter'
|
105
|
+
When I go to "stylesheets/site-50eaa978.css"
|
106
|
+
Then I should see 'Not Found'
|
107
|
+
|
108
|
+
Scenario: Hashed-asset files are not produced for ignored paths
|
109
|
+
Given a fixture app "asset-hash-app"
|
110
|
+
And a file named "config.rb" with:
|
111
|
+
"""
|
112
|
+
activate :asset_hash, :ignore => [%r(javascripts/*), 'images/*']
|
113
|
+
activate :relative_assets
|
114
|
+
activate :directory_indexes
|
115
|
+
"""
|
116
|
+
And a successfully built app at "asset-hash-app"
|
117
|
+
When I cd to "build"
|
118
|
+
Then the following files should exist:
|
119
|
+
| index.html |
|
120
|
+
| apple-touch-icon.png |
|
121
|
+
| favicon.ico |
|
122
|
+
| images/100px.png |
|
123
|
+
| images/100px.jpg |
|
124
|
+
| images/100px.gif |
|
125
|
+
| javascripts/application.js |
|
126
|
+
| stylesheets/site-50eaa978.css |
|
127
|
+
| index.html |
|
128
|
+
| subdir/index.html |
|
129
|
+
| other/index.html |
|
130
|
+
And the following files should not exist:
|
131
|
+
| images/100px-1242c368.png |
|
132
|
+
| images/100px-5fd6fb90.jpg |
|
133
|
+
| images/100px-5fd6fb90.gif |
|
134
|
+
| javascripts/application-1d8d5276.js |
|
135
|
+
| stylesheets/site.css |
|
@@ -0,0 +1,56 @@
|
|
1
|
+
Feature: Alternate between multiple asset hosts
|
2
|
+
In order to speed up page loading
|
3
|
+
|
4
|
+
Scenario: Set single host globally
|
5
|
+
Given a fixture app "asset-host-app"
|
6
|
+
And a file named "config.rb" with:
|
7
|
+
"""
|
8
|
+
activate :asset_host
|
9
|
+
set :asset_host, "http://assets1.example.com"
|
10
|
+
"""
|
11
|
+
And the Server is running
|
12
|
+
When I go to "/asset_host.html"
|
13
|
+
Then I should see "http://assets1"
|
14
|
+
When I go to "/stylesheets/asset_host.css"
|
15
|
+
Then I should see "http://assets1"
|
16
|
+
|
17
|
+
Scenario: Set proc host globally
|
18
|
+
Given a fixture app "asset-host-app"
|
19
|
+
And a file named "config.rb" with:
|
20
|
+
"""
|
21
|
+
activate :asset_host
|
22
|
+
set :asset_host do |asset|
|
23
|
+
"http://assets%d.example.com" % (asset.hash % 4)
|
24
|
+
end
|
25
|
+
"""
|
26
|
+
And the Server is running
|
27
|
+
When I go to "/asset_host.html"
|
28
|
+
Then I should see "http://assets"
|
29
|
+
When I go to "/stylesheets/asset_host.css"
|
30
|
+
Then I should see "http://assets"
|
31
|
+
|
32
|
+
Scenario: Set single host with inline-option
|
33
|
+
Given a fixture app "asset-host-app"
|
34
|
+
And a file named "config.rb" with:
|
35
|
+
"""
|
36
|
+
activate :asset_host, :host => "http://assets1.example.com"
|
37
|
+
"""
|
38
|
+
And the Server is running
|
39
|
+
When I go to "/asset_host.html"
|
40
|
+
Then I should see "http://assets1"
|
41
|
+
When I go to "/stylesheets/asset_host.css"
|
42
|
+
Then I should see "http://assets1"
|
43
|
+
|
44
|
+
Scenario: Set proc host with inline-option
|
45
|
+
Given a fixture app "asset-host-app"
|
46
|
+
And a file named "config.rb" with:
|
47
|
+
"""
|
48
|
+
activate :asset_host, :host => Proc.new { |asset|
|
49
|
+
"http://assets%d.example.com" % (asset.hash % 4)
|
50
|
+
}
|
51
|
+
"""
|
52
|
+
And the Server is running
|
53
|
+
When I go to "/asset_host.html"
|
54
|
+
Then I should see "http://assets"
|
55
|
+
When I go to "/stylesheets/asset_host.css"
|
56
|
+
Then I should see "http://assets"
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Feature: Automatically detect and insert image dimensions into tags
|
2
|
+
In order to speed up development and appease YSlow
|
3
|
+
|
4
|
+
Scenario: Rendering an image with the feature disabled
|
5
|
+
Given "automatic_image_sizes" feature is "disabled"
|
6
|
+
And the Server is running at "automatic-image-size-app"
|
7
|
+
When I go to "/auto-image-sizes.html"
|
8
|
+
Then I should not see "width="
|
9
|
+
And I should not see "height="
|
10
|
+
|
11
|
+
Scenario: Rendering an image with the feature enabled
|
12
|
+
Given "automatic_image_sizes" feature is "enabled"
|
13
|
+
And the Server is running at "automatic-image-size-app"
|
14
|
+
When I go to "/auto-image-sizes.html"
|
15
|
+
Then I should see "width="
|
16
|
+
And I should see "height="
|
@@ -0,0 +1,42 @@
|
|
1
|
+
Feature: Generate mtime-based query string for busting browser caches
|
2
|
+
In order to display the most recent content for IE & CDNs and appease YSlow
|
3
|
+
|
4
|
+
Scenario: Rendering css with the feature disabled
|
5
|
+
Given "cache_buster" feature is "disabled"
|
6
|
+
And the Server is running at "cache-buster-app"
|
7
|
+
When I go to "/stylesheets/relative_assets.css"
|
8
|
+
Then I should see "blank.gif'"
|
9
|
+
|
10
|
+
Scenario: Rendering html with the feature disabled
|
11
|
+
Given "cache_buster" feature is "disabled"
|
12
|
+
And the Server is running at "cache-buster-app"
|
13
|
+
When I go to "/cache-buster.html"
|
14
|
+
Then I should see 'site.css"'
|
15
|
+
|
16
|
+
Scenario: Rendering css with the feature enabled
|
17
|
+
Given "cache_buster" feature is "enabled"
|
18
|
+
And the Server is running at "cache-buster-app"
|
19
|
+
When I go to "/stylesheets/relative_assets.css"
|
20
|
+
Then I should see "blank.gif?"
|
21
|
+
|
22
|
+
Scenario: Rendering html with the feature enabled
|
23
|
+
Given "cache_buster" feature is "enabled"
|
24
|
+
And the Server is running at "cache-buster-app"
|
25
|
+
When I go to "/cache-buster.html"
|
26
|
+
Then I should see "site.css?"
|
27
|
+
Then I should see "blank.gif?"
|
28
|
+
|
29
|
+
Scenario: Rendering css with the feature and relative_assets enabled
|
30
|
+
Given "relative_assets" feature is "enabled"
|
31
|
+
Given "cache_buster" feature is "enabled"
|
32
|
+
And the Server is running at "cache-buster-app"
|
33
|
+
When I go to "/stylesheets/relative_assets.css"
|
34
|
+
Then I should see "blank.gif?"
|
35
|
+
|
36
|
+
Scenario: Rendering html with the feature and relative_assets enabled
|
37
|
+
Given "relative_assets" feature is "enabled"
|
38
|
+
Given "cache_buster" feature is "enabled"
|
39
|
+
And the Server is running at "cache-buster-app"
|
40
|
+
When I go to "/cache-buster.html"
|
41
|
+
Then I should see "site.css?"
|
42
|
+
Then I should see "blank.gif?"
|
@@ -0,0 +1,22 @@
|
|
1
|
+
Feature: Support coffee-script
|
2
|
+
In order to offer an alternative when writing Javascript
|
3
|
+
|
4
|
+
Scenario: Rendering coffee script
|
5
|
+
Given the Server is running at "coffeescript-app"
|
6
|
+
When I go to "/javascripts/coffee_test.js"
|
7
|
+
Then I should see ".slice"
|
8
|
+
|
9
|
+
Scenario: Rendering coffee-script with :coffeescript haml-filter
|
10
|
+
Given the Server is running at "coffeescript-app"
|
11
|
+
When I go to "/inline-coffeescript.html"
|
12
|
+
Then I should see ".slice"
|
13
|
+
|
14
|
+
Scenario: Rendering broken coffee
|
15
|
+
Given the Server is running at "coffeescript-app"
|
16
|
+
When I go to "/javascripts/broken-coffee.js"
|
17
|
+
Then I should see "reserved word"
|
18
|
+
|
19
|
+
Scenario: Building broken coffee
|
20
|
+
Given a built app at "coffeescript-app"
|
21
|
+
Then the output should contain "error build/javascripts/broken-coffee.js"
|
22
|
+
And the exit status should be 1
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Feature: Support content_for and yield_content helpers
|
2
|
+
|
3
|
+
Scenario: content_for works as expected in erb
|
4
|
+
Given the Server is running at "content-for-app"
|
5
|
+
When I go to "/content_for_erb.html"
|
6
|
+
Then I should see "In Layout: I am the yielded content erb"
|
7
|
+
|
8
|
+
Scenario: content_for works as expected in haml
|
9
|
+
Given the Server is running at "content-for-app"
|
10
|
+
When I go to "/content_for_haml.html"
|
11
|
+
Then I should see "In Layout: I am the yielded content haml"
|
12
|
+
|
13
|
+
Scenario: content_for works as expected in slim
|
14
|
+
Given the Server is running at "content-for-app"
|
15
|
+
When I go to "/content_for_slim.html"
|
16
|
+
Then I should see "In Layout: I am the yielded content slim"
|
@@ -0,0 +1,67 @@
|
|
1
|
+
Feature: Directory Index
|
2
|
+
In order output Apache-friendly directories and indexes
|
3
|
+
|
4
|
+
Scenario: Checking built folder for content
|
5
|
+
Given a successfully built app at "indexable-app"
|
6
|
+
When I cd to "build"
|
7
|
+
Then the following files should exist:
|
8
|
+
| needs_index/index.html |
|
9
|
+
| a_folder/needs_index/index.html |
|
10
|
+
| leave_me_alone.html |
|
11
|
+
| wildcard_leave_me_alone.html |
|
12
|
+
| regular/index.html |
|
13
|
+
| .htaccess |
|
14
|
+
| .htpasswd |
|
15
|
+
Then the following files should not exist:
|
16
|
+
| egular/index/index.html |
|
17
|
+
| needs_index.html |
|
18
|
+
| a_folder/needs_index.html |
|
19
|
+
| leave_me_alone/index.html |
|
20
|
+
| wildcard_leave_me_alone/index.html |
|
21
|
+
And the file "needs_index/index.html" should contain "Indexable"
|
22
|
+
And the file "a_folder/needs_index/index.html" should contain "Indexable"
|
23
|
+
And the file "leave_me_alone.html" should contain "Stay away"
|
24
|
+
And the file "regular/index.html" should contain "Regular"
|
25
|
+
|
26
|
+
Scenario: Preview normal file
|
27
|
+
Given the Server is running at "indexable-app"
|
28
|
+
When I go to "/needs_index/"
|
29
|
+
Then I should see "Indexable"
|
30
|
+
|
31
|
+
Scenario: Preview normal file subdirectory
|
32
|
+
Given the Server is running at "indexable-app"
|
33
|
+
When I go to "/a_folder/needs_index/"
|
34
|
+
Then I should see "Indexable"
|
35
|
+
|
36
|
+
Scenario: Preview ignored file
|
37
|
+
Given the Server is running at "indexable-app"
|
38
|
+
When I go to "/leave_me_alone/"
|
39
|
+
Then I should see "File Not Found"
|
40
|
+
|
41
|
+
Scenario: Link_to knows about directory indexes
|
42
|
+
Given a fixture app "indexable-app"
|
43
|
+
And a file named "source/link_to.html.erb" with:
|
44
|
+
"""
|
45
|
+
link_to: <%= link_to "Needs Index", "/needs_index.html" %>
|
46
|
+
explicit_link_to: <%= link_to "Explicit", "/needs_index/index.html" %>
|
47
|
+
unknown_link_to: <%= link_to "Unknown", "/unknown.html" %>
|
48
|
+
relative_link_to: <%= link_to "Relative", "needs_index.html" %>
|
49
|
+
"""
|
50
|
+
And a file named "source/link_to/sub.html.erb" with:
|
51
|
+
"""
|
52
|
+
link_to: <%= link_to "Needs Index", "/needs_index.html" %>
|
53
|
+
explicit_link_to: <%= link_to "Explicit", "/needs_index/index.html" %>
|
54
|
+
unknown_link_to: <%= link_to "Unknown", "/unknown.html" %>
|
55
|
+
relative_link_to: <%= link_to "Relative", "../needs_index.html" %>
|
56
|
+
"""
|
57
|
+
And the Server is running at "indexable-app"
|
58
|
+
When I go to "/link_to/"
|
59
|
+
Then I should see 'link_to: <a href="/needs_index/">Needs Index</a>'
|
60
|
+
Then I should see 'explicit_link_to: <a href="/needs_index/index.html">Explicit</a>'
|
61
|
+
Then I should see 'unknown_link_to: <a href="/unknown.html">Unknown</a>'
|
62
|
+
Then I should see 'relative_link_to: <a href="/needs_index/">Relative</a>'
|
63
|
+
When I go to "/link_to/sub/"
|
64
|
+
Then I should see 'link_to: <a href="/needs_index/">Needs Index</a>'
|
65
|
+
Then I should see 'explicit_link_to: <a href="/needs_index/index.html">Explicit</a>'
|
66
|
+
Then I should see 'unknown_link_to: <a href="/unknown.html">Unknown</a>'
|
67
|
+
Then I should see 'relative_link_to: <a href="/needs_index/">Relative</a>'
|
@@ -0,0 +1,15 @@
|
|
1
|
+
Feature: Web Fonts
|
2
|
+
|
3
|
+
Scenario: Checking built folder for content
|
4
|
+
Given a successfully built app at "fonts-app"
|
5
|
+
When I cd to "build"
|
6
|
+
Then the following files should exist:
|
7
|
+
| stylesheets/fonts.css |
|
8
|
+
And the file "stylesheets/fonts.css" should contain "/fonts/StMarie-Thin.otf"
|
9
|
+
And the file "stylesheets/fonts.css" should contain "/fonts/blank/blank.otf"
|
10
|
+
|
11
|
+
Scenario: Rendering scss
|
12
|
+
Given the Server is running at "fonts-app"
|
13
|
+
When I go to "/stylesheets/fonts.css"
|
14
|
+
Then I should see "/fonts/StMarie-Thin.otf"
|
15
|
+
And I should see "/fonts/blank/blank.otf"
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Feature: Built-in macro view helpers
|
2
|
+
In order to simplify generating HTML
|
3
|
+
|
4
|
+
Scenario: Using the padrino helpers
|
5
|
+
Given the Server is running at "padrino-helpers-app"
|
6
|
+
When I go to "/former_padrino_test.html"
|
7
|
+
And I should see 'href="test2.com"'
|
8
|
+
And I should see 'src="/images/test2.png"'
|
9
|
+
And I should see 'src="/images/100px.png"'
|
10
|
+
And I should see 'src="/javascripts/test1.js"'
|
11
|
+
And I should see 'href="/stylesheets/test1.css"'
|
12
|
+
And I should see '1 KB'
|
13
|
+
|
14
|
+
Scenario: Setting http_prefix
|
15
|
+
Given a fixture app "padrino-helpers-app"
|
16
|
+
And a file named "config.rb" with:
|
17
|
+
"""
|
18
|
+
set :http_prefix, "/foo"
|
19
|
+
"""
|
20
|
+
And the Server is running at "padrino-helpers-app"
|
21
|
+
When I go to "/former_padrino_test.html"
|
22
|
+
And I should see 'src="/foo/images/test2.png"'
|
23
|
+
And I should see 'src="/foo/images/100px.png"'
|
24
|
+
And I should see 'src="/foo/javascripts/test1.js"'
|
25
|
+
And I should see 'href="/foo/stylesheets/test1.css"'
|
26
|
+
|
27
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Feature: GZIP assets during build
|
2
|
+
|
3
|
+
Scenario: Built assets should be gzipped
|
4
|
+
Given a successfully built app at "gzip-app"
|
5
|
+
Then the following files should exist:
|
6
|
+
| build/javascripts/test.js.gz |
|
7
|
+
| build/stylesheets/test.css.gz |
|
8
|
+
| build/index.html.gz |
|
9
|
+
| build/javascripts/test.js |
|
10
|
+
| build/stylesheets/test.css |
|
11
|
+
| build/index.html |
|
12
|
+
When I run `file build/javascripts/test.js.gz`
|
13
|
+
Then the output should contain "gzip"
|
14
|
+
|
15
|
+
Scenario: Preview server doesn't change
|
16
|
+
Given the Server is running at "gzip-app"
|
17
|
+
When I go to "/javascripts/test.js"
|
18
|
+
Then I should see "test_function"
|
19
|
+
When I go to "/stylesheets/test.css"
|
20
|
+
Then I should see "test_selector"
|
21
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Feature: Built-in auto_javascript_include_tag view helper
|
2
|
+
In order to simplify including javascript files
|
3
|
+
|
4
|
+
Scenario: Viewing the root path
|
5
|
+
Given the Server is running at "auto-js-app"
|
6
|
+
When I go to "/auto-js.html"
|
7
|
+
Then I should see "javascripts/auto-js.js"
|
8
|
+
|
9
|
+
Scenario: Viewing a tier-1 path
|
10
|
+
Given the Server is running at "auto-js-app"
|
11
|
+
When I go to "/auto-js/auto-js.html"
|
12
|
+
Then I should see "javascripts/auto-js/auto-js.js"
|
13
|
+
|
14
|
+
Scenario: Viewing the index file of a tier-1 path, without filename
|
15
|
+
Given the Server is running at "auto-js-app"
|
16
|
+
When I go to "/auto-js"
|
17
|
+
Then I should see "javascripts/auto-js/index.js"
|
18
|
+
|
19
|
+
Scenario: Viewing the index file of a tier-1 path, without filename, with a trailing slash
|
20
|
+
Given the Server is running at "auto-js-app"
|
21
|
+
When I go to "/auto-js/"
|
22
|
+
Then I should see "javascripts/auto-js/index.js"
|
23
|
+
|
24
|
+
Scenario: Viewing a tier-2 path
|
25
|
+
Given the Server is running at "auto-js-app"
|
26
|
+
When I go to "/auto-js/sub/auto-js.html"
|
27
|
+
Then I should see "javascripts/auto-js/sub/auto-js.js"
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Feature: Built-in auto_stylesheet_link_tag view helper
|
2
|
+
In order to simplify including css files
|
3
|
+
|
4
|
+
Scenario: Viewing the root path
|
5
|
+
Given the Server is running at "auto-css-app"
|
6
|
+
When I go to "/auto-css.html"
|
7
|
+
Then I should see "stylesheets/auto-css.css"
|
8
|
+
|
9
|
+
Scenario: Viewing a tier-1 path
|
10
|
+
Given the Server is running at "auto-css-app"
|
11
|
+
When I go to "/auto-css/auto-css.html"
|
12
|
+
Then I should see "stylesheets/auto-css/auto-css.css"
|
13
|
+
|
14
|
+
Scenario: Viewing the index file of a tier-1 path, without filename
|
15
|
+
Given the Server is running at "auto-css-app"
|
16
|
+
When I go to "/auto-css"
|
17
|
+
Then I should see "stylesheets/auto-css/index.css"
|
18
|
+
|
19
|
+
Scenario: Viewing the index file of a tier-1 path, without filename, with a trailing slash
|
20
|
+
Given the Server is running at "auto-css-app"
|
21
|
+
When I go to "/auto-css/"
|
22
|
+
Then I should see "stylesheets/auto-css/index.css"
|
23
|
+
|
24
|
+
Scenario: Viewing a tier-2 path
|
25
|
+
Given the Server is running at "auto-css-app"
|
26
|
+
When I go to "/auto-css/sub/auto-css.html"
|
27
|
+
Then I should see "stylesheets/auto-css/sub/auto-css.css"
|
@@ -0,0 +1,26 @@
|
|
1
|
+
Feature: form_tag helper
|
2
|
+
|
3
|
+
Scenario: form_tag produces relative links
|
4
|
+
Given a fixture app "indexable-app"
|
5
|
+
And an empty file named "config.rb"
|
6
|
+
And a file named "source/form_tag.html.erb" with:
|
7
|
+
"""
|
8
|
+
absolute: <% form_tag "/needs_index.html#absolute", :relative => true do %>
|
9
|
+
<% end %>
|
10
|
+
relative: <% form_tag "needs_index.html#relative", :relative => true do %>
|
11
|
+
<% end %>
|
12
|
+
"""
|
13
|
+
And a file named "source/form_tag/sub.html.erb" with:
|
14
|
+
"""
|
15
|
+
absolute: <% form_tag "/needs_index.html#absolute", :relative => true do %>
|
16
|
+
<% end %>
|
17
|
+
relative: <% form_tag "../needs_index.html#relative", :relative => true do %>
|
18
|
+
<% end %>
|
19
|
+
"""
|
20
|
+
And the Server is running at "indexable-app"
|
21
|
+
When I go to "/form_tag.html"
|
22
|
+
Then I should see 'action="needs_index.html#absolute"'
|
23
|
+
Then I should see 'action="needs_index.html#relative"'
|
24
|
+
When I go to "/form_tag/sub.html"
|
25
|
+
Then I should see 'action="../needs_index.html#absolute"'
|
26
|
+
Then I should see 'action="../needs_index.html#relative"'
|