コード例 #1
0
ファイル: test_ankidirect.py プロジェクト: fenildf/AnkiTools
    def __init__(self, collection):
        if collection is None:
            collection = get_collection_path()

        self.collection_path = next(tempfile._get_candidate_names())
        shutil.copy(src=collection, dst=self.collection_path)
        self.ankidirect = AnkiDirect(anki_database=self.collection_path)
コード例 #2
0
import json

from AnkiTools import AnkiDirect

if __name__ == '__main__':
    with open('payload.json') as f:
        AnkiDirect().add(json.load(f))
コード例 #3
0
ファイル: test_ankidirect.py プロジェクト: fenildf/AnkiTools
from AnkiTools import AnkiDirect
from AnkiTools.tools.path import get_collection_path

test_parameters = PARAMS['test_ankidirect']

if 'CI' in os.environ or os.getenv('ANKI_APP_OPENED', '0') == '1':
    default_collection = Path('tests/input/collection.anki2')
else:
    default_collection = None

collections = [default_collection] + [Path('tests/input').joinpath(col) for col in json.loads(
    os.getenv('ANKI_ADDITIONAL_COLLECTIONS',
              json.dumps(["clean_collection.anki2", "dirty_collection.anki2"])))]
ankidirects = dict()
for collection in collections:
    ankidirects[collection] = AnkiDirect(anki_database=collection)


@pytest.mark.parametrize('collection', collections)
def test_models_dict(collection):
    ankidirect = ankidirects[collection]

    k, v = list(ankidirect.models_dict.items())[0]
    assert k.isdigit()
    assert isinstance(v, dict)


@pytest.mark.parametrize('collection', collections)
def test_decks_dict(collection):
    ankidirect = ankidirects[collection]
コード例 #4
0
ファイル: read_anki.py プロジェクト: dam-ien/AnkiTools
def get_decks():
    with AnkiDirect() as api:
        data = api.decks_dict

    return data
コード例 #5
0
ファイル: read_anki.py プロジェクト: dam-ien/AnkiTools
def get_data():
    with AnkiDirect() as api:
        data = api.data

    return data
コード例 #6
0
ファイル: read_anki.py プロジェクト: dam-ien/AnkiTools
def get_models():
    with AnkiDirect() as api:
        data = api.models_dict

    return data
コード例 #7
0
ファイル: read_anki.py プロジェクト: dam-ien/AnkiTools
def get_cards(limit=10):
    with AnkiDirect() as api:
        data = list(api.cards)[:limit]

    return data
コード例 #8
0
ファイル: read_anki.py プロジェクト: dam-ien/AnkiTools
def get_notes(limit=10):
    with AnkiDirect() as api:
        data = list(api.notes)[:limit]

    return data