db: Commit the database after deleting a Table Row
Fixes: #63 ("The database isn't being committed enough") Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
14c487c295
commit
01a37dbbc1
|
@ -188,6 +188,7 @@ class Table(Gtk.FilterListModel):
|
|||
def delete(self, row: Row) -> bool:
|
||||
"""Delete a Row from the Table."""
|
||||
if row in self and self.do_sql_delete(row).rowcount == 1:
|
||||
self.sql.commit()
|
||||
self.store.remove(row)
|
||||
del self.rows[row.primary_key]
|
||||
return True
|
||||
|
|
|
@ -308,9 +308,12 @@ class TestTableFunctions(tests.util.TestCase):
|
|||
def test_delete(self):
|
||||
"""Test deleting rows."""
|
||||
row = self.table.create(number=1)
|
||||
self.assertTrue(row.delete())
|
||||
self.assertEqual(len(self.table), 0)
|
||||
self.assertDictEqual(self.table.rows, dict())
|
||||
|
||||
with unittest.mock.patch.object(self.sql, "commit") as mock_commit:
|
||||
self.assertTrue(row.delete())
|
||||
self.assertEqual(len(self.table), 0)
|
||||
self.assertDictEqual(self.table.rows, dict())
|
||||
mock_commit.assert_called()
|
||||
|
||||
self.assertFalse(row.delete())
|
||||
|
||||
|
|
Loading…
Reference in New Issue