diff --git a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_browser.feature b/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_browser.feature deleted file mode 100644 index 89504ca8..00000000 --- a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_browser.feature +++ /dev/null @@ -1,17 +0,0 @@ -@eleventy0 -Feature: Eleventy Bookshop Component Browser - As a user of Eleventy with Bookshop - I want my component browser to be preconfigured to my bookshop - So that I can view components while developing - - Background: - Given the file tree: - """ - component-lib/ - bookshop/ - bookshop.config.js from starters/eleventy/bookshop.config.js - site/ - .eleventy.js from starters/eleventy/.eleventy.js - .eleventyignore from starters/eleventy/.eleventyignore - package.json from starters/eleventy/eleventy-zero-package.json # <-- this .json line hurts my syntax highlighting - """ diff --git a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_components.feature b/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_components.feature deleted file mode 100644 index 611e7ea2..00000000 --- a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_components.feature +++ /dev/null @@ -1,162 +0,0 @@ -@eleventy0 -Feature: Basic Eleventy Bookshop - As a user of Eleventy with Bookshop - I want to be able to use components - So that I can build my site - - Background: - Given the file tree: - """ - component-lib/ - bookshop/ - bookshop.config.js from starters/eleventy/bookshop.config.js - site/ - .eleventy.js from starters/eleventy/.eleventy.js - .eleventyignore from starters/eleventy/.eleventyignore - package.json from starters/eleventy/eleventy-zero-package.json # <-- this .json line hurts my syntax highlighting - """ - - Scenario: Tests are functional - Given a site/index.html file containing: - """ - --- - --- -

Hello World!

- """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "Hello World" - - - Scenario: Components are rendered from bookshop - Given a component-lib/components/title/title.eleventy.liquid file containing: - """ -

Bookshop: {{ text }}

- """ - And a site/index.html file containing: - """ - --- - --- - {% bookshop "title" text: "Result πŸ€½β€β™‚οΈ" %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "Bookshop: Result πŸ€½β€β™‚οΈ" - - Scenario: Components can use the page front matter - Given a component-lib/components/title/title.eleventy.liquid file containing: - """ -

Bookshop: {{ text }}

