From 4cfc8ffbd2d3582cd7055a85ff48109da163ffab Mon Sep 17 00:00:00 2001 From: ines Date: Wed, 15 Mar 2017 17:39:54 +0100 Subject: [PATCH] Reformat pickle tests --- spacy/tests/test_pickles.py | 50 +++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 27 deletions(-) diff --git a/spacy/tests/test_pickles.py b/spacy/tests/test_pickles.py index 2e7fc6bf7..41e15884f 100644 --- a/spacy/tests/test_pickles.py +++ b/spacy/tests/test_pickles.py @@ -1,40 +1,36 @@ +# coding: utf-8 from __future__ import unicode_literals -import io import pytest import dill as pickle -from ..strings import StringStore from ..vocab import Vocab from ..attrs import NORM -def test_pickle_string_store(): - sstore = StringStore() - hello = sstore['hello'] - bye = sstore['bye'] - bdata = pickle.dumps(sstore, protocol=-1) - unpickled = pickle.loads(bdata) - assert unpickled['hello'] == hello - assert unpickled['bye'] == bye - assert len(sstore) == len(unpickled) +@pytest.mark.parametrize('text1,text2', [('hello', 'bye')]) +def test_pickle_string_store(stringstore, text1, text2): + store1 = stringstore[text1] + store2 = stringstore[text2] + data = pickle.dumps(stringstore, protocol=-1) + unpickled = pickle.loads(data) + assert unpickled[text1] == store1 + assert unpickled[text2] == store2 + assert len(stringstore) == len(unpickled) @pytest.mark.xfail -def test_pickle_vocab(): +@pytest.mark.parametrize('text1,text2', [('dog', 'cat')]) +def test_pickle_vocab(text1, text2): vocab = Vocab(lex_attr_getters={int(NORM): lambda string: string[:-1]}) - dog = vocab[u'dog'] - cat = vocab[u'cat'] - assert dog.norm_ == 'do' - assert cat.norm_ == 'ca' - - bdata = pickle.dumps(vocab) - unpickled = pickle.loads(bdata) - - assert unpickled[u'dog'].orth == dog.orth - assert unpickled[u'cat'].orth == cat.orth - assert unpickled[u'dog'].norm == dog.norm - assert unpickled[u'cat'].norm == cat.norm - dog_ = unpickled[u'dog'] - cat_ = unpickled[u'cat'] - assert dog_.norm != cat_.norm + lex1 = vocab[text1] + lex2 = vocab[text2] + assert lex1.norm_ == text1[:-1] + assert lex2.norm_ == text2[:-1] + data = pickle.dumps(vocab) + unpickled = pickle.loads(data) + assert unpickled[text1].orth == lex1.orth + assert unpickled[text2].orth == lex2.orth + assert unpickled[text1].norm == lex1.norm + assert unpickled[text2].norm == lex2.norm + assert unpickled[text1].norm != unpickled[text2].norm