middleman/middleman-core/features/clean_build.feature

63 lines
2.4 KiB
Gherkin

Feature: Build Clean
Scenario: Build and Clean an app
Given a fixture app "clean-app"
And app "clean-app" is using config "empty"
And a successfully built app at "clean-app" with flags "--no-clean"
Then the following files should exist:
| build/index.html |
| build/should_be_ignored.html |
| build/should_be_ignored2.html |
| build/should_be_ignored3.html |
And app "clean-app" is using config "complications"
Given a successfully built app at "clean-app"
Then the following files should not exist:
| build/should_be_ignored.html |
| build/should_be_ignored2.html |
| build/should_be_ignored3.html |
And the file "build/index.html" should contain "Comment in layout"
Scenario: Clean build an app with newly ignored files and a nested output directory
Given a fixture app "clean-nested-app"
When a file named "config.rb" with:
"""
set :build_dir, "sub/dir"
"""
Given a built app at "clean-nested-app" with flags "--no-clean"
Then a directory named "sub/dir" should exist
Then the following directories should exist:
| sub/dir |
| sub/dir/nested |
Then the following files should exist:
| sub/dir/about.html |
| sub/dir/nested/nested.html |
When a file named "config.rb" with:
"""
set :build_dir, "sub/dir"
ignore 'about.html'
ignore 'nested/*'
"""
Given a built app at "clean-nested-app"
Then the following directories should not exist:
| sub/dir/nested |
Then the following files should not exist:
| sub/dir/about.html |
| sub/dir/nested/nested.html |
Scenario: Build and clean an app under a hidden directory
Given a fixture app "clean-app"
And app "clean-app" is using config "hidden-dir-before"
And a built app at "clean-app"
Then the following files should exist:
| .build/index.html |
| .build/should_be_ignored.html |
| .build/should_be_ignored2.html |
| .build/should_be_ignored3.html |
Given app "clean-app" is using config "hidden-dir-after"
And a built app at "clean-app"
Then the following files should exist:
| .build/index.html |
And the following files should not exist:
| .build/should_be_ignored.html |
| .build/should_be_ignored2.html |
| .build/should_be_ignored3.html |