作者fayhong ( )
看板Ruby
標題[問題] ActiveRecord 的 unit test framework 問題
時間Wed Jan 7 17:26:15 2009
環境:
Ruby 1.8.6
Rails 2.2.1
SQLServer 2005 Express
NetBeans for Ruby
狀況:
1. 我gen了一隻 Model: PortalUser
2. 對應到 table name: PortalUsers
3. Model 程式如下:
class PortalUser < ActiveRecord::Base
set_table_name "PortalUsers"
end
4. 在 portal_user_test.rb 中如此寫:
require File.dirname(__FILE__) + '/../test_helper'
class PortalUserTest < ActiveSupport::TestCase
def test_truth
result = PortalUser.find(:all)
end
5. 出現以下狀況
test_truth(PortalUserTest):
ActiveRecord::StatementInvalid: DBI::DatabaseError: Execute
OLE error code:80040E37 in Microsoft SQL Native Client
Invalid object name 'portal_users'.
HRESULT error code:0x80020009
發生例外狀況。: DELETE FROM [portal_users]
6. 問題是,我已經設定了 set_table_name 了,ActiveRecord 還是
會 query 'portal_users',而非設定的 PortalUsers
7. 在 server run 起來時是可以 query 的,就只有 unit test 不能用
請問這問題我能怎麼解決呢?
先謝謝各位了 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.14.164
※ 編輯: fayhong 來自: 118.168.14.164 (01/07 17:26)
※ 編輯: fayhong 來自: 118.168.14.164 (01/07 17:33)
推 godfat:bug report? 01/07 18:49