- """ - And a site/index.html file containing: - """ - --- - title_text: "Result πŸ›—" - --- - {% bookshop "title" text: title_text %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "Bookshop: Result πŸ›—" - - Scenario: Components can use further components - Given a component-lib/components/hero/hero.eleventy.liquid file containing: - """ -

{{ text }}

- {% bookshop "tag" tagprop: herotag %} - """ - And a component-lib/components/tag/tag.eleventy.liquid file containing: - """ - {{ tagprop.label }} - """ - And a site/index.html file containing: - """ - --- - title_text: "🩳" - hero: - tag: - label: "πŸͺ£" - --- - {% bookshop "hero" text: title_text herotag: hero.tag %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "

🩳

" - And site/_site/index.html should contain the text "πŸͺ£" - - Scenario: Bookshop tags can use the bind syntax - Given a component-lib/components/card/card.eleventy.liquid file containing: - """ -

{{ title }}

-

{{ description }}

- """ - And a site/index.html file containing: - """ - --- - card: - title: "🧻" - description: "β›³" - --- - {% bookshop "card" bind: card %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "

🧻

" - And site/_site/index.html should contain the text "

β›³

" - - Scenario: Bookshop tags should support dynamic names - Given a component-lib/components/a/a.eleventy.liquid file containing "πŸ…°οΈ{{e}}" - And a component-lib/components/b/b.eleventy.liquid file containing "πŸ…±οΈ{{e}}" - And a site/index.html file containing: - """ - --- - components: - - _name: a - e: πŸ«€ - - _name: b - e: πŸ«‘ - --- - {% for component in components %} - {% bookshop {{component._name}} bind: component %} - {% endfor %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "πŸ…°οΈπŸ«€" - And site/_site/index.html should contain the text "πŸ…±οΈπŸ«‘" - - Scenario: Bookshop page building components should work - Given a component-lib/components/page/page.eleventy.liquid file containing: - """ - {% for props in column_contents %} - {% bookshop {{props._bookshop_name}} bind: props %} - {% endfor %} - """ - And a component-lib/components/tag/tag.eleventy.liquid file containing "tag-{{tag}}-tag" - And a site/index.html file containing: - """ - --- - components: - - _bookshop_name: page - column_contents: - - _bookshop_name: tag - tag: "contents" - - _bookshop_name: tag - tag: "another" - --- - {% for component in components %} - {% bookshop {{component._bookshop_name}} bind: component %} - {% endfor %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should contain the text "tag-contents-tag" - And site/_site/index.html should contain the text "tag-another-tag" - diff --git a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_includes.feature b/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_includes.feature deleted file mode 100644 index c47a0d81..00000000 --- a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_includes.feature +++ /dev/null @@ -1,41 +0,0 @@ -@eleventy0 -Feature: Eleventy Bookshop Includes - As a user of Eleventy with Bookshop - I want includes scoped to the bookshop - So that I can use them on the site or in components - - Background: - Given the file tree: - """ - component-lib/ - bookshop/ - bookshop.config.js from starters/eleventy/bookshop.config.js - site/ - .eleventy.js from starters/eleventy/.eleventy.js - .eleventyignore from starters/eleventy/.eleventyignore - package.json from starters/eleventy/eleventy-zero-package.json # <-- this .json line hurts my syntax highlighting - """ - - Scenario: Basic Bookshop Include - Given a component-lib/shared/eleventy/basic.eleventy.liquid file containing: - """ - {{label}}πŸŽ‰ - """ - Given a component-lib/components/block/block.eleventy.liquid file containing: - """ -
{% bookshop_include "basic" label: title %}-Block
- """ - And a site/index.html file containing: - """ - --- - --- - {% bookshop "block" title: "Component" %} - {% bookshop_include "basic" label: "Site" %}-Inline - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should contain "v0.12.1" - And site/_site/index.html should leniently contain each row: - | text | - | ComponentπŸŽ‰ -Block | - | SiteπŸŽ‰ -Inline | diff --git a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live.feature b/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live.feature deleted file mode 100644 index 94126438..00000000 --- a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live.feature +++ /dev/null @@ -1,50 +0,0 @@ -@eleventy0 -Feature: Eleventy Bookshop CloudCannon Integration - As a user of Eleventy with Bookshop - I want my CMS interfaces to be preconfigured - So that I can build pages out of my components - - Background: - Given the file tree: - """ - component-lib/ - bookshop/ - bookshop.config.js from starters/eleventy/bookshop.config.js - site/ - .eleventy.js from starters/eleventy/.eleventy.js - .eleventyignore from starters/eleventy/.eleventyignore - package.json from starters/eleventy/eleventy-zero-package.json # <-- this .json line hurts my syntax highlighting - """ - - Scenario: Bookshop Live schema comments - Given a component-lib/components/page/page.eleventy.liquid file containing: - """ - {% for block in content_blocks %} - {% assign b = block %} -

{{ b._bookshop_name }}

- {% endfor %} - """ - Given a component-lib/components/single/single.eleventy.liquid file containing: - """ - {{ _bookshop_name }} - """ - And a site/index.html file containing: - """ - --- - content_blocks: - - _bookshop_name: fake - --- - {% bookshop "page" content_blocks: content_blocks %} - {% for block in content_blocks %} - {% bookshop "single" bind: block %} - {% endfor %} - """ - When I run "npm start" in the site directory - Then stderr should be empty - And stdout should not be empty - And site/_site/index.html should contain each row: - | text | - |

fake

| - | | - | fake | - | | diff --git a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live_browser.feature b/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live_browser.feature deleted file mode 100644 index a650812a..00000000 --- a/javascript-modules/integration-tests/features/eleventy-zero/eleventy_zero_bookshop_live_browser.feature +++ /dev/null @@ -1,75 +0,0 @@ -@eleventy0 @web -Feature: Eleventy Bookshop CloudCannon Live Editing - - Background: - Given the file tree: - """ - package.json from starters/generate/package.json # <-- this .json line hurts my syntax highlighting - component-lib/ - bookshop/ - bookshop.config.js from starters/eleventy/bookshop.config.js - site/ - .eleventy.js from starters/eleventy/.eleventy.cloudcannon.js - .eleventyignore from starters/eleventy/.eleventyignore - package.json from starters/eleventy/eleventy-zero-package.json # <-- this .json line hurts my syntax highlighting - _includes/ - layouts/ - default.liquid from starters/eleventy/default.liquid - """ - - Scenario: Bookshop Live browser update - Given a component-lib/components/single/single.eleventy.liquid file containing: - """ -

{{ title }}

- """ - And a site/index.html file containing: - """ - --- - layout: layouts/default.liquid - content_blocks: - - _bookshop_name: single - title: "Hello There" - --- - {% for block in content_blocks %} - {% bookshop {{block._bookshop_name}} bind: block %} - {% endfor %} - """ - # Building the site - When I run "npm start" in the site directory - Then stderr should be empty - Then stdout should not be empty - Then site/_site/index.html should contain each row: - | text | - | | - # Running Bookshop Generate - When I run "npm start" in the . directory - Then stderr should be empty - Then stdout should contain "Modifying output site at ./site/_site" - Then stdout should contain "Added live editing to 1 page containing Bookshop components" - # Testing CloudCannon initialising - When I serve the site/_site directory - When 🌐 I load http://localhost:__PORT__ - Then 🌐 The selector h1 should contain "Hello There" - When 🌐 CloudCannon is ready with the data: - """ - { - content_blocks: [ { - _bookshop_name: "single", - title: "Gidday" - } ] - } - """ - * 🌐 "window.bookshopLive?.renderCount > 0" evaluates - Then 🌐 The selector h1 should contain "Gidday" - # Testing CloudCannon data changing - When 🌐 CloudCannon pushes new json: - """ - { - content_blocks: [ { - _bookshop_name: "single", - title: "Rerendered" - } ] - } - """ - Then 🌐 There should be no errors - Then 🌐 The selector h1 should contain "Rerendered" \ No newline at end of file