change deck loading call

This commit is contained in:
Damien Elmes 2011-02-25 12:29:02 +09:00
parent 8a60ee0794
commit 8cbd3c9f3b
7 changed files with 34 additions and 53 deletions

View file

@ -8,7 +8,7 @@ Anki (libanki)
Open a deck:
deck = anki.DeckStorage.Deck(path)
deck = anki.Deck(path)
Get a card:
@ -55,3 +55,6 @@ except ImportError:
version = "1.2.8"
from anki.deck import DeckStorage
def Deck(*args, **kwargs):
return DeckStorage.Deck(*args, **kwargs)

View file

@ -2,7 +2,7 @@
import nose, os, tempfile
import anki
from anki import DeckStorage
from anki import Deck
from anki.exporting import *
from anki.stdmodels import *
@ -12,7 +12,7 @@ testDir = os.path.dirname(__file__)
def setup1():
global deck
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
deck.currentModel.cardModels[1].active = True
f = deck.newFact()
@ -33,14 +33,14 @@ def test_export_anki():
e.exportInto(newname)
assert deck.modified == oldTime
# connect to new deck
d2 = DeckStorage.Deck(newname, backup=False)
d2 = Deck(newname, backup=False)
assert d2.cardCount == 4
# try again, limited to a tag
newname = unicode(tempfile.mkstemp(prefix="ankitest")[1])
os.unlink(newname)
e.limitTags = ['tag']
e.exportInto(newname)
d2 = DeckStorage.Deck(newname, backup=False)
d2 = Deck(newname, backup=False)
assert d2.cardCount == 2
@nose.with_setup(setup1)

View file

@ -4,7 +4,7 @@ import nose, os, shutil
from tests.shared import assertException
from anki.errors import *
from anki import DeckStorage
from anki import Deck
from anki.importing import anki10, csvfile, mnemosyne10, supermemo_xml, dingsbums
from anki.stdmodels import BasicModel
from anki.facts import Fact
@ -15,7 +15,7 @@ from anki.db import *
testDir = os.path.dirname(__file__)
def test_csv():
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
file = unicode(os.path.join(testDir, "importing/text-2fields.txt"))
i = csvfile.TextImporter(deck, file)
@ -26,7 +26,7 @@ def test_csv():
deck.close()
def test_csv_tags():
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
file = unicode(os.path.join(testDir, "importing/text-tags.txt"))
i = csvfile.TextImporter(deck, file)
@ -37,7 +37,7 @@ def test_csv_tags():
deck.close()
def test_mnemosyne10():
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
file = unicode(os.path.join(testDir, "importing/test.mem"))
i = mnemosyne10.Mnemosyne10Importer(deck, file)
@ -46,7 +46,7 @@ def test_mnemosyne10():
deck.close()
def test_supermemo_xml_01_unicode():
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
file = unicode(os.path.join(testDir, "importing/supermemo1.xml"))
i = supermemo_xml.SupermemoXmlImporter(deck, file)
@ -65,7 +65,7 @@ def test_anki10():
file2_ = unicode(os.path.join(testDir, "importing/test10-2.anki"))
file2 = "/tmp/test10-2.anki"
shutil.copy(file2_, file2)
deck = DeckStorage.Deck()
deck = Deck()
i = anki10.Anki10Importer(deck, file)
i.doImport()
assert i.total == 2
@ -73,15 +73,15 @@ def test_anki10():
deck.close()
# import a deck into itself - 10-2 is the same as test10, but with one
# card answered and another deleted. nothing should be synced to client
deck = DeckStorage.Deck(file, backup=False)
deck = Deck(file, backup=False)
i = anki10.Anki10Importer(deck, file2)
i.doImport()
assert i.total == 0
deck.db.rollback()
def test_anki10_modtime():
deck1 = DeckStorage.Deck()
deck2 = DeckStorage.Deck()
deck1 = Deck()
deck2 = Deck()
client = SyncClient(deck1)
server = SyncServer(deck2)
client.setServer(server)
@ -106,7 +106,7 @@ def test_anki10_modtime():
assert deck2.db.scalar("select count(*) from models") == 2
def test_dingsbums():
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
startNumberOfFacts = deck.factCount
file = unicode(os.path.join(testDir, "importing/dingsbums.xml"))
@ -117,7 +117,7 @@ def test_dingsbums():
def test_updating():
# get the standard csv deck first
deck = DeckStorage.Deck()
deck = Deck()
deck.addModel(BasicModel())
file = unicode(os.path.join(testDir, "importing/text-2fields.txt"))
i = csvfile.TextImporter(deck, file)

