@@ -667,16 +667,25 @@ def test_strict_mode
667667      assert_match ( /no such column: "?nope"?/ ,  error . message ) 
668668    end 
669669
670+     def  test_load_extension_is_defined_on_expected_platforms 
671+       if  ::RUBY_PLATFORM  =~ /mingw|mswin/  && SQLite3 ::SQLITE_PACKAGED_LIBRARIES 
672+         skip ( "as of sqlite 3.48.0, the autoconf amalgamation does not reliably find dlopen"  \
673+              "on windows when building sqlite from source" ) 
674+       end 
675+       assert_respond_to ( db ,  :load_extension ) 
676+       assert_respond_to ( db ,  :enable_load_extension ) 
677+     end 
678+ 
670679    def  test_load_extension_error_with_nonexistent_path 
671-       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :load_extension  ) 
680+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension  ) 
672681      db . enable_load_extension ( true ) 
673682
674683      assert_raises ( SQLite3 ::Exception )  {  db . load_extension ( "/nonexistent/path" )  } 
675684      assert_raises ( SQLite3 ::Exception )  {  db . load_extension ( Pathname . new ( "nonexistent" ) )  } 
676685    end 
677686
678687    def  test_load_extension_error_with_invalid_argument 
679-       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :load_extension  ) 
688+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension  ) 
680689      db . enable_load_extension ( true ) 
681690
682691      assert_raises ( TypeError )  {  db . load_extension ( 1 )  } 
@@ -686,6 +695,8 @@ def test_load_extension_error_with_invalid_argument
686695    end 
687696
688697    def  test_load_extension_with_an_extension_descriptor 
698+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension ) 
699+ 
689700      mock_database_load_extension_internal ( db ) 
690701
691702      db . load_extension ( Pathname . new ( "/path/to/ext2" ) ) 
@@ -698,7 +709,10 @@ def test_load_extension_with_an_extension_descriptor
698709    end 
699710
700711    def  test_initialize_extensions_with_extensions_calls_enable_load_extension 
712+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension ) 
713+ 
701714      mock_database_load_extension_internal ( db ) 
715+ 
702716      class  << db 
703717        attr_accessor  :enable_load_extension_called 
704718        attr_reader  :enable_load_extension_arg 
@@ -734,6 +748,8 @@ def enable_load_extension(val)
734748    end 
735749
736750    def  test_initialize_extensions_object_is_an_extension_specifier 
751+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension ) 
752+ 
737753      mock_database_load_extension_internal ( db ) 
738754
739755      db . initialize_extensions ( [ Pathname . new ( "/path/to/extension" ) ] ) 
@@ -746,6 +762,8 @@ def test_initialize_extensions_object_is_an_extension_specifier
746762    end 
747763
748764    def  test_initialize_extensions_object_not_an_extension_specifier 
765+       skip ( "extensions are not enabled" )  unless  db . respond_to? ( :enable_load_extension ) 
766+ 
749767      mock_database_load_extension_internal ( db ) 
750768
751769      db . initialize_extensions ( [ "/path/to/extension" ] ) 
0 commit comments