5876866565
hopefully that's the last of it
51 lines
1.1 KiB
Python
51 lines
1.1 KiB
Python
import os
|
|
import shutil
|
|
import tempfile
|
|
|
|
from anki import Collection as aopen
|
|
|
|
|
|
def assertException(exception, func):
|
|
found = False
|
|
try:
|
|
func()
|
|
except exception:
|
|
found = True
|
|
assert found
|
|
|
|
|
|
# Creating new decks is expensive. Just do it once, and then spin off
|
|
# copies from the master.
|
|
def getEmptyCol():
|
|
if len(getEmptyCol.master) == 0:
|
|
(fd, nam) = tempfile.mkstemp(suffix=".anki2")
|
|
os.close(fd)
|
|
os.unlink(nam)
|
|
col = aopen(nam)
|
|
col.db.close()
|
|
getEmptyCol.master = nam
|
|
(fd, nam) = tempfile.mkstemp(suffix=".anki2")
|
|
shutil.copy(getEmptyCol.master, nam)
|
|
col = aopen(nam)
|
|
return col
|
|
|
|
|
|
getEmptyCol.master = ""
|
|
|
|
# Fallback for when the DB needs options passed in.
|
|
def getEmptyDeckWith(**kwargs):
|
|
(fd, nam) = tempfile.mkstemp(suffix=".anki2")
|
|
os.close(fd)
|
|
os.unlink(nam)
|
|
return aopen(nam, **kwargs)
|
|
|
|
|
|
def getUpgradeDeckPath(name="anki12.anki"):
|
|
src = os.path.join(testDir, "support", name)
|
|
(fd, dst) = tempfile.mkstemp(suffix=".anki2")
|
|
shutil.copy(src, dst)
|
|
return dst
|
|
|
|
|
|
testDir = os.path.dirname(__file__)
|