Add a cucumber feature to test link tag (#6777)
Merge pull request 6777
This commit is contained in:
parent
28ff8adcc6
commit
275a1f4d5d
|
@ -0,0 +1,78 @@
|
|||
Feature: Link Tag
|
||||
As a hacker who likes to write a variety of content
|
||||
I want to be able to link to pages and documents
|
||||
And render them without much hassle
|
||||
|
||||
Scenario: Basic site with two pages
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Home]({% link index.md %})"
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about.html\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/\">Home</a></p>" in "_site/about.html"
|
||||
|
||||
Scenario: Basic site with custom page-permalinks
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page with permalink "/about/" that contains "[Home]({% link index.md %})"
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about/\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/\">Home</a></p>" in "_site/about/index.html"
|
||||
|
||||
Scenario: Basic site with custom site-wide-permalinks
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Home]({% link index.md %})"
|
||||
And I have a configuration file with "permalink" set to "pretty"
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about/\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/\">Home</a></p>" in "_site/about/index.html"
|
||||
|
||||
Scenario: Basic site with two pages and custom baseurl
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Home]({% link index.md %})"
|
||||
And I have a configuration file with "baseurl" set to "/blog"
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about.html\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/\">Home</a></p>" in "_site/about.html"
|
||||
|
||||
Scenario: Basic site with two pages and custom baseurl and permalinks
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Home]({% link index.md %})"
|
||||
And I have a "_config.yml" file with content:
|
||||
"""
|
||||
baseurl: /blog
|
||||
permalink: pretty
|
||||
"""
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about/\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/\">Home</a></p>" in "_site/about/index.html"
|
||||
|
||||
Scenario: Linking to a ghost file
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Contact]({% link contact.md %})"
|
||||
When I run jekyll build
|
||||
Then I should get a non-zero exit status
|
||||
And the _site directory should not exist
|
||||
And I should see "Could not find document 'contact.md' in tag 'link'" in the build output
|
||||
|
||||
Scenario: Complex site with a variety of files
|
||||
Given I have an "index.md" page that contains "[About my projects]({% link about.md %})"
|
||||
And I have an "about.md" page that contains "[Latest Hack]({% link _posts/2018-02-15-metaprogramming.md %})"
|
||||
And I have a _posts directory
|
||||
And I have an "_posts/2018-02-15-metaprogramming.md" page that contains "[Download This]({% link script.txt %})"
|
||||
And I have a "script.txt" file that contains "Static Alert!"
|
||||
When I run jekyll build
|
||||
Then I should get a zero exit status
|
||||
And the _site directory should exist
|
||||
And I should see "<p><a href=\"/about.html\">About my projects</a></p>" in "_site/index.html"
|
||||
And I should see "<p><a href=\"/2018/02/15/metaprogramming.html\">Latest Hack</a></p>" in "_site/about.html"
|
||||
And I should see "<p><a href=\"/script.txt\">Download This</a></p>" in "_site/2018/02/15/metaprogramming.html"
|
||||
And I should see "Static Alert!" in "_site/script.txt"
|
|
@ -36,7 +36,7 @@ end
|
|||
Given(%r!^I have an? "(.*)" page(?: with (.*) "(.*)")? that contains "(.*)"$!) do |file, key, value, text|
|
||||
File.write(file, Jekyll::Utils.strip_heredoc(<<-DATA))
|
||||
---
|
||||
#{key || "layout"}: #{value || "nil"}
|
||||
#{key || "layout"}: #{value || "none"}
|
||||
---
|
||||
|
||||
#{text}
|
||||
|
|
Loading…
Reference in New Issue