aboutsummaryrefslogblamecommitdiffstats
path: root/activestorage/test/service/configurator_test.rb
blob: 3ef9cf9fb65125e8e4f2175ff62044062ae777b2 (plain) (tree)
1
2
3
4
5
6
7
8
9

                             



                                                                        
                                                                                                      
                                                                   
                                     

     





                                                                                                      

                                                               
                                                              


       
# frozen_string_literal: true

require "service/shared_service_tests"

class ActiveStorage::Service::ConfiguratorTest < ActiveSupport::TestCase
  test "builds correct service instance based on service name" do
    service = ActiveStorage::Service::Configurator.build(:foo, foo: { service: "Disk", root: "path" })
    assert_instance_of ActiveStorage::Service::DiskService, service
    assert_equal "path", service.root
  end

  test "builds correct service instance based on lowercase service name" do
    service = ActiveStorage::Service::Configurator.build(:foo, foo: { service: "disk", root: "path" })
    assert_instance_of ActiveStorage::Service::DiskService, service
    assert_equal "path", service.root
  end

  test "raises error when passing non-existent service name" do
    assert_raise RuntimeError do
      ActiveStorage::Service::Configurator.build(:bigfoot, {})
    end
  end
end