nosetest是Turbogeras 2.0中的默認測試框架。該應用程序有一個初始化數據庫的websetup.py模塊。我使用MySQL我的開發和生產環境和websetup工作正常,但nosetest內存使用SQLite,當它試圖初始化數據庫發送一個錯誤:當發生這種情況,是如何判斷nosetest是否以編程方式運行
TypeError: SQLite Date, Time, and DateTime types only accept Python datetime objects as input.
我檢測in the import fase:
csvreader = csv.reader(open('res/products.csv'), delimiter=",", quotechar="'")
for row in csvreader:
p = model.Product(row[1], row[2], row[3], row[4] + ".jpg")
# Even tried to convert the date to a sqlalchemy type
# need to put a conditional here, when testing I don't care this date
import sqlalchemy
dateadded = sqlalchemy.types.DateTime(row[5])
p.dateAdded = dateadded
p.brand_id = row[6]
p.code = row[3]
ccat = model.DBSession.query(model.Category)\
.filter(model.Category.id==int(row[8]) + 3).one()
p.categories.append(ccat)
p.normalPrice = row[9]
p.specialPrice = row[10]
p.discountPrice = row[11]
model.DBSession.add(p)
如何判斷nosetest運行的時間?我已經嘗試:
if globals().has_key('ModelTest'):
和
if vars().has_key('ModelTest'):
第一個沒有結果和錯誤
這樣做!就在變量賦值之前,我把條件和現在我的鼻子測試再次工作。謝謝 – Juparave 2009-10-02 17:18:18