diff --git a/lib/jsbundling/tasks.rb b/lib/jsbundling/tasks.rb index 645fb67..417f368 100644 --- a/lib/jsbundling/tasks.rb +++ b/lib/jsbundling/tasks.rb @@ -2,6 +2,8 @@ module Jsbundling module Tasks extend self + attr_writer :build_command + def install_command case tool when :bun then "bun install" @@ -13,6 +15,10 @@ def install_command end def build_command + if @build_command + return @build_command + end + case tool when :bun then "bun run build" when :yarn then "yarn build" diff --git a/test/tasks_test.rb b/test/tasks_test.rb new file mode 100644 index 0000000..a9d2ed5 --- /dev/null +++ b/test/tasks_test.rb @@ -0,0 +1,15 @@ +require "test_helper" +require "jsbundling/tasks" + +class TasksTest < ActiveSupport::TestCase + test "override build_command" do + original_build_command = Jsbundling::Tasks.build_command + Jsbundling::Tasks.build_command = "hello there" + assert_equal("hello there", Jsbundling::Tasks.build_command) + + Jsbundling::Tasks.build_command = nil + assert_equal(original_build_command, Jsbundling::Tasks.build_command) + ensure + Jsbundling::Tasks.build_command = nil + end +end