tasks/databases/sqlserver.rake in composite_primary_keys-7.0.13 vs tasks/databases/sqlserver.rake in composite_primary_keys-7.0.14
- old
+ new
@@ -1,27 +1,40 @@
-require File.join(PROJECT_ROOT, 'lib', 'composite_primary_keys')
-require File.join(PROJECT_ROOT, 'test', 'connections', 'connection_spec')
-
-namespace :sqlserver do
- desc 'Build the SQL Server test database'
- task :build_database => :load_connection do
- options_str = connection_string
-
- schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions', 'sqlserver.sql')
- sh %( sqsh #{options_str} -i #{schema} )
- end
-
- desc 'Drop the SQL Server test database'
- task :drop_database => :load_connection do
- options_str = connection_string
-
- schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions', 'sqlserver.drop.sql')
- sh %( sqsh #{options_str} -i #{schema} )
- end
-
- desc 'Rebuild the SQL Server test database'
- task :rebuild_database => [:drop_database, :build_database]
-
- task :load_connection do
- require File.join(PROJECT_ROOT, "test", "connections", "native_sqlserver", "connection")
- end
-end
+require File.join(PROJECT_ROOT, 'lib', 'composite_primary_keys')
+require File.join(PROJECT_ROOT, 'test', 'connections', 'connection_spec')
+
+require 'rbconfig'
+if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
+ sql_cmd = "osql"
+else
+ sql_cmd = sqsh
+end
+
+namespace :sqlserver do
+ desc 'Build the SQL Server test database'
+ task :build_database => :load_connection do
+ options_str = connection_string
+
+ schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions',
+ 'sqlserver.sql').gsub(File::SEPARATOR,
+ File::ALT_SEPARATOR ||
+ File::SEPARATOR)
+ sh %( #{sql_cmd} #{options_str} -i #{schema} )
+ end
+
+ desc 'Drop the SQL Server test database'
+ task :drop_database => :load_connection do
+ options_str = connection_string
+
+ schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions',
+ 'sqlserver.drop.sql').gsub(File::SEPARATOR,
+ File::ALT_SEPARATOR ||
+ File::SEPARATOR)
+ sh %( #{sql_cmd} #{options_str} -i #{schema} )
+ end
+
+ desc 'Rebuild the SQL Server test database'
+ task :rebuild_database => [:drop_database, :build_database]
+
+ task :load_connection do
+ require File.join(PROJECT_ROOT, "test", "connections", "native_sqlserver", "connection")
+ end
+end