예제 #1
0
def test_feats_converters():
    feats = "Case=dat,gen|Number=sing"
    feats_dict = {"Case": "dat,gen", "Number": "sing"}

    # simple conversions
    assert Morphology.dict_to_feats(feats_dict) == feats
    assert Morphology.feats_to_dict(feats) == feats_dict

    # roundtrips
    assert Morphology.dict_to_feats(Morphology.feats_to_dict(feats)) == feats
    assert Morphology.feats_to_dict(Morphology.dict_to_feats(feats_dict)) == feats_dict

    # unsorted input is normalized
    unsorted_feats = "Number=sing|Case=gen,dat"
    unsorted_feats_dict = {"Case": "gen,dat", "Number": "sing"}
    assert Morphology.feats_to_dict(unsorted_feats) == feats_dict
    assert Morphology.dict_to_feats(unsorted_feats_dict) == feats
    assert Morphology.dict_to_feats(Morphology.feats_to_dict(unsorted_feats)) == feats
예제 #2
0
 def test_create(self):
     lemmatizer = Lemmatizer({}, {}, {})
     strings = StringStore()
     lemmatizer = Lemmatizer({}, {}, {})
     morphology = Morphology(strings, {}, lemmatizer)
예제 #3
0
def morphology():
    lemmatizer = Lemmatizer(Lookups())
    return Morphology(StringStore(), {}, lemmatizer)
def morphology():
    morphology = Morphology(StringStore())
    morphology.add("Feat1=Val1|Feat2=Val2")
    morphology.add("Feat3=Val3|Feat4=Val4")
    return morphology
예제 #5
0
def test_pickle():
    morphology = Morphology(StringStore(), {}, Lemmatizer({}, {}, {}))

    file_ = io.BytesIO()
    pickle.dump(morphology, file_)
예제 #6
0
def morphology():
    return Morphology(StringStore())
예제 #7
0
def morphology():
    return Morphology(StringStore(), {}, Lemmatizer())