2011-12-16 01:05:15 +01:00
|
|
|
Feature: Middleman CLI
|
|
|
|
|
|
|
|
Scenario: Create a new project
|
2015-01-04 22:23:37 +01:00
|
|
|
When I run `middleman init MY_PROJECT` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
2011-12-23 19:58:56 +01:00
|
|
|
Then the exit status should be 0
|
2011-12-16 07:11:59 +01:00
|
|
|
When I cd to "MY_PROJECT"
|
|
|
|
Then the following files should exist:
|
2012-03-25 05:37:03 +02:00
|
|
|
| Gemfile |
|
2012-05-05 06:11:11 +02:00
|
|
|
| .gitignore |
|
2011-12-16 07:11:59 +01:00
|
|
|
| config.rb |
|
2011-12-23 19:58:56 +01:00
|
|
|
| source/index.html.erb |
|
|
|
|
| source/layouts/layout.erb |
|
|
|
|
| source/javascripts/all.js |
|
2015-01-04 22:06:14 +01:00
|
|
|
| source/stylesheets/site.css.scss |
|
|
|
|
| source/stylesheets/_normalize.scss |
|
2014-02-20 08:13:59 +01:00
|
|
|
|
|
|
|
Scenario: Create a new project in the current directory
|
|
|
|
Given a directory named "MY_PROJECT"
|
|
|
|
When I cd to "MY_PROJECT"
|
2015-01-04 22:28:13 +01:00
|
|
|
And I run `middleman init` interactively
|
2015-01-04 22:23:37 +01:00
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
2014-02-20 08:13:59 +01:00
|
|
|
Then the exit status should be 0
|
|
|
|
And the following files should exist:
|
|
|
|
| Gemfile |
|
|
|
|
| config.rb |
|
|
|
|
| source/index.html.erb |
|
|
|
|
|
2011-12-21 21:13:28 +01:00
|
|
|
Scenario: Create a new project (alias i)
|
2015-01-04 22:23:37 +01:00
|
|
|
When I run `middleman i MY_PROJECT` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
2011-12-21 21:13:28 +01:00
|
|
|
Then a directory named "MY_PROJECT" should exist
|
2014-02-20 08:13:59 +01:00
|
|
|
|
2012-03-25 05:37:03 +02:00
|
|
|
Scenario: Create a new project (alias new)
|
2015-01-04 22:23:37 +01:00
|
|
|
When I run `middleman new MY_PROJECT` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
2011-12-21 21:13:28 +01:00
|
|
|
Then a directory named "MY_PROJECT" should exist
|
2014-02-20 08:13:59 +01:00
|
|
|
|
2012-03-25 05:37:03 +02:00
|
|
|
Scenario: Create a new project (alias n)
|
2015-01-04 22:23:37 +01:00
|
|
|
When I run `middleman n MY_PROJECT` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
2011-12-21 21:13:28 +01:00
|
|
|
Then a directory named "MY_PROJECT" should exist
|
2015-02-18 12:43:15 +01:00
|
|
|
|
|
|
|
Scenario: Create a new project using Middleman directory
|
2015-11-11 21:58:07 +01:00
|
|
|
When I run `middleman init MY_PROJECT -T blog`
|
2015-02-18 12:43:15 +01:00
|
|
|
Then a directory named "MY_PROJECT" should exist
|
|
|
|
When I cd to "MY_PROJECT"
|
2015-11-11 21:58:07 +01:00
|
|
|
And the file "Gemfile" should contain "middleman-blog"
|
2016-01-19 18:42:49 +01:00
|
|
|
And the file ".gitignore" should exist
|
|
|
|
|
|
|
|
Scenario: Create an invalid project using Middleman directory
|
|
|
|
When I run `middleman init MY_PROJECT -T does-not-exist-for-reals`
|
2016-01-19 23:55:47 +01:00
|
|
|
Then the exit status should be 1
|
2015-02-18 12:43:15 +01:00
|
|
|
|
|
|
|
Scenario: Create a new project using github(user/repository)
|
|
|
|
When I run `middleman init MY_PROJECT -T middleman/middleman-templates-default` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
Then a directory named "MY_PROJECT" should exist
|
|
|
|
|
|
|
|
Scenario: Create a new project using github(user/repository#branch)
|
|
|
|
When I run `middleman init MY_PROJECT -T middleman/middleman-templates-default#master` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
Then a directory named "MY_PROJECT" should exist
|
|
|
|
And the output should contain "-b master"
|
|
|
|
|
|
|
|
Scenario: Create a new project using full path(://)
|
|
|
|
When I run `middleman init MY_PROJECT -T https://github.com/middleman/middleman-templates-default.git` interactively
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
And I type "y"
|
|
|
|
Then a directory named "MY_PROJECT" should exist
|