middleman 2.0.9.pre-x86-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gemtest +0 -0
- data/.gitignore +13 -0
- data/.travis.yml +4 -0
- data/CHANGELOG +47 -0
- data/Gemfile +3 -0
- data/LICENSE +20 -0
- data/README.md +19 -0
- data/Rakefile +15 -0
- data/bin/middleman +73 -0
- data/bin/mm-build +9 -0
- data/bin/mm-init +9 -0
- data/bin/mm-server +9 -0
- data/features/asset_host.feature +14 -0
- data/features/automatic_image_sizes.feature +16 -0
- data/features/builder.feature +23 -0
- data/features/cache_buster.feature +26 -0
- data/features/coffee-script.feature +17 -0
- data/features/data.feature +12 -0
- data/features/directory_index.feature +29 -0
- data/features/dynamic_pages.feature +33 -0
- data/features/front-matter.feature +7 -0
- data/features/generator.feature +8 -0
- data/features/helpers_auto_javascript_include_tag.feature +27 -0
- data/features/helpers_auto_stylesheet_link_tag.feature +27 -0
- data/features/helpers_page_classes.feature +17 -0
- data/features/liquid.feature +6 -0
- data/features/markdown.feature +7 -0
- data/features/minify_css.feature +24 -0
- data/features/minify_javascript.feature +23 -0
- data/features/padrino_helpers.feature +10 -0
- data/features/page_alias_and_layouts.feature +44 -0
- data/features/relative_assets.feature +44 -0
- data/features/scss-support.feature +12 -0
- data/features/sinatra.feature +6 -0
- data/features/slim.feature +7 -0
- data/features/sprockets.feature +21 -0
- data/features/sprockets_gems.feature +7 -0
- data/features/step_definitions/asset_host_steps.rb +8 -0
- data/features/step_definitions/builder_steps.rb +40 -0
- data/features/step_definitions/generator_steps.rb +30 -0
- data/features/step_definitions/middleman_steps.rb +46 -0
- data/features/step_definitions/page_layout_steps.rb +13 -0
- data/features/support/env.rb +3 -0
- data/features/tiny_src.feature +15 -0
- data/fixtures/indexable-app/config.rb +2 -0
- data/fixtures/indexable-app/source/a_folder/needs_index.html +1 -0
- data/fixtures/indexable-app/source/leave_me_alone.html +1 -0
- data/fixtures/indexable-app/source/needs_index.html +1 -0
- data/fixtures/indexable-app/source/regular/index.html +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/sprockets-app/config.rb +1 -0
- data/fixtures/sprockets-app/source/jquery_include.js +1 -0
- data/fixtures/sprockets-app/source/library/javascripts/sprockets_base.js +5 -0
- data/fixtures/sprockets-app/source/library/javascripts/sprockets_sub.js +3 -0
- data/fixtures/test-app/config.rb +51 -0
- data/fixtures/test-app/data/test.yml +4 -0
- data/fixtures/test-app/source/_liquid_partial.liquid +1 -0
- data/fixtures/test-app/source/_partial.haml +1 -0
- data/fixtures/test-app/source/a_folder/needs_index.html +1 -0
- data/fixtures/test-app/source/asset_host.html.haml +1 -0
- data/fixtures/test-app/source/auto-css.html.haml +1 -0
- data/fixtures/test-app/source/auto-css/auto-css.html.haml +1 -0
- data/fixtures/test-app/source/auto-css/index.html.haml +1 -0
- data/fixtures/test-app/source/auto-css/sub/auto-css.html.haml +1 -0
- data/fixtures/test-app/source/auto-image-sizes.html.haml +1 -0
- data/fixtures/test-app/source/auto-js.html.haml +1 -0
- data/fixtures/test-app/source/auto-js/auto-js.html.haml +1 -0
- data/fixtures/test-app/source/auto-js/index.html.haml +1 -0
- data/fixtures/test-app/source/auto-js/sub/auto-js.html.haml +1 -0
- data/fixtures/test-app/source/cache-buster.html.haml +2 -0
- data/fixtures/test-app/source/custom-layout-dir/index.html.haml +1 -0
- data/fixtures/test-app/source/custom-layout.html.haml +1 -0
- data/fixtures/test-app/source/data.html.erb +1 -0
- data/fixtures/test-app/source/data2.html.liquid +2 -0
- data/fixtures/test-app/source/front-matter.html.erb +6 -0
- data/fixtures/test-app/source/images/Child folder/regular_file(example).txt +1 -0
- data/fixtures/test-app/source/images/Read me (example).txt +1 -0
- data/fixtures/test-app/source/images/blank.gif +0 -0
- data/fixtures/test-app/source/img/blank.gif +0 -0
- data/fixtures/test-app/source/index.html.haml +6 -0
- data/fixtures/test-app/source/inline-coffeescript.html.haml +3 -0
- data/fixtures/test-app/source/inline-css.html.haml +4 -0
- data/fixtures/test-app/source/inline-js.html.haml +7 -0
- data/fixtures/test-app/source/javascripts/auto-js.js +1 -0
- data/fixtures/test-app/source/javascripts/auto-js/auto-js.js +1 -0
- data/fixtures/test-app/source/javascripts/auto-js/index.js +1 -0
- data/fixtures/test-app/source/javascripts/auto-js/sub/auto-js.js +1 -0
- data/fixtures/test-app/source/javascripts/broken-coffee.js.coffee +3 -0
- data/fixtures/test-app/source/javascripts/coffee_test.js.coffee +3 -0
- data/fixtures/test-app/source/javascripts/jquery.plugin.with.dots.js +1 -0
- data/fixtures/test-app/source/javascripts/jquery_base.js +5 -0
- data/fixtures/test-app/source/javascripts/multiple_engines.js.coffee.erb +1 -0
- data/fixtures/test-app/source/javascripts/sprockets_base.js +5 -0
- data/fixtures/test-app/source/javascripts/sprockets_sub.js +3 -0
- data/fixtures/test-app/source/layout.haml +6 -0
- data/fixtures/test-app/source/layouts/custom.haml +5 -0
- data/fixtures/test-app/source/liquid_master.html.liquid +1 -0
- data/fixtures/test-app/source/markdown.html.markdown +1 -0
- data/fixtures/test-app/source/needs_index.html +1 -0
- data/fixtures/test-app/source/padrino_test.html.haml +5 -0
- data/fixtures/test-app/source/page-classes.html.haml +1 -0
- data/fixtures/test-app/source/real.html +1 -0
- data/fixtures/test-app/source/real/index.html.erb +5 -0
- data/fixtures/test-app/source/relative_image.html.erb +1 -0
- data/fixtures/test-app/source/services/index.html.haml +1 -0
- data/fixtures/test-app/source/should_be_ignored.html +1 -0
- data/fixtures/test-app/source/should_be_ignored2.html +1 -0
- data/fixtures/test-app/source/should_be_ignored3.html +1 -0
- data/fixtures/test-app/source/slim.html.slim +7 -0
- data/fixtures/test-app/source/spaces in file.html.erb +1 -0
- data/fixtures/test-app/source/static.html +1 -0
- data/fixtures/test-app/source/stylesheets/asset_host.css.sass +3 -0
- data/fixtures/test-app/source/stylesheets/auto-css.css +3 -0
- data/fixtures/test-app/source/stylesheets/auto-css/auto-css.css +3 -0
- data/fixtures/test-app/source/stylesheets/auto-css/index.css +0 -0
- data/fixtures/test-app/source/stylesheets/auto-css/sub/auto-css.css +3 -0
- data/fixtures/test-app/source/stylesheets/layout.css.sass +2 -0
- data/fixtures/test-app/source/stylesheets/relative_assets.css.sass +3 -0
- data/fixtures/test-app/source/stylesheets/site.css.sass +1 -0
- data/fixtures/test-app/source/stylesheets/site_scss.css.scss +1 -0
- data/fixtures/test-app/source/stylesheets/static.css +2 -0
- data/fixtures/test-app/source/sub1/page-classes.html.haml +1 -0
- data/fixtures/test-app/source/sub1/sub2/page-classes.html.haml +1 -0
- data/fixtures/test-app/source/tiny_src.html.haml +1 -0
- data/lib/middleman.rb +202 -0
- data/lib/middleman/base.rb +198 -0
- data/lib/middleman/builder.rb +163 -0
- data/lib/middleman/cli.rb +87 -0
- data/lib/middleman/config.ru +2 -0
- data/lib/middleman/core_extensions/assets.rb +57 -0
- data/lib/middleman/core_extensions/builder.rb +41 -0
- data/lib/middleman/core_extensions/compass.rb +102 -0
- data/lib/middleman/core_extensions/data.rb +120 -0
- data/lib/middleman/core_extensions/default_helpers.rb +77 -0
- data/lib/middleman/core_extensions/features.rb +102 -0
- data/lib/middleman/core_extensions/front_matter.rb +116 -0
- data/lib/middleman/core_extensions/rack_map.rb +35 -0
- data/lib/middleman/core_extensions/rendering.rb +19 -0
- data/lib/middleman/core_extensions/routing.rb +87 -0
- data/lib/middleman/core_extensions/sprockets.rb +102 -0
- data/lib/middleman/features/asset_host.rb +22 -0
- data/lib/middleman/features/automatic_image_sizes.rb +31 -0
- data/lib/middleman/features/automatic_image_sizes/fastimage.rb +287 -0
- data/lib/middleman/features/cache_buster.rb +42 -0
- data/lib/middleman/features/directory_indexes.rb +56 -0
- data/lib/middleman/features/lorem.rb +126 -0
- data/lib/middleman/features/minify_css.rb +10 -0
- data/lib/middleman/features/minify_javascript.rb +43 -0
- data/lib/middleman/features/relative_assets.rb +38 -0
- data/lib/middleman/features/tiny_src.rb +11 -0
- data/lib/middleman/guard.rb +71 -0
- data/lib/middleman/renderers/coffee_script.rb +8 -0
- data/lib/middleman/renderers/haml.rb +31 -0
- data/lib/middleman/renderers/liquid.rb +29 -0
- data/lib/middleman/renderers/markdown.rb +34 -0
- data/lib/middleman/renderers/sass.rb +63 -0
- data/lib/middleman/renderers/slim.rb +8 -0
- data/lib/middleman/templates.rb +53 -0
- data/lib/middleman/templates/default.rb +17 -0
- data/lib/middleman/templates/default/source/index.html.erb +5 -0
- data/lib/middleman/templates/default/source/layout.erb +19 -0
- data/lib/middleman/templates/default/source/stylesheets/site.css.scss +32 -0
- data/lib/middleman/templates/html5.rb +16 -0
- data/lib/middleman/templates/html5/source/404.html +38 -0
- data/lib/middleman/templates/html5/source/README.md +388 -0
- data/lib/middleman/templates/html5/source/apple-touch-icon-114x114-precomposed.png +0 -0
- data/lib/middleman/templates/html5/source/apple-touch-icon-57x57-precomposed.png +0 -0
- data/lib/middleman/templates/html5/source/apple-touch-icon-72x72-precomposed.png +0 -0
- data/lib/middleman/templates/html5/source/apple-touch-icon-precomposed.png +0 -0
- data/lib/middleman/templates/html5/source/apple-touch-icon.png +0 -0
- data/lib/middleman/templates/html5/source/crossdomain.xml +25 -0
- data/lib/middleman/templates/html5/source/css/style.css +293 -0
- data/lib/middleman/templates/html5/source/favicon.ico +0 -0
- data/lib/middleman/templates/html5/source/humans.txt +43 -0
- data/lib/middleman/templates/html5/source/img/.gitignore +2 -0
- data/lib/middleman/templates/html5/source/index.html +79 -0
- data/lib/middleman/templates/html5/source/js/libs/jquery-1.6.2.js +8981 -0
- data/lib/middleman/templates/html5/source/js/libs/jquery-1.6.2.min.js +18 -0
- data/lib/middleman/templates/html5/source/js/libs/modernizr-2.0.6.min.js +4 -0
- data/lib/middleman/templates/html5/source/js/mylibs/.gitignore +2 -0
- data/lib/middleman/templates/html5/source/js/plugins.js +20 -0
- data/lib/middleman/templates/html5/source/js/script.js +8 -0
- data/lib/middleman/templates/html5/source/robots.txt +5 -0
- data/lib/middleman/templates/html5/source/test/index.html +31 -0
- data/lib/middleman/templates/html5/source/test/qunit/qunit.css +148 -0
- data/lib/middleman/templates/html5/source/test/qunit/qunit.js +1265 -0
- data/lib/middleman/templates/html5/source/test/tests.js +24 -0
- data/lib/middleman/templates/local.rb +20 -0
- data/lib/middleman/templates/shared/Gemfile.tt +3 -0
- data/lib/middleman/templates/shared/config.ru +4 -0
- data/lib/middleman/templates/shared/config.tt +104 -0
- data/lib/middleman/version.rb +3 -0
- data/middleman.gemspec +79 -0
- metadata +826 -0
data/.gemtest
ADDED
File without changes
|
data/.gitignore
ADDED
data/.travis.yml
ADDED
data/CHANGELOG
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
2.0.8
|
2
|
+
=====
|
3
|
+
- Support accessing variables and data objects in ERb Sprockets files (library.js.coffee.erb)
|
4
|
+
- Make :markdown_engine support simple symbol names (:maruku instead of ::Tilt::MarkukuTemplate)
|
5
|
+
- Update Padrino deps to 0.10.2
|
6
|
+
- Include therubyracer on *nix
|
7
|
+
- Enable frontmatter for Liquid templates
|
8
|
+
|
9
|
+
2.0.7
|
10
|
+
=====
|
11
|
+
- Updated HTML5 Boilerplate to v2
|
12
|
+
- Make Rails 3.1 javascript gems available to Sprockets
|
13
|
+
|
14
|
+
2.0.6
|
15
|
+
=====
|
16
|
+
- Pulled out livereload feature into its own extension, still installed by default.
|
17
|
+
|
18
|
+
2.0.5
|
19
|
+
=====
|
20
|
+
- Vendored Padrino 0.10.0
|
21
|
+
|
22
|
+
2.0.4
|
23
|
+
=====
|
24
|
+
- Pulled out undocumented remote data feature into its own extension
|
25
|
+
|
26
|
+
2.0.3
|
27
|
+
=====
|
28
|
+
- Pulled out undocumented Blog feature into its own extension
|
29
|
+
|
30
|
+
2.0.2
|
31
|
+
=====
|
32
|
+
- Fixed Sprockets circular error
|
33
|
+
- Added auto-requiring extensions
|
34
|
+
|
35
|
+
2.0.0
|
36
|
+
=====
|
37
|
+
- Guard-powered auto-reloading of config.rb
|
38
|
+
- Guard LiveReload
|
39
|
+
- Sprockets JS
|
40
|
+
- Refactored Dynamically Reloadable Core
|
41
|
+
- Combine views/ and public/ into a single source/ folder.
|
42
|
+
- Support YAML front-matter
|
43
|
+
- Added callback to run code after Compass is configured
|
44
|
+
- Added support for a compass.config file which is passed directly to Compass
|
45
|
+
- Blog-aware Feature (and project template)
|
46
|
+
- Thor-based, unified `middleman` binary
|
47
|
+
- :directory_indexes feature
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2010 Thomas Reynolds
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
Middleman [](http://travis-ci.org/tdreyno/middleman)
|
2
|
+
=========
|
3
|
+
|
4
|
+
Middleman is ever-vigilant against tag-soup, unreadable CSS and repetition. He stands-watch over your Haml, Sass, and CoffeeScript producing only the cleanest and most efficient markup.
|
5
|
+
|
6
|
+
[](http://www.pledgie.com/campaigns/15807)
|
7
|
+
|
8
|
+
## Getting Started
|
9
|
+
|
10
|
+
Everything you need to know is on the official site:
|
11
|
+
http://middlemanapp.com
|
12
|
+
|
13
|
+
## Mailing List
|
14
|
+
|
15
|
+
If you have questions, answers can be found on community forum: https://convore.com/middleman/
|
16
|
+
|
17
|
+
## Copyright
|
18
|
+
|
19
|
+
Copyright (c) 2010 Thomas Reynolds. See LICENSE for details.
|
data/Rakefile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'bundler'
|
2
|
+
Bundler::GemHelper.install_tasks :name => ENV["NAME"] || "middleman"
|
3
|
+
|
4
|
+
require 'cucumber/rake/task'
|
5
|
+
|
6
|
+
Cucumber::Rake::Task.new(:cucumber, 'Run features that should pass') do |t|
|
7
|
+
t.cucumber_opts = "--color --tags ~@wip --strict --format #{ENV['CUCUMBER_FORMAT'] || 'pretty'}"
|
8
|
+
end
|
9
|
+
|
10
|
+
#$LOAD_PATH.unshift 'lib'
|
11
|
+
|
12
|
+
require 'rake/testtask'
|
13
|
+
require 'rake/clean'
|
14
|
+
|
15
|
+
task :test => ["cucumber"]
|
data/bin/middleman
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
libdir = File.join(File.dirname(File.dirname(__FILE__)), "lib")
|
4
|
+
$LOAD_PATH.unshift(libdir) unless $LOAD_PATH.include?(libdir)
|
5
|
+
|
6
|
+
require 'pathname'
|
7
|
+
require 'rubygems'
|
8
|
+
|
9
|
+
module Middleman
|
10
|
+
module ProjectLocator
|
11
|
+
def self.locate_middleman_root!(args)
|
12
|
+
cwd = Dir.pwd
|
13
|
+
|
14
|
+
if !in_middleman_project? && !in_middleman_project_subdirectory?
|
15
|
+
$stderr.puts "== Error: Could not find a Middleman project config, perhaps you are in the wrong folder?"
|
16
|
+
return
|
17
|
+
end
|
18
|
+
|
19
|
+
if in_middleman_project?
|
20
|
+
did_locate_middleman_project(cwd, args)
|
21
|
+
return
|
22
|
+
end
|
23
|
+
|
24
|
+
Dir.chdir("..") do
|
25
|
+
# Recurse in a chdir block: if the search fails we want to be sure
|
26
|
+
# the application is generated in the original working directory.
|
27
|
+
locate_middleman_root!(args) unless cwd == Dir.pwd
|
28
|
+
end
|
29
|
+
rescue SystemCallError
|
30
|
+
# could not chdir, no problem just return
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.in_middleman_project?
|
34
|
+
File.exists?('config.rb')
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.in_middleman_project_subdirectory?(path = Pathname.new(Dir.pwd))
|
38
|
+
File.exists?(File.join(path, 'config.rb')) || !path.root? && in_middleman_project_subdirectory?(path.parent)
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.did_locate_middleman_project(path, args)
|
42
|
+
# Set up gems listed in the Gemfile.
|
43
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('Gemfile', path)
|
44
|
+
|
45
|
+
require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE'])
|
46
|
+
|
47
|
+
start_cli!(args)
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.start_cli!(args)
|
51
|
+
require 'middleman'
|
52
|
+
Middleman::CLI.start(args)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
args = ARGV.dup
|
58
|
+
|
59
|
+
ARG_ALIASES = {
|
60
|
+
"s" => "server",
|
61
|
+
"b" => "build",
|
62
|
+
"i" => "init"
|
63
|
+
}
|
64
|
+
|
65
|
+
if ARG_ALIASES.has_key?(args[0])
|
66
|
+
args[0] = ARG_ALIASES[args[0]]
|
67
|
+
end
|
68
|
+
|
69
|
+
if args.length < 1 || %w(server build migrate).include?(args.first)
|
70
|
+
Middleman::ProjectLocator.locate_middleman_root!(args)
|
71
|
+
else
|
72
|
+
Middleman::ProjectLocator.start_cli!(args)
|
73
|
+
end
|
data/bin/mm-build
ADDED
data/bin/mm-init
ADDED
data/bin/mm-server
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
Feature: Alternate between multiple asset hosts
|
2
|
+
In order to speed up page loading
|
3
|
+
|
4
|
+
Scenario: Rendering css with the feature enabled
|
5
|
+
Given I am using an asset host
|
6
|
+
And the Server is running at "test-app"
|
7
|
+
When I go to "/stylesheets/asset_host.css"
|
8
|
+
Then I should see "http://assets"
|
9
|
+
|
10
|
+
Scenario: Rendering html with the feature enabled
|
11
|
+
Given I am using an asset host
|
12
|
+
And the Server is running at "test-app"
|
13
|
+
When I go to "/asset_host.html"
|
14
|
+
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 "test-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 "test-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,23 @@
|
|
1
|
+
Feature: Builder
|
2
|
+
In order to output static html and css for delivery
|
3
|
+
|
4
|
+
Scenario: Checking built folder for content
|
5
|
+
Given a built app at "test-app"
|
6
|
+
Then "index.html" should exist at "test-app" and include "Comment in layout"
|
7
|
+
Then "javascripts/coffee_test.js" should exist at "test-app" and include "Array.prototype.slice"
|
8
|
+
Then "index.html" should exist at "test-app" and include "<h1>Welcome</h1>"
|
9
|
+
Then "static.html" should exist at "test-app" and include "Static, no code!"
|
10
|
+
Then "services/index.html" should exist at "test-app" and include "Services"
|
11
|
+
Then "stylesheets/site.css" should exist at "test-app" and include "html, body, div, span"
|
12
|
+
Then "stylesheets/site_scss.css" should exist at "test-app" and include "html, body, div, span"
|
13
|
+
Then "stylesheets/static.css" should exist at "test-app" and include "body"
|
14
|
+
Then "_partial.html" should not exist at "test-app"
|
15
|
+
Then "spaces in file.html" should exist at "test-app" and include "spaces"
|
16
|
+
Then "images/Read me (example).txt" should exist at "test-app"
|
17
|
+
Then "images/Child folder/regular_file(example).txt" should exist at "test-app"
|
18
|
+
And cleanup built app at "test-app"
|
19
|
+
|
20
|
+
# Scenario: Force relative assets
|
21
|
+
# Given a built app at "relative-app" with flags "--relative"
|
22
|
+
# Then "stylesheets/relative_assets.css" should exist at "relative-app" and include "../"
|
23
|
+
# And cleanup built app at "relative-app"
|
@@ -0,0 +1,26 @@
|
|
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 "test-app"
|
7
|
+
When I go to "/stylesheets/relative_assets.css"
|
8
|
+
Then I should not see "?"
|
9
|
+
|
10
|
+
Scenario: Rendering html with the feature disabled
|
11
|
+
Given "cache_buster" feature is "disabled"
|
12
|
+
And the Server is running at "test-app"
|
13
|
+
When I go to "/cache-buster.html"
|
14
|
+
Then I should not see "?"
|
15
|
+
|
16
|
+
Scenario: Rendering css with the feature enabled
|
17
|
+
Given "cache_buster" feature is "enabled"
|
18
|
+
And the Server is running at "test-app"
|
19
|
+
When I go to "/stylesheets/relative_assets.css"
|
20
|
+
Then I should see "?"
|
21
|
+
|
22
|
+
Scenario: Rendering html with the feature enabled
|
23
|
+
Given "cache_buster" feature is "enabled"
|
24
|
+
And the Server is running at "test-app"
|
25
|
+
When I go to "/cache-buster.html"
|
26
|
+
Then I should not see "?"
|
@@ -0,0 +1,17 @@
|
|
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 "test-app"
|
6
|
+
When I go to "/javascripts/coffee_test.js"
|
7
|
+
Then I should see "Array.prototype.slice"
|
8
|
+
|
9
|
+
Scenario: Rendering coffee-script with :coffeescript haml-filter
|
10
|
+
Given the Server is running at "test-app"
|
11
|
+
When I go to "/inline-coffeescript.html"
|
12
|
+
Then I should see "Array.prototype.slice"
|
13
|
+
|
14
|
+
Scenario: Rendering broken coffee
|
15
|
+
Given the Server is running at "test-app"
|
16
|
+
When I go to "/javascripts/broken-coffee.js"
|
17
|
+
Then I should see "Reserved word"
|
@@ -0,0 +1,12 @@
|
|
1
|
+
Feature: Local Data API
|
2
|
+
In order to abstract content from structure
|
3
|
+
|
4
|
+
Scenario: Rendering html
|
5
|
+
Given the Server is running at "test-app"
|
6
|
+
When I go to "/data.html"
|
7
|
+
Then I should see "One:Two"
|
8
|
+
|
9
|
+
Scenario: Rendering liquid
|
10
|
+
Given the Server is running at "test-app"
|
11
|
+
When I go to "/data2.html"
|
12
|
+
Then I should see "OneTwo"
|
@@ -0,0 +1,29 @@
|
|
1
|
+
Feature: Directory Index
|
2
|
+
In order output Apache-friendly directories and indexes
|
3
|
+
|
4
|
+
Scenario: Checking built folder for content
|
5
|
+
Given a built app at "indexable-app"
|
6
|
+
Then "needs_index/index.html" should exist at "indexable-app" and include "Indexable"
|
7
|
+
Then "a_folder/needs_index/index.html" should exist at "indexable-app" and include "Indexable"
|
8
|
+
Then "leave_me_alone.html" should exist at "indexable-app" and include "Stay away"
|
9
|
+
Then "regular/index.html" should exist at "indexable-app" and include "Regular"
|
10
|
+
Then "regular/index/index.html" should not exist at "indexable-app"
|
11
|
+
Then "needs_index.html" should not exist at "indexable-app"
|
12
|
+
Then "a_folder/needs_index.html" should not exist at "indexable-app"
|
13
|
+
Then "leave_me_alone/index.html" should not exist at "indexable-app"
|
14
|
+
And cleanup built app at "indexable-app"
|
15
|
+
|
16
|
+
Scenario: Preview normal file
|
17
|
+
Given the Server is running at "indexable-app"
|
18
|
+
When I go to "/needs_index/"
|
19
|
+
Then I should see "Indexable"
|
20
|
+
|
21
|
+
Scenario: Preview normal file subdirectory
|
22
|
+
Given the Server is running at "indexable-app"
|
23
|
+
When I go to "/a_folder/needs_index/"
|
24
|
+
Then I should see "Indexable"
|
25
|
+
|
26
|
+
Scenario: Preview ignored file
|
27
|
+
Given the Server is running at "indexable-app"
|
28
|
+
When I go to "/leave_me_alone/"
|
29
|
+
Then I should see "File Not Found"
|
@@ -0,0 +1,33 @@
|
|
1
|
+
Feature: Dynamic Pages
|
2
|
+
In order to use a single view to generate multiple output files
|
3
|
+
|
4
|
+
Scenario: Checking built folder for content
|
5
|
+
Given a built app at "test-app"
|
6
|
+
Then "fake.html" should exist at "test-app" and include "I am real"
|
7
|
+
Then "fake/one.html" should exist at "test-app" and include "I am real: one"
|
8
|
+
Then "fake/two.html" should exist at "test-app" and include "I am real: two"
|
9
|
+
Then "target_ignore.html" should exist at "test-app" and include "Ignore me"
|
10
|
+
Then "should_be_ignored.html" should not exist at "test-app"
|
11
|
+
Then "should_be_ignored2.html" should not exist at "test-app"
|
12
|
+
Then "should_be_ignored3.html" should not exist at "test-app"
|
13
|
+
And cleanup built app at "test-app"
|
14
|
+
|
15
|
+
Scenario: Preview basic proxy
|
16
|
+
Given the Server is running at "test-app"
|
17
|
+
When I go to "/fake.html"
|
18
|
+
Then I should see "I am real"
|
19
|
+
|
20
|
+
Scenario: Preview proxy with variable one
|
21
|
+
Given the Server is running at "test-app"
|
22
|
+
When I go to "/fake/one.html"
|
23
|
+
Then I should see "I am real: one"
|
24
|
+
|
25
|
+
Scenario: Preview proxy with variable two
|
26
|
+
Given the Server is running at "test-app"
|
27
|
+
When I go to "/fake/two.html"
|
28
|
+
Then I should see "I am real: two"
|
29
|
+
|
30
|
+
Scenario: Preview ignored paths
|
31
|
+
Given the Server is running at "test-app"
|
32
|
+
When I go to "/should_be_ignored.html"
|
33
|
+
Then I should see "File Not Found"
|
@@ -0,0 +1,8 @@
|
|
1
|
+
Feature: Generator
|
2
|
+
In order to generate static assets for client
|
3
|
+
|
4
|
+
Scenario: Copying template files
|
5
|
+
Given generated directory at "generator-test"
|
6
|
+
Then template files should exist at "generator-test"
|
7
|
+
And empty directories should exist at "generator-test"
|
8
|
+
And cleanup at "generator-test"
|
@@ -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 "test-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 "test-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 "test-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 "test-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 "test-app"
|
26
|
+
When I go to "/auto-js/sub/auto-js.html"
|
27
|
+
Then I should see "javascripts/auto-js/sub/auto-js.js"
|