Skip to content

Commit c61e8c9

Browse files
committed
refactor(test) put sprockets helpers in module
1 parent b9923c4 commit c61e8c9

16 files changed

+111
-105
lines changed

test/dummy/app/controllers/pages_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
class PagesController < ApplicationController
2-
if WebpackerHelpers.available? || !SKIP_SPROCKETS
2+
if WebpackerHelpers.available? || SprocketsHelpers.available?
33
per_request_react_rails_prerenderer
44
end
55

test/dummy/app/views/layouts/application.html.erb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html>
33
<head>
44
<title>Dummy</title>
5-
<% if !SKIP_SPROCKETS %>
5+
<% if SprocketsHelpers.available? %>
66
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
77
<% end %>
88
<%= csrf_meta_tags %>

test/dummy/config/application.rb

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@
66
require "action_mailer/railtie"
77

88
# Test no-sprockets environment by testing the gemfile name
9-
SKIP_SPROCKETS = ENV["BUNDLE_GEMFILE"] =~ /no_sprockets/
10-
if !SKIP_SPROCKETS
9+
if SprocketsHelpers.available?
1110
require "sprockets/railtie"
1211
end
1312

@@ -33,7 +32,7 @@ class Application < Rails::Application
3332
# config.i18n.default_locale = :de
3433
config.react.variant = :production
3534
config.react.addons = false
36-
if !SKIP_SPROCKETS
35+
if SprocketsHelpers.available?
3736
config.assets.enabled = true
3837
end
3938
end

test/dummy/config/environments/test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
# we need this to reload the jsx transformer when different version is dropped in
1010
config.cache_classes = false
1111
config.reload_plugins = true
12-
if !SKIP_SPROCKETS
12+
if SprocketsHelpers.available?
1313
config.assets.cache_store = :null_store
1414
end
1515

test/react/jsx/jsx_prepocessor_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
require 'test_helper'
22

3-
when_sprockets_available do
3+
SprocketsHelpers.when_available do
44
class JSXPreprocessorTest < ActiveSupport::TestCase
55
REQUIRED_JAVASCRIPT = "var requirePlainJavascript = true;"
66
REQUIRED_COFFEESCRIPT = "var requireCoffee; requireCoffee = true;"
77
REQUIRED_JSX = "React.createElement(\"div\", { className: \"require-jsx\" });"
88
OWN_JSX = "React.createElement(\"div\", { className: \"le-javascript\" });"
99
test 'executes //= require directives' do
10-
require_parent = fetch_asset_body("require_test/jsx_preprocessor_test.js")
10+
require_parent = SprocketsHelpers.fetch_asset_body("require_test/jsx_preprocessor_test.js")
1111

1212
assert_compiled_javascript_includes(require_parent, REQUIRED_JAVASCRIPT)
1313
assert_compiled_javascript_includes(require_parent, REQUIRED_COFFEESCRIPT)

test/react/jsx/jsx_transformer_test.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
require 'test_helper'
22

3-
when_sprockets_available do
3+
SprocketsHelpers.when_available do
44
class JSXTransformerTest < ActionDispatch::IntegrationTest
55
setup do
66
reset_transformer
77
React::JSX.transformer_class = React::JSX::JSXTransformer
8-
manually_expire_asset('JSXTransformer.js')
8+
SprocketsHelpers.manually_expire_asset('JSXTransformer.js')
99
end
1010

1111
teardown do
1212
reset_transformer
13-
manually_expire_asset('JSXTransformer.js')
13+
SprocketsHelpers.manually_expire_asset('JSXTransformer.js')
1414
end
1515

1616
test 'can use dropped-in version of JSX transformer' do
1717
hidden_path = Rails.root.join("vendor/assets/react/JSXTransformer__.js")
1818
replacing_path = Rails.root.join("vendor/assets/react/JSXTransformer.js")
1919

2020
FileUtils.cp hidden_path, replacing_path
21-
manually_expire_asset('example3.js')
21+
SprocketsHelpers.manually_expire_asset('example3.js')
2222

2323
get '/assets/example3.js'
2424
FileUtils.rm replacing_path
@@ -53,7 +53,7 @@ class JSXTransformerTest < ActionDispatch::IntegrationTest
5353

5454
FileUtils.mkdir_p(custom_path)
5555
FileUtils.cp(hidden_path, replacing_path)
56-
manually_expire_asset('example3.js')
56+
SprocketsHelpers.manually_expire_asset('example3.js')
5757
get '/assets/example3.js'
5858

5959
FileUtils.rm_rf custom_path

test/react/jsx_test.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def transform(code)
2626
end
2727
end
2828

29-
when_sprockets_available do
29+
SprocketsHelpers.when_available do
3030
class JSXTransformTest < ActionDispatch::IntegrationTest
3131
setup do
3232
reset_transformer
@@ -37,30 +37,30 @@ class JSXTransformTest < ActionDispatch::IntegrationTest
3737
end
3838

3939
test 'asset pipeline should transform JSX' do
40-
manually_expire_asset('example.js')
40+
SprocketsHelpers.manually_expire_asset('example.js')
4141
get '/assets/example.js'
4242
assert_response :success
4343
assert_compiled_javascript_matches(EXPECTED_JS, @response.body)
4444
end
4545

4646
test 'asset pipeline should transform JSX + Coffeescript' do
47-
manually_expire_asset('example2.js')
47+
SprocketsHelpers.manually_expire_asset('example2.js')
4848
get '/assets/example2.js'
4949
assert_response :success
5050
assert_compiled_javascript_matches(EXPECTED_JS_2, @response.body)
5151
end
5252

5353
test 'use a custom transformer' do
5454
React::JSX.transformer_class = NullTransformer
55-
manually_expire_asset('example2.js')
55+
SprocketsHelpers.manually_expire_asset('example2.js')
5656
get '/assets/example2.js'
5757

5858
assert_equal "TRANSFORMED CODE!;\n", @response.body
5959
end
6060

6161
def test_babel_transformer_accepts_babel_transformation_options
6262
React::JSX.transform_options = {blacklist: ['spec.functionName', 'validation.react', "strict"]}
63-
manually_expire_asset('example.js')
63+
SprocketsHelpers.manually_expire_asset('example.js')
6464
get '/assets/example.js'
6565
assert_response :success
6666

test/react/rails/component_mount_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
require 'test_helper'
22

3-
when_sprockets_available do
3+
SprocketsHelpers.when_available do
44
class ComponentMountTest < ActionDispatch::IntegrationTest
55
setup do
66
WebpackerHelpers.compile_if_missing

test/react/rails/react_rails_ujs_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
require 'test_helper'
22

3-
when_sprockets_available do
3+
SprocketsHelpers.when_available do
44
class ReactRailsUJSTest < ActionDispatch::IntegrationTest
55
include Capybara::DSL
66

test/react/server_rendering/manifest_container_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99

1010
class ManifestContainerTest < ActiveSupport::TestCase
1111
def setup
12-
precompile_assets
12+
SprocketsHelpers.precompile_assets
1313

1414
@manifest_container = React::ServerRendering::ManifestContainer.new
1515
end
1616

1717
def teardown
18-
clear_precompiled_assets
18+
SprocketsHelpers.clear_precompiled_assets
1919
end
2020

2121
def test_find_asset_gets_asset_contents

0 commit comments

Comments
 (0)