<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>load_error_test.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -3,6 +3,7 @@ class AccountsController &lt; ApplicationController
   skip_before_filter :authenticate, :only =&gt; [:login, :index]
   skip_before_filter :fill_last_queries
   skip_before_filter :fill_system_stats
+  skip_before_filter :establish_connection, :only =&gt; :login
   
   def index
   end
@@ -33,7 +34,7 @@ class AccountsController &lt; ApplicationController
       :database =&gt; ''
       )
       ActiveRecord::Base.connection.execute &quot;show databases&quot;
-    rescue Mysql::Error
+    rescue
       flash[:error] = ($!).to_s
       return false
     end</diff>
      <filename>app/controllers/accounts_controller.rb</filename>
    </modified>
    <modified>
      <diff>@@ -21,13 +21,12 @@ class ApplicationController &lt; ActionController::Base
   before_filter :fill_last_tables
   before_filter :fill_system_stats
 
-#  around_filter :rescue_connexion
+  # around_filter :rescue_connexion
 
   protected
 
   def authenticate
     return true if logged_in?
-
     session[:return_to] = request.request_uri
     flash[:error] = 'Please give your credentials'
     redirect_to :controller =&gt; '/accounts', :action =&gt; :login</diff>
      <filename>app/controllers/application.rb</filename>
    </modified>
    <modified>
      <diff>@@ -13,15 +13,15 @@ class Table &lt; Base
   end
   
   def ar_class
-    mod = db_module    
+    mod = db_module
     model_name = name.singularize.camelize
-    c = mod.const_get model_name
-  rescue
+    c = &quot;#{mod}::#{model_name}&quot;.constantize
+  rescue NameError
     c = Class.new ActiveRecord::Base
     c = mod.const_set model_name, c
     c.set_table_name name
   ensure
-   return c
+    return c
   end
   
   def columns
@@ -78,6 +78,9 @@ class Table &lt; Base
     mod = db_camelized.constantize
   rescue NameError
     mod = Module.new
+    def mod.const_missing name = nil
+      raise NameError
+    end
     Object.const_set db_camelized, mod
   ensure
     db_camelized.constantize</diff>
      <filename>app/models/table.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,8 @@
 # Monkey patch to avoid establishing a connection on application startup
 module Rails
   class Initializer
-    def initialize_database ; end
+    alias :initialize_database_original :initialize_database
+    def initialize_database
+    end
   end
 end
\ No newline at end of file</diff>
      <filename>lib/rails_ar_initializer.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,23 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class TablesControllerTest &lt; ActionController::TestCase
+
+  def setup
+    @request.session[:username] = 'root'
+    create_database 'rbdb_test1' do |datab|
+      datab.create_table 'databs' do end
+      datab.create_table 'TABLES' do end
+    end
+  end
+  
+  should 'handle table names matching our file names' do
+    get :show, :id =&gt; 'databs', :datab_id =&gt; 'rbdb_test1'
+    assert_response :success
+  end
   
+  should 'handle the information_schema db' do
+    get :show, :id =&gt; 'TABLES', :datab_id =&gt; 'rbdb_test1'
+    assert_response :success
+  end
     
 end</diff>
      <filename>test/functional/tables_controller_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -9,9 +9,11 @@ class ConnectionsTest &lt; ActionController::IntegrationTest
       :password =&gt; conf[:password]
     valid_user.assert_response :redirect
     valid_user.assert_redirected_to '/databs'
+    valid_user.get '/databs'
+    valid_user.assert_response :success
     fake_user = open_session
     fake_user.post '/accounts/login', :username =&gt; 'phony', :password =&gt; 'so fake'
-    fake_user.assert_response :success
+    fake_user.assert_response :success    
     valid_user.get '/databs'
     valid_user.assert_response :success
   end</diff>
      <filename>test/integration/connections_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -40,11 +40,22 @@ class Test::Unit::TestCase
   # Add more helper methods to be used by all tests here...
   config = YAML.load_file(File.join(Rails.root, 'config', 'database.yml'))[RAILS_ENV]
   ActiveRecord::Base.establish_connection(
-    :adapter  =&gt; &quot;mysql&quot;,
-    :host     =&gt; &quot;localhost&quot;,
-    :username =&gt; config['user'],
-    :password =&gt; config['password'],
-    :database =&gt; config['database']
+  :adapter  =&gt; &quot;mysql&quot;,
+  :host     =&gt; &quot;localhost&quot;,
+  :username =&gt; config['user'],
+  :password =&gt; config['password'],
+  :database =&gt; config['database']
   )
   
+  def create_database datab
+    ActiveRecord::Base.connection.execute &quot;drop database if exists #{datab}&quot;
+    ActiveRecord::Base.connection.create_database datab
+    return unless block_given?
+    ActiveRecord::Base.connection.execute &quot;use #{datab}&quot;
+    yield ActiveRecord::Base.connection
+  end
+
+  # We're not using the fixtures. Connection may be broken so let's skip this
+  def teardown_fixtures ; end
+
 end</diff>
      <filename>test/test_helper.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,14 +1,11 @@
-require 'test_helper'
+require File.dirname(__FILE__) + '/../test_helper'
 
 class DatabTest &lt; ActiveSupport::TestCase
   
-  setup do
-    ActiveRecord::Base.connection.execute &quot;drop database rbdb_test1&quot; rescue nil
-    Datab.create :name =&gt; 'rbdb_test1'
-    ActiveRecord::Base.connection.execute &quot;drop database rbdb_test2&quot; rescue nil
-    Datab.create :name =&gt; 'rbdb_test2'
-    ActiveRecord::Base.connection.execute &quot;drop database rbdb_test3&quot; rescue nil
-    Datab.create :name =&gt; 'rbdb_test3'
+  def setup
+    create_database 'rbdb_test1'
+    create_database 'rbdb_test2'
+    create_database 'rbdb_test3'
     ActiveRecord::Base.connection.execute &quot;use rbdb_test3&quot;
     ActiveRecord::Base.connection.create_table 'table1' do |t|
       t.integer :field1</diff>
      <filename>test/unit/datab_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e6d807f244834720ed1d83ec55d5497245bde460</id>
    </parent>
  </parents>
  <author>
    <name>Ivan Schneider</name>
    <email>isc@massivebraingames.com</email>
  </author>
  <url>http://github.com/redox/rbdb/commit/94076fcc3fe60cbe186b4b340c9ca7d1104c7943</url>
  <id>94076fcc3fe60cbe186b4b340c9ca7d1104c7943</id>
  <committed-date>2008-11-11T11:01:16-08:00</committed-date>
  <authored-date>2008-11-11T11:01:16-08:00</authored-date>
  <message>all the NameError and LoadError snafus in Table.ar_class should be fixed now</message>
  <tree>995211c809057bb8aa4219fcbcffe803ab92d32a</tree>
  <committer>
    <name>Ivan Schneider</name>
    <email>isc@massivebraingames.com</email>
  </committer>
</commit>
