mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
change deck loading call
This commit is contained in:
parent
8a60ee0794
commit
8cbd3c9f3b
7 changed files with 34 additions and 53 deletions
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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():
|
||||
|
|
|
@ -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'])
|
Loading…
Reference in a new issue