mirror of
https://github.com/ankitects/anki.git
synced 2025-09-25 01:06:35 -04:00
make sure revlog is removed on immediate delete
This commit is contained in:
parent
f96a495b53
commit
1dc3a0ad4a
2 changed files with 6 additions and 0 deletions
|
@ -317,6 +317,7 @@ select id from facts where id not in (select distinct fid from cards)""")
|
|||
if self.schemaDirty():
|
||||
# immediate delete?
|
||||
self.db.execute("delete from cards where id in %s" % sids)
|
||||
self.db.execute("delete from revlog where cid in %s" % sids)
|
||||
# remove any dangling facts
|
||||
self._deleteDanglingFacts()
|
||||
else:
|
||||
|
|
|
@ -54,11 +54,16 @@ def test_delete():
|
|||
cid = f.cards()[0].id
|
||||
# when the schema is dirty, deletion should be immediate
|
||||
assert deck.schemaDirty() == True
|
||||
deck.reset()
|
||||
deck.sched.answerCard(deck.sched.getCard(), 2)
|
||||
assert deck.db.scalar("select count() from revlog") == 1
|
||||
deck.deleteCard(cid)
|
||||
assert deck.cardCount() == 0
|
||||
assert deck.factCount() == 0
|
||||
assert deck.db.scalar("select count() from facts") == 0
|
||||
assert deck.db.scalar("select count() from cards") == 0
|
||||
assert deck.db.scalar("select count() from fsums") == 0
|
||||
assert deck.db.scalar("select count() from revlog") == 0
|
||||
# add the fact back
|
||||
deck.addFact(f)
|
||||
assert deck.cardCount() == 1
|
||||
|
|
Loading…
Reference in a new issue