|
a |
|
b/tests/pipelines/ner/test_cim10.py |
|
|
1 |
from edsnlp.core import PipelineProtocol |
|
|
2 |
from edsnlp.utils.examples import parse_example |
|
|
3 |
|
|
|
4 |
examples = [ |
|
|
5 |
"Patient admis pour <ent code=A01>fièvres typhoïde et paratyphoïde</ent>", |
|
|
6 |
"Patient admis pour <ent code=C221>C2.21</ent>", |
|
|
7 |
] |
|
|
8 |
|
|
|
9 |
|
|
|
10 |
def test_cim10(blank_nlp: PipelineProtocol): |
|
|
11 |
blank_nlp.add_pipe("eds.cim10") |
|
|
12 |
|
|
|
13 |
for text, entities in map(parse_example, examples): |
|
|
14 |
doc = blank_nlp(text) |
|
|
15 |
|
|
|
16 |
assert len(doc.ents) == len(entities) |
|
|
17 |
|
|
|
18 |
for ent, entity in zip(doc.ents, entities): |
|
|
19 |
assert ent.text == text[entity.start_char : entity.end_char] |
|
|
20 |
assert ent.kb_id_ == entity.modifiers[0].value |