summaryrefslogtreecommitdiff
path: root/spec/javascripts/fixtures/static_fixtures.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/javascripts/fixtures/static_fixtures.rb')
-rw-r--r--spec/javascripts/fixtures/static_fixtures.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/javascripts/fixtures/static_fixtures.rb b/spec/javascripts/fixtures/static_fixtures.rb
new file mode 100644
index 00000000000..4569f16f0ca
--- /dev/null
+++ b/spec/javascripts/fixtures/static_fixtures.rb
@@ -0,0 +1,31 @@
+require 'spec_helper'
+
+describe ApplicationController, '(Static JavaScript fixtures)', type: :controller do
+ include JavaScriptFixturesHelpers
+
+ before(:all) do
+ clean_frontend_fixtures('static/')
+ end
+
+ fixtures_path = File.expand_path(JavaScriptFixturesHelpers::FIXTURE_PATH, Rails.root)
+ haml_fixtures = Dir.glob(File.expand_path('**/*.haml', fixtures_path)).map do |file_path|
+ file_path.sub(/\A#{fixtures_path}#{File::SEPARATOR}/, '')
+ end
+
+ haml_fixtures.each do |template_file_name|
+ it "static/#{template_file_name.sub(/\.haml\z/, '.raw')}" do |example|
+ fixture_file_name = example.description
+ rendered = render_template(template_file_name)
+ store_frontend_fixture(rendered, fixture_file_name)
+ end
+ end
+
+ private
+
+ def render_template(template_file_name)
+ fixture_path = JavaScriptFixturesHelpers::FIXTURE_PATH
+ controller = ApplicationController.new
+ controller.prepend_view_path(fixture_path)
+ controller.render_to_string(template: template_file_name, layout: false)
+ end
+end