Source code for sqlobject.tests.test_style

fromsqlobjectimport ForeignKey, SQLObject, StringCol, sqlmeta, styles
fromsqlobject.tests.dbtestimport setupClass
[docs] classAnotherStyle(styles.MixedCaseUnderscoreStyle):
[docs] defpythonAttrToDBColumn(self, attr): if attr.lower().endswith('id'): return 'id' + styles.MixedCaseUnderscoreStyle.\ pythonAttrToDBColumn(self, attr[:-2]) else: return styles.MixedCaseUnderscoreStyle.\ pythonAttrToDBColumn(self, attr)
[docs] classSOStyleTest1(SQLObject): a = StringCol() st2 = ForeignKey('SOStyleTest2')
[docs] classsqlmeta(sqlmeta): style = AnotherStyle()
[docs] classSOStyleTest2(SQLObject): b = StringCol()
[docs] classsqlmeta(sqlmeta): style = AnotherStyle()
[docs] deftest_style(): setupClass([SOStyleTest2, SOStyleTest1]) st1 = SOStyleTest1(a='something', st2=None) st2 = SOStyleTest2(b='whatever') st1.st2 = st2 assert st1.sqlmeta.columns['st2ID'].dbName == 'idst2' assert st1.st2 == st2