mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-10-31 16:07:41 +03:00 
			
		
		
		
	Modernise Doc array tests and don't depend on models
This commit is contained in:
		
							parent
							
								
									05447be884
								
							
						
					
					
						commit
						439f396acd
					
				|  | @ -1,38 +1,42 @@ | |||
| # coding: utf-8 | ||||
| from __future__ import unicode_literals | ||||
| 
 | ||||
| from ...attrs import ORTH, SHAPE, POS, DEP | ||||
| from ..util import get_doc | ||||
| 
 | ||||
| import pytest | ||||
| 
 | ||||
| from spacy import attrs | ||||
| 
 | ||||
| 
 | ||||
| def test_attr_of_token(EN): | ||||
|     text = u'An example sentence.' | ||||
|     tokens = EN(text, tag=True, parse=False) | ||||
|     example = EN.vocab[u'example'] | ||||
| def test_array_attr_of_token(en_tokenizer, en_vocab): | ||||
|     text = "An example sentence" | ||||
|     tokens = en_tokenizer(text) | ||||
|     example = tokens.vocab["example"] | ||||
|     assert example.orth != example.shape | ||||
|     feats_array = tokens.to_array((attrs.ORTH, attrs.SHAPE)) | ||||
|     feats_array = tokens.to_array((ORTH, SHAPE)) | ||||
|     assert feats_array[0][0] != feats_array[0][1] | ||||
|     assert feats_array[0][0] != feats_array[0][1] | ||||
| 
 | ||||
| 
 | ||||
| @pytest.mark.models | ||||
| def test_tag(EN): | ||||
|     text = u'A nice sentence.' | ||||
|     tokens = EN(text) | ||||
|     assert tokens[0].tag != tokens[1].tag != tokens[2].tag != tokens[3].tag | ||||
|     feats_array = tokens.to_array((attrs.ORTH, attrs.TAG)) | ||||
|     assert feats_array[0][1] == tokens[0].tag | ||||
|     assert feats_array[1][1] == tokens[1].tag | ||||
|     assert feats_array[2][1] == tokens[2].tag | ||||
|     assert feats_array[3][1] == tokens[3].tag | ||||
| def test_array_tag(en_tokenizer): | ||||
|     text = "A nice sentence." | ||||
|     tags = ['DET', 'ADJ', 'NOUN', 'PUNCT'] | ||||
|     tokens = en_tokenizer(text) | ||||
|     doc = get_doc(tokens.vocab, [t.text for t in tokens], tags=tags) | ||||
|     assert doc[0].pos != doc[1].pos != doc[2].pos != doc[3].pos | ||||
|     feats_array = doc.to_array((ORTH, POS)) | ||||
|     assert feats_array[0][1] == doc[0].pos | ||||
|     assert feats_array[1][1] == doc[1].pos | ||||
|     assert feats_array[2][1] == doc[2].pos | ||||
|     assert feats_array[3][1] == doc[3].pos | ||||
| 
 | ||||
| 
 | ||||
| @pytest.mark.models | ||||
| def test_dep(EN): | ||||
|     text = u'A nice sentence.' | ||||
|     tokens = EN(text) | ||||
|     feats_array = tokens.to_array((attrs.ORTH, attrs.DEP)) | ||||
|     assert feats_array[0][1] == tokens[0].dep | ||||
|     assert feats_array[1][1] == tokens[1].dep | ||||
|     assert feats_array[2][1] == tokens[2].dep | ||||
|     assert feats_array[3][1] == tokens[3].dep | ||||
| def test_array_dep(en_tokenizer): | ||||
|     text = "A nice sentence." | ||||
|     deps = ['det', 'amod', 'ROOT', 'punct'] | ||||
|     tokens = en_tokenizer(text) | ||||
|     doc = get_doc(tokens.vocab, [t.text for t in tokens], deps=deps) | ||||
|     feats_array = doc.to_array((ORTH, DEP)) | ||||
|     assert feats_array[0][1] == doc[0].dep | ||||
|     assert feats_array[1][1] == doc[1].dep | ||||
|     assert feats_array[2][1] == doc[2].dep | ||||
|     assert feats_array[3][1] == doc[3].dep | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user