8e213f72dd
Prior to this commit, if `app/javascript/action_cable/index.js` contained a syntax error, `JavascriptPackageTest` would still pass because `system "yarn build"` would simply return `false` and the compiled output would not change. This commit adds `exception: true` to the `system` call so that an error will be raised if `yarn build` fails. Also, since 4a23cb3415eac03d76623112576559a722d1f23d, Active Storage compiles additional `app/assets/javascripts/actioncable.js` and `app/assets/javascripts/actioncable.esm.js` files (with `app/assets/javascripts/action_cable.js` being deprecated). This commit adds assertions for those files as well.
20 lines
522 B
Ruby
20 lines
522 B
Ruby
# frozen_string_literal: true
|
|
|
|
require "test_helper"
|
|
|
|
class JavascriptPackageTest < ActiveSupport::TestCase
|
|
def test_compiled_code_is_in_sync_with_source_code
|
|
compiled_files = %w[
|
|
app/assets/javascripts/actioncable.js
|
|
app/assets/javascripts/actioncable.esm.js
|
|
app/assets/javascripts/action_cable.js
|
|
].map do |file|
|
|
Pathname(file).expand_path("#{__dir__}/..")
|
|
end
|
|
|
|
assert_no_changes -> { compiled_files.map(&:read) } do
|
|
system "yarn build", exception: true
|
|
end
|
|
end
|
|
end
|