View file

@ -4,7 +4,7 @@ import nose, os, tempfile, shutil, time
from tests.shared import assertException
from anki.errors import *
from anki import DeckStorage
from anki import Deck
from anki.db import *
from anki.stdmodels import BasicModel
from anki.sync import SyncClient, SyncServer, HttpSyncServer, HttpSyncServerProxy
@ -27,17 +27,17 @@ server=None
def setup_local(loadDecks=None):
global deck1, deck2, client, server
if loadDecks:
deck1 = DeckStorage.Deck(loadDecks[0], backup=False)
deck2 = DeckStorage.Deck(loadDecks[1], backup=False)
deck1 = Deck(loadDecks[0], backup=False)
deck2 = Deck(loadDecks[1], backup=False)
else:
deck1 = DeckStorage.Deck()
deck1 = Deck()
deck1.addModel(BasicModel())
deck1.currentModel.cardModels[1].active = True
deck1.newCardOrder = 1
f = deck1.newFact()
f['Front'] = u"foo"; f['Back'] = u"bar"; f.tags = u"foo"
deck1.addFact(f)
deck2 = DeckStorage.Deck()
deck2 = Deck()
deck2.addModel(BasicModel())
deck2.currentModel.cardModels[1].active = True
f = deck2.newFact()
@ -181,7 +181,7 @@ def test_localsync_factsandcards():
@nose.with_setup(setup_local, teardown)
def test_localsync_threeway():
# deck1 (client) <-> deck2 (server) <-> deck3 (client)
deck3 = DeckStorage.Deck()
deck3 = Deck()
client2 = SyncClient(deck3)
server2 = SyncServer(deck2)
client2.setServer(server2)

View file

@ -4,7 +4,7 @@ import nose, os, re
from tests.shared import assertException
from anki.errors import *
from anki import DeckStorage
from anki import Deck
from anki.db import *
from anki.models import FieldModel, Model, CardModel
from anki.stdmodels import BasicModel
@ -19,7 +19,7 @@ def getDeck():
import tempfile
(fd, nam) = tempfile.mkstemp(suffix=".anki")
os.unlink(nam)
return DeckStorage.Deck(nam)
return Deck(nam)
## opening/closing
@ -30,7 +30,7 @@ def test_attachNew():
os.unlink(path)
except OSError:
pass
deck = DeckStorage.Deck(path)
deck = Deck(path)
# for attachOld()
newPath = deck.path
deck.save()
@ -39,18 +39,18 @@ def test_attachNew():
del deck
def test_attachOld():
deck = DeckStorage.Deck(newPath, backup=False)
deck = Deck(newPath, backup=False)
assert deck.modified == newModified
deck.close()
def test_attachReadOnly():
# non-writeable dir
assertException(Exception,
lambda: DeckStorage.Deck("/attachroot"))
lambda: Deck("/attachroot"))
# reuse tmp file from before, test non-writeable file
os.chmod(newPath, 0)
assertException(Exception,
lambda: DeckStorage.Deck(newPath))
lambda: Deck(newPath))
os.chmod(newPath, 0666)
os.unlink(newPath)
@ -84,7 +84,7 @@ def test_saveAs():
# new deck should have zero cards
assert newDeck2.cardCount == 0
# but old deck should have reverted the unsaved changes
newDeck = DeckStorage.Deck(path)
newDeck = Deck(path)
assert newDeck.cardCount == 1
newDeck.close()

View file

@ -2,7 +2,7 @@
import tempfile, os, time
import anki.media as m
from anki import DeckStorage
from anki import Deck
from anki.stdmodels import BasicModel
from anki.utils import checksum
@ -10,7 +10,7 @@ def getDeck():
import tempfile
(fd, nam) = tempfile.mkstemp(suffix=".anki")
os.unlink(nam)
return DeckStorage.Deck(nam)
return Deck(nam)
# uniqueness check
def test_unique():

View file

@ -1,22 +0,0 @@
# coding: utf-8
import nose, os
from tests.shared import assertException
from anki.errors import *
from anki.facts import *
from anki import DeckStorage
from anki.utils import *
def test_tags():
return
# card = "one, two"
# fact = "two,three, two"
# cmodel = "four"
# print (card+","+fact+","+cmodel)
# print joinTags(parseTags(card+","+fact+","+cmodel))
# print sorted(canonifyTags(card+","+fact+","+cmodel))
# assert (sorted(canonifyTags(card+","+fact+","+cmodel)) ==
# ['four', 'one', 'three', 'two'])