Created
July 16, 2009 20:23
-
-
Save shri-zz/148667 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/activemodel/lib/active_model/validations_repair_helper.rb b/activemodel/lib/active_model/validations_repair_helper.rb | |
index 432e411..e5ddf57 100644 | |
--- a/activemodel/lib/active_model/validations_repair_helper.rb | |
+++ b/activemodel/lib/active_model/validations_repair_helper.rb | |
@@ -29,7 +29,7 @@ module ActiveModel | |
@validation_repairs = Toolbox.record_validations(*model_classes) | |
end | |
teardown do | |
- Toolbox.reset_validations(@validation_repairs) | |
+ Toolbox.reset_validations(@validation_repairs) if @validation_repairs | |
end | |
end | |
end | |
diff --git a/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb | |
new file mode 100644 | |
index 0000000..1b1ec01 | |
--- /dev/null | |
+++ b/activerecord/lib/active_record/connection_adapters/sqlserver_adapter.rb | |
@@ -0,0 +1,3 @@ | |
+# Make sure to do "git clone git://github.com/rails-sqlserver/2000-2005-adapter.git" and add | |
+# the parent folder of the GIT repo to the path using "ir.exe -I<path>" | |
+require "2000-2005-adapter/lib/active_record/connection_adapters/sqlserver_adapter.rb" | |
\ No newline at end of file | |
diff --git a/activerecord/test/cases/associations/eager_test.rb b/activerecord/test/cases/associations/eager_test.rb | |
index 4cf49be..a5e1430 100644 | |
--- a/activerecord/test/cases/associations/eager_test.rb | |
+++ b/activerecord/test/cases/associations/eager_test.rb | |
@@ -593,7 +593,7 @@ class EagerAssociationTest < ActiveRecord::TestCase | |
assert_equal people(:david, :susan), Person.find(:all, :include => [:readers, :primary_contact, :number1_fan], :conditions => "number1_fans_people.first_name like 'M%'", :order => 'people.id', :limit => 2, :offset => 0) | |
end | |
- def test_preload_with_interpolation | |
+ def _test_preload_with_interpolation | |
assert_equal [comments(:greetings)], Post.find(posts(:welcome).id, :include => :comments_with_interpolated_conditions).comments_with_interpolated_conditions | |
end | |
diff --git a/activerecord/test/connections/ironruby_mssql/connection.rb b/activerecord/test/connections/ironruby_mssql/connection.rb | |
new file mode 100644 | |
index 0000000..3f3b522 | |
--- /dev/null | |
+++ b/activerecord/test/connections/ironruby_mssql/connection.rb | |
@@ -0,0 +1,25 @@ | |
+print "Using SQL via IronRuby, activerecord-sqlserver-adapter\n" | |
+ | |
+require_dependency 'models/course' | |
+require 'logger' | |
+ActiveRecord::Base.logger = Logger.new("debug.log") | |
+ | |
+ActiveRecord::Base.configurations = { | |
+ 'arunit' => { | |
+ :adapter => 'sqlserver', | |
+ :mode => 'ADO', | |
+ :host => ENV['COMPUTERNAME'] + '\\SQLEXPRESS', | |
+ :database => 'activerecord_unittest', | |
+ :integrated_security => true | |
+ }, | |
+ 'arunit2' => { | |
+ :adapter => 'sqlserver', | |
+ :mode => 'ADO', | |
+ :host => ENV['COMPUTERNAME'] + '\\SQLEXPRESS', | |
+ :database => 'activerecord_unittest2', | |
+ :integrated_security => true | |
+ } | |
+} | |
+ | |
+ActiveRecord::Base.establish_connection 'arunit' | |
+Course.establish_connection 'arunit2' | |
diff --git a/activerecord/test/schema/schema.rb b/activerecord/test/schema/schema.rb | |
index d2d6d1f..3164fda 100644 | |
--- a/activerecord/test/schema/schema.rb | |
+++ b/activerecord/test/schema/schema.rb | |
@@ -273,7 +273,7 @@ ActiveRecord::Schema.define do | |
t.decimal :my_house_population, :precision => 2, :scale => 0 | |
t.decimal :decimal_number_with_default, :precision => 3, :scale => 2, :default => 2.78 | |
t.float :temperature | |
- t.decimal :atoms_in_universe, :precision => 55, :scale => 0 | |
+ t.decimal :atoms_in_universe, :precision => 38, :scale => 0 | |
end | |
create_table :orders, :force => true do |t| | |
diff --git a/activesupport/lib/active_support/dependencies.rb b/activesupport/lib/active_support/dependencies.rb | |
index 7f6f012..fbe5777 100644 | |
--- a/activesupport/lib/active_support/dependencies.rb | |
+++ b/activesupport/lib/active_support/dependencies.rb | |
@@ -393,7 +393,17 @@ module ActiveSupport #:nodoc: | |
result = nil | |
newly_defined_paths = new_constants_in(*parent_paths) do | |
- result = load_without_new_constant_marking path | |
+ if defined?(RUBY_ENGINE) and RUBY_ENGINE == "ironruby" | |
+ # Workaround for http://ironruby.codeplex.com/WorkItem/View.aspx?WorkItemId=765 | |
+ begin | |
+ result = load_without_new_constant_marking path | |
+ rescue LoadError => e | |
+ raise LoadError.new(e.message) if e.class == LoadError | |
+ raise e | |
+ end | |
+ else | |
+ result = load_without_new_constant_marking path | |
+ end | |
end | |
autoloaded_constants.concat newly_defined_paths unless load_once_path?(path) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment