Feature: Relative Assets In order easily switch between relative and absolute paths Scenario: Previewing css with the feature disabled Given "relative_assets" feature is "disabled" And the Server is running at "relative-assets-app" When I go to "/stylesheets/relative_assets.css" Then I should not see "url('../" And I should see '/images/blank.gif")' Scenario: Building css with the feature disabled Given a fixture app "relative-assets-app" And a file named "config.rb" with: """ """ Given a successfully built app at "relative-assets-app" When I cd to "build" Then the file "stylesheets/relative_assets.css" should contain 'url("/images/blank.gif")' Scenario: Rendering html with the feature disabled Given "relative_assets" feature is "disabled" And the Server is running at "relative-assets-app" When I go to "/relative_image.html" Then I should see '"/stylesheets/relative_assets.css"' Then I should see '"/javascripts/app.js"' Then I should see "/images/blank.gif" When I go to "/absolute_image_relative_css.html" Then I should see '"stylesheets/relative_assets.css"' Then I should see '"javascripts/app.js"' Then I should see "/images/blank.gif" Scenario: Rendering css with the feature enabled Given "relative_assets" feature is "enabled" And the Server is running at "relative-assets-app" When I go to "/stylesheets/relative_assets.css" Then I should see 'url("../images/blank.gif' When I go to "/javascripts/application.js" Then I should not see "../" When I go to "/stylesheets/fonts.css" Then I should see 'url(../fonts/roboto/roboto-regular-webfont.eot' And I should see 'url(../fonts/roboto/roboto-regular-webfont.woff' And I should see 'url(../fonts/roboto/roboto-regular-webfont.ttf' And I should see 'url(../fonts/roboto/roboto-regular-webfont.svg' Scenario: Building css with the feature enabled Given a fixture app "relative-assets-app" And a file named "config.rb" with: """ activate :relative_assets """ Given a successfully built app at "relative-assets-app" When I cd to "build" Then the file "stylesheets/relative_assets.css" should contain 'url("../images/blank.gif")' Then the file "javascripts/application.js" should not contain "../" Scenario: Relative css reference with directory indexes Given a fixture app "relative-assets-app" And a file named "config.rb" with: """ activate :directory_indexes activate :relative_assets """ Given a successfully built app at "relative-assets-app" When I cd to "build" Then the file "relative_image/index.html" should contain "../stylesheets/relative_assets.css" Scenario: Rendering html with the feature enabled (overrides relative option on helpers) Given "relative_assets" feature is "enabled" And the Server is running at "relative-assets-app" When I go to "/relative_image.html" Then I should see '"stylesheets/relative_assets.css"' Then I should see '"javascripts/app.js"' When I go to "/relative_image_absolute_css.html" Then I should see '"stylesheets/relative_assets.css"' Then I should see '"javascripts/app.js"' Then I should not see "/images/blank.gif" And I should see "images/blank.gif" Scenario: Rendering scss with the feature enabled Given "relative_assets" feature is "enabled" And the Server is running at "fonts-app" When I go to "/stylesheets/fonts.css" Then I should see: """ url("../fonts/StMarie-Thin.otf" """ And I should see: """ url("../fonts/blank/blank.otf" """ Scenario: Building scss with the feature enabled Given a fixture app "fonts-app" And a file named "config.rb" with: """ activate :relative_assets """ Given a successfully built app at "fonts-app" When I cd to "build" Then the file "stylesheets/fonts.css" should contain: """ url("../fonts/StMarie-Thin.otf") """ And the file "stylesheets/fonts.css" should contain: """ url("../fonts/blank/blank.otf") """ Scenario: Relative assets via image_tag Given a fixture app "relative-assets-app" Given "relative_assets" feature is "enabled" And a file named "source/sub/image_tag.html.erb" with: """ <%= image_tag '/img/blank.gif' %> """ And the Server is running at "relative-assets-app" When I go to "/sub/image_tag.html" Then I should see '' Scenario: Relative assets should not break data URIs in image_tag Given a fixture app "relative-assets-app" Given "relative_assets" feature is "enabled" And a file named "source/sub/image_tag.html.erb" with: """ <%= image_tag "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" %> """ And the Server is running at "relative-assets-app" When I go to "/sub/image_tag.html" Then I should see ''