Merge pull request #68 from grn/fix-table-cache
Update the table cache in update_table (fixes #67) Thanks to @grn
This commit is contained in:
commit
9035edceeb
@ -190,7 +190,8 @@ class Database(object):
|
|||||||
self.metadata = MetaData(schema=self.schema)
|
self.metadata = MetaData(schema=self.schema)
|
||||||
self.metadata.bind = self.engine
|
self.metadata.bind = self.engine
|
||||||
self.metadata.reflect(self.engine)
|
self.metadata.reflect(self.engine)
|
||||||
return SQLATable(table_name, self.metadata)
|
self._tables[table_name] = SQLATable(table_name, self.metadata)
|
||||||
|
return self._tables[table_name]
|
||||||
|
|
||||||
def get_table(self, table_name, primary_id='id', primary_type='Integer'):
|
def get_table(self, table_name, primary_id='id', primary_type='Integer'):
|
||||||
"""
|
"""
|
||||||
|
|||||||
@ -121,6 +121,13 @@ class DatabaseTestCase(unittest.TestCase):
|
|||||||
r = self.db.query('SELECT COUNT(*) AS num FROM weather').next()
|
r = self.db.query('SELECT COUNT(*) AS num FROM weather').next()
|
||||||
assert r['num'] == len(TEST_DATA), r
|
assert r['num'] == len(TEST_DATA), r
|
||||||
|
|
||||||
|
def test_table_cache_updates(self):
|
||||||
|
tbl1 = self.db.get_table('people')
|
||||||
|
tbl1.insert(dict(first_name='John', last_name='Smith'))
|
||||||
|
tbl2 = self.db.get_table('people')
|
||||||
|
|
||||||
|
assert list(tbl2.all()) == [(1, 'John', 'Smith')]
|
||||||
|
|
||||||
|
|
||||||
class TableTestCase(unittest.TestCase):
|
class TableTestCase(unittest.TestCase):
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user