diff --git a/spacy/tests/hu/tokenizer/__init__.py b/spacy/tests/hu/tokenizer/__init__.py
index 818b62e48..e69de29bb 100644
--- a/spacy/tests/hu/tokenizer/__init__.py
+++ b/spacy/tests/hu/tokenizer/__init__.py
@@ -1,4 +0,0 @@
-__author__ = 'gyorgyorosz'
-
-if __name__ == "__main__":
- pass
diff --git a/spacy/tests/hu/tokenizer/test_default_token_dots.txt b/spacy/tests/hu/tokenizer/test_default_token_dots.txt
deleted file mode 100644
index 0e9ad3c65..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_dots.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-# TOKEN dots
-
-0. egyszeru szavak
-IN : N. kormányzósági
-IN : székhely.
-OUT: N. kormányzósági
-OUT: székhely.
-
-
-1. szavak pontokkal
-
-1.1 mondatkozi verziok
-1.1.1 pottal kezdodo szavak
-IN : A .hu egy tld.
-OUT: A .hu egy tld.
-1.1.2 pont a szo belsejeben
-IN : Az egy.ketto pelda.
-OUT: Az egy.ketto pelda.
-1.1.3 pont a szo vegen
-IN : A pl. rovidites.
-OUT: A pl. rovidites.
-1.1.4 pontozott szo
-IN : A S.M.A.R.T. szo.
-OUT: A S.M.A.R.T. szo.
-
-1.2 mondatvegi verziok
-1.2.1 pottal kezdodo szavak
-IN : A .hu.
-OUT: A .hu.
-1.2.2 pont a szo belsejeben
-IN : Az egy.ketto.
-OUT: Az egy.ketto.
-1.2.3 pont a szo vegen
-#TODO: cf. Huntoken
-IN : A pl.
-OUT: A pl.
-1.2.4 pontozott szo
-#TODO: cf. Huntoken
-IN : A S.M.A.R.T.
-OUT: A S.M.A.R.T.
-
-
-2. tobb pont
-
-2.1 ketto vagy tobb pont utan uj szo
-IN : Egy..ket.
-OUT: Egy..ket.
-IN : Valami... van.
-OUT: Valami... van.
-IN : Valami ...van...
-OUT: Valami ...van...
-IN : Valami...
-OUT: Valami...
-IN : Valami ...
-OUT: Valami ...
-IN : Valami ... más.
-OUT: Valami ... más.
-
diff --git a/spacy/tests/hu/tokenizer/test_default_token_hyphen.txt b/spacy/tests/hu/tokenizer/test_default_token_hyphen.txt
deleted file mode 100644
index d9fced90f..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_hyphen.txt
+++ /dev/null
@@ -1,82 +0,0 @@
-# TOKEN hyphen
-
--nak, -nek es ehhez hasonlok
-IN : Egy -nak, -jaiért, -magyar, bel- van.
-OUT: Egy -nak, -jaiért, -magyar, bel- van.
-IN : Egy -nak.
-OUT: Egy -nak.
-IN : Egy bel-.
-OUT: Egy bel-.
-IN : Dinnye-domb-.
-OUT: Dinnye-domb-.
-
-kulonvalt '-e'
-IN : Ezen -e elcsatangolt.
-OUT: Ezen -e elcsatangolt.
-
--e levagasa, zarojel nelkul
-IN : Lakik-e
-OUT: Lakik-e
-IN : Lakik-e?
-OUT: Lakik-e?
-IN : Lakik-e.
-OUT: Lakik-e.
-IN : Lakik-e...
-OUT: Lakik-e...
-IN : Lakik-e... van.
-OUT: Lakik-e... van.
-IN : Lakik-e van?
-OUT: Lakik-e van?
-
-# TODO: adapt spacy to handle such brackets
-zarojeles mondatkozi valtozatok
-#IN : (La)kik-e van?
-#OUT: (La)kik-e van?
-#IN : L(a)kik-e van?
-#OUT: L(a)kik-e van?
-#IN : Lak(ik)-e van?
-#OUT: Lak(ik)-e van?
-
-# TODO: adapt spacy to handle such brackets
-zarojeles mondatvegi valtozatok
-#IN : (La)kik-e.
-#OUT: (La)kik-e.
-#IN : L(a)kik-e.
-#OUT: L(a)kik-e.
-#IN : Lak(ik)-e.
-#OUT: Lak(ik)-e.
-
-kontroll
-IN : Lakik-elem van?
-OUT: Lakik-elem van?
-IN : Van lakik-elem.
-OUT: Van lakik-elem.
-IN : A 7-es busz?
-OUT: A 7-es busz?
-IN : A 7-es?
-OUT: A 7-es?
-IN : A 7-es.
-OUT: A 7-es.
-
-problemas eset, megengedjuk # TODO: works erroundously in HunToken, but OK in spacy
-IN : Ez (lakik)-e?
-OUT: Ez (lakik)-e?
-
- TODO: macska-/kutyavilag
- IN : A macska-/kutyavilag van.
- OUT: A macska-/kutyavilag van.
-
-%-, §-
-# TODO: spaCy cannot handle such cases
-# IN : A §-sal.
-# OUT: A §-sal.
-IN : A %-sal.
-OUT: A %-sal.
-
-tobb kotojel
-IN : A CD-ROM-okrol.
-OUT: A CD-ROM-okrol.
-
-
-
-
diff --git a/spacy/tests/hu/tokenizer/test_default_token_it.txt b/spacy/tests/hu/tokenizer/test_default_token_it.txt
deleted file mode 100644
index f5a464547..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_it.txt
+++ /dev/null
@@ -1,233 +0,0 @@
-# TOKEN it
-
-tartomanynevek
-IN : .edu, .hu.
-OUT: .edu, .hu.
-
-url-ek
-IN : red-stars.com.
-OUT: red-stars.com.
-IN : www.valami.com.
-OUT: www.valami.com.
-
-url-ek toldalekolva
-IN : www.valami.com-ról.
-OUT: www.valami.com-ról.
-IN : www.valami.comról.
-OUT: www.valami.comról.
-
-osszetettebb url-ek
-IN : A https://www.valami.com/index.html van.
-OUT: A https://www.valami.com/index.html van.
-IN : A http://142.42.1.1/ van.
-OUT: A http://142.42.1.1/ van.
-IN : A http://142.42.1.1/.
-OUT: A http://142.42.1.1/.
-IN : A http://example.com/.
-OUT: A http://example.com/.
-IN : A http://example.com/ van.
-OUT: A http://example.com/ van.
-IN : A http://foo.com/blah_(wikipedia)#cite-1.
-OUT: A http://foo.com/blah_(wikipedia)#cite-1.
-IN : A http://foo.com/blah_(wikipedia)#cite-1 van.
-OUT: A http://foo.com/blah_(wikipedia)#cite-1 van.
-IN : A http://foo.com/blah_(wikipedia).
-OUT: A http://foo.com/blah_(wikipedia).
-IN : A http://foo.com/blah_(wikipedia) van.
-OUT: A http://foo.com/blah_(wikipedia) van.
-IN : A http://www.example.com/wpstyle/?bar=baz&inga=42&quux.
-OUT: A http://www.example.com/wpstyle/?bar=baz&inga=42&quux.
-IN : A http://www.example.com/wpstyle/?bar=baz&inga=42&quux van.
-OUT: A http://www.example.com/wpstyle/?bar=baz&inga=42&quux van.
-IN : A http://example.com:8080.
-OUT: A http://example.com:8080.
-IN : A http://example.com:8080 van.
-OUT: A http://example.com:8080 van.
-IN : A http://foo.bar/?q=Test%20URL-encoded%20stuff.
-OUT: A http://foo.bar/?q=Test%20URL-encoded%20stuff.
-IN : A http://foo.bar/?q=Test%20URL-encoded%20stuff van.
-OUT: A http://foo.bar/?q=Test%20URL-encoded%20stuff van.
-# url with more '='
-IN : A www.kereso.elte.hu/nev=kiss,jozsef%kar=jog%tagozat=nappali.
-OUT: A www.kereso.elte.hu/nev=kiss,jozsef%kar=jog%tagozat=nappali.
-IN : A www.kereso.elte.hu/nev=kiss,jozsef%kar=jog%tagozat=nappali van.
-OUT: A www.kereso.elte.hu/nev=kiss,jozsef%kar=jog%tagozat=nappali van.
-
-email
-IN : A foo.bar@baz.com van.
-OUT: A foo.bar@baz.com van.
-IN : A foo.bar@baz.com.
-OUT: A foo.bar@baz.com.
-IN : A foo.bar@baz.com-nak van.
-OUT: A foo.bar@baz.com-nak van.
-IN : A foo.bar@baz.com-nak.
-OUT: A foo.bar@baz.com-nak.
-IN : A foo.bar@baz.comnak van.
-OUT: A foo.bar@baz.comnak van.
-IN : A foo.bar@baz.comnak.
-OUT: A foo.bar@baz.comnak.
-IN : A mailto:foo.bar@baz.com van.
-OUT: A mailto:foo.bar@baz.com van.
-IN : A mailto:foo.bar@baz.com.
-OUT: A mailto:foo.bar@baz.com.
-IN : A mailto:foo.bar@baz.com-nak van.
-OUT: A mailto:foo.bar@baz.com-nak van.
-IN : A mailto:foo.bar@baz.com-nak.
-OUT: A mailto:foo.bar@baz.com-nak.
-IN : A mailto:foo.bar@baz.comnak van.
-OUT: A mailto:foo.bar@baz.comnak van.
-IN : A mailto:foo.bar@baz.comnak.
-OUT: A mailto:foo.bar@baz.comnak.
-
-windows halozati szolgaltatas (vagy mi)
-IN : Az ADMIN$ van.
-OUT: Az ADMIN$ van.
-IN : Az ADMIN$.
-OUT: Az ADMIN$.
-IN : Az ADMIN$-nak van.
-OUT: Az ADMIN$-nak van.
-IN : Az ADMIN$-nak.
-OUT: Az ADMIN$-nak.
-
-legfelso tartomanynevek
-IN : A .edu, .hu vannak.
-OUT: A .edu, .hu vannak.
-IN : A .edu, .hu.
-OUT: A .edu, .hu.
-
-slash, backslash
-IN : A / van.
-OUT: A / van.
-IN : A \ van.
-OUT: A \ van.
-
-windows path
-IN : C:, \ es c:\ van.
-OUT: C:, \ es c:\ van.
-IN : A \\test\test$\TEST.xls van.
-OUT: A \\test\test$\TEST.xls van.
-IN : A \\server\share\folder\myfile.txt van.
-OUT: A \\server\share\folder\myfile.txt van.
-IN : A \\server\share\myfile.txt van.
-OUT: A \\server\share\myfile.txt van.
-IN : A \\123.123.123.123\share\folder\myfile.txt van.
-OUT: A \\123.123.123.123\share\folder\myfile.txt van.
-IN : A c:\folder\myfile.txt van.
-OUT: A c:\folder\myfile.txt van.
-IN : A c:\folder\myfile.txt-ben van.
-OUT: A c:\folder\myfile.txt-ben van.
-IN : A c:\folder\myfileWithoutExtension van.
-OUT: A c:\folder\myfileWithoutExtension van.
-IN : A c:\folder\myfile.txt.
-OUT: A c:\folder\myfile.txt.
-IN : A c:\folder\myfile.txt-ben.
-OUT: A c:\folder\myfile.txt-ben.
-
-unix path
-IN : A ./ van.
-OUT: A ./ van.
-IN : A ../ van.
-OUT: A ../ van.
-IN : A ./valami1/valami2/ van.
-OUT: A ./valami1/valami2/ van.
-IN : A /valami/valami.txt van.
-OUT: A /valami/valami.txt van.
-IN : A /valami/valami.txt-ben van.
-OUT: A /valami/valami.txt-ben van.
-IN : A /valami/valami.txt.
-OUT: A /valami/valami.txt.
-IN : A /valami/valami.txt-ben.
-OUT: A /valami/valami.txt-ben.
-
-Huntokenes tesztek vegyesen
-1.
-IN : A C:\DINNYE\MACSKA.JPG van.
-OUT: A C:\DINNYE\MACSKA.JPG van.
-IN : A C:\DINNYE\MACSKA.JPG-ben van.
-OUT: A C:\DINNYE\MACSKA.JPG-ben van.
-IN : A C:\DINNYE\MACSKA.JPG.
-OUT: A C:\DINNYE\MACSKA.JPG.
-IN : A C:\DINNYE\MACSKA.JPG-ben.
-OUT: A C:\DINNYE\MACSKA.JPG-ben.
-2.
-IN : A \\SZERVER\SZOLGALTATAS$ van.
-OUT: A \\SZERVER\SZOLGALTATAS$ van.
-IN : A \\SZERVER\SZOLGALTATAS$-ben van.
-OUT: A \\SZERVER\SZOLGALTATAS$-ben van.
-IN : A \\SZERVER\SZOLGALTATAS$.
-OUT: A \\SZERVER\SZOLGALTATAS$.
-IN : A \\SZERVER\SZOLGALTATAS$-ben.
-OUT: A \\SZERVER\SZOLGALTATAS$-ben.
-3.
-IN : A /etc/.././home/ van.
-OUT: A /etc/.././home/ van.
-IN : A /etc/.././home/-ben van.
-OUT: A /etc/.././home/-ben van.
-IN : A /etc/.././home/.
-OUT: A /etc/.././home/.
-IN : A /etc/.././home/-ben.
-OUT: A /etc/.././home/-ben.
-4.
-IN : A *.doc van.
-OUT: A *.doc van.
-IN : A *.doc-ben van.
-OUT: A *.doc-ben van.
-IN : A *.doc.
-OUT: A *.doc.
-IN : A *.doc-ben.
-OUT: A *.doc-ben.
-5.
-IN : A *.* van.
-OUT: A *.* van.
-IN : A *.*-ben van.
-OUT: A *.*-ben van.
-IN : A *.*.
-OUT: A *.*.
-IN : A *.*-ben.
-OUT: A *.*-ben.
-6.
-IN : A .bmp.zip van.
-OUT: A .bmp.zip van.
-IN : A .bmp.zip-ben van.
-OUT: A .bmp.zip-ben van.
-IN : A .bmp.zip.
-OUT: A .bmp.zip.
-IN : A .bmp.zip-ben.
-OUT: A .bmp.zip-ben.
-
-
-fajlnevek
-IN : A teszt.txt van.
-OUT: A teszt.txt van.
-IN : A teszt.txt-ben van.
-OUT: A teszt.txt-ben van.
-IN : A teszt.txt.
-OUT: A teszt.txt.
-IN : A teszt.txt-ben.
-OUT: A teszt.txt-ben.
-IN : A .txt van.
-OUT: A .txt van.
-
-
- MINTA
- IN : A van.
- OUT: A van.
- IN : A -ben van.
- OUT: A -ben van.
- IN : A .
- OUT: A .
- IN : A -ben.
- OUT: A -ben.
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spacy/tests/hu/tokenizer/test_default_token_misc.txt b/spacy/tests/hu/tokenizer/test_default_token_misc.txt
deleted file mode 100644
index 3c876148f..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_misc.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-# TOKEN misc
-
- TODO: html entities
- IN : Molière-rol van.
- OUT: Molière-rol van.
-
-
-&-t tartalmazo nagybatus szavak
-IN : AT&T van.
-OUT: AT&T van.
-
-
- zarojeles mondatkozi valtozatok
- IN : (La)kik-e van?
- OUT: (La)kik-e van?
- IN : L(a)kik-e van?
- OUT: L(a)kik-e van?
- IN : Lak(ik)-e van?
- OUT: Lak(ik)-e van?
-
-
-
diff --git a/spacy/tests/hu/tokenizer/test_default_token_numbers.txt b/spacy/tests/hu/tokenizer/test_default_token_numbers.txt
deleted file mode 100644
index 58102d676..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_numbers.txt
+++ /dev/null
@@ -1,613 +0,0 @@
-# TOKEN numbers
-
-szam es betu
-IN : A 2b van.
-OUT: A 2b van.
-IN : A 2b-ben van.
-OUT: A 2b-ben van.
-IN : A 2b.
-OUT: A 2b.
-IN : A 2b-ben.
-OUT: A 2b-ben.
-IN : A 3.b van.
-OUT: A 3.b van.
-IN : A 3.b-ben van.
-OUT: A 3.b-ben van.
-IN : A 3.b.
-OUT: A 3.b.
-IN : A 3.b-ben.
-OUT: A 3.b-ben.
-
-IN : A 1:20:36.7 van.
-OUT: A 1:20:36.7 van.
-IN : A 1:20:36.7-ben van.
-OUT: A 1:20:36.7-ben van.
-# TODO: not supported by spacy
-# IN : A 1:20:36.7.
-# OUT: A 1:20:36.7.
-IN : A 1:20:36.7-ben.
-OUT: A 1:20:36.7-ben.
-
-IN : A 1:35 van.
-OUT: A 1:35 van.
-IN : A 1:35-ben van.
-OUT: A 1:35-ben van.
-# TODO: not supported by spacy
-# IN : A 1:35.
-# OUT: A 1:35.
-IN : A 1:35-ben.
-OUT: A 1:35-ben.
-
-IN : A 1.35 van.
-OUT: A 1.35 van.
-IN : A 1.35-ben van.
-OUT: A 1.35-ben van.
-# TODO: not supported by spacy
-# IN : A 1.35.
-# OUT: A 1.35.
-IN : A 1.35-ben.
-OUT: A 1.35-ben.
-
-IN : A 4:01,95 van.
-OUT: A 4:01,95 van.
-IN : A 4:01,95-ben van.
-OUT: A 4:01,95-ben van.
-# IN : A 4:01,95.
-# OUT: A 4:01,95.
-IN : A 4:01,95-ben.
-OUT: A 4:01,95-ben.
-
-DASH
-hyphen minus
-IN : A 10--12 van.
-OUT: A 10--12 van.
-IN : A 10--12-ben van.
-OUT: A 10--12-ben van.
-# IN : A 10--12.
-# OUT: A 10--12.
-IN : A 10--12-ben.
-OUT: A 10--12-ben.
-hyphen
-IN : A 10‐12 van.
-OUT: A 10‐12 van.
-IN : A 10‐12-ben van.
-OUT: A 10‐12-ben van.
-# IN : A 10‐12.
-# OUT: A 10‐12.
-IN : A 10‐12-ben.
-OUT: A 10‐12-ben.
-non-breaking hyphen
-IN : A 10‑12 van.
-OUT: A 10‑12 van.
-IN : A 10‑12-ben van.
-OUT: A 10‑12-ben van.
-# IN : A 10‑12.
-# OUT: A 10‑12.
-IN : A 10‑12-ben.
-OUT: A 10‑12-ben.
-figure dash
-IN : A 10‒12 van.
-OUT: A 10‒12 van.
-IN : A 10‒12-ben van.
-OUT: A 10‒12-ben van.
-# IN : A 10‒12.
-# OUT: A 10‒12.
-IN : A 10‒12-ben.
-OUT: A 10‒12-ben.
-en dash
-IN : A 10–12 van.
-OUT: A 10–12 van.
-IN : A 10–12-ben van.
-OUT: A 10–12-ben van.
-# IN : A 10–12.
-# OUT: A 10–12.
-IN : A 10–12-ben.
-OUT: A 10–12-ben.
-em dash
-IN : A 10—12 van.
-OUT: A 10—12 van.
-IN : A 10—12-ben van.
-OUT: A 10—12-ben van.
-# IN : A 10—12.
-# OUT: A 10—12.
-IN : A 10—12-ben.
-OUT: A 10—12-ben.
-horizontal bar
-IN : A 10―12 van.
-OUT: A 10―12 van.
-IN : A 10―12-ben van.
-OUT: A 10―12-ben van.
-# IN : A 10―12.
-# OUT: A 10―12.
-IN : A 10―12-ben.
-OUT: A 10―12-ben.
-
-tagolt szamok
-IN : A -23,12 van.
-OUT: A -23,12 van.
-IN : A -23,12-ben van.
-OUT: A -23,12-ben van.
-# IN : A -23,12.
-# OUT: A -23,12.
-IN : A -23,12-ben.
-OUT: A -23,12-ben.
-
-#TODO: not supported transformations in spaCy
-# IN : A +12 500 van.
-# OUT: A +12 500 van.
-# IN : A +12 500-ben van.
-# OUT: A +12 500-ben van.
-# IN : A +12 500.
-# OUT: A +12 500.
-# IN : A +12 500-ben.
-# OUT: A +12 500-ben.
-
-# IN : A +12 500,99 van.
-# OUT: A +12 500,99 van.
-# IN : A +12 500,99-ben van.
-# OUT: A +12 500,99-ben van.
-# IN : A +12 500,99.
-# OUT: A +12 500,99.
-# IN : A +12 500,99-ben.
-# OUT: A +12 500,99-ben.
-
-# IN : A +12.500.000 van.
-# OUT: A +12.500.000 van.
-# IN : A +12.500.000-ben van.
-# OUT: A +12.500.000-ben van.
-# IN : A +12.500.000.
-# OUT: A +12.500.000.
-# IN : A +12.500.000-ben.
-# OUT: A +12.500.000-ben.
-
-A muveletek (+, -, *, /) jelentette kihivasok:
-IN : A 2+3 van.
-OUT: A 2+3 van.
-# IN : A 2+3.
-# OUT: A 2+3.
-IN : A 2 +3 van.
-OUT: A 2 +3 van.
-# IN : A 2 +3.
-# OUT: A 2 +3.
-IN : A 2+ 3 van.
-OUT: A 2+ 3 van.
-# IN : A 2+ 3.
-# OUT: A 2+ 3.
-IN : A 2 + 3 van.
-OUT: A 2 + 3 van.
-# IN : A 2 + 3.
-# OUT: A 2 + 3.
-
- IN : A 2-3 van.
- OUT: A 2-3 van.
-# IN : A 2-3.
-# OUT: A 2-3.
- IN : A 2 -3 van.
- OUT: A 2 -3 van.
-# IN : A 2 -3.
-# OUT: A 2 -3.
- IN : A 2- 3 van.
- OUT: A 2- 3 van.
-# IN : A 2- 3.
-# OUT: A 2- 3.
- IN : A 2 - 3 van.
- OUT: A 2 - 3 van.
-# IN : A 2 - 3.
-# OUT: A 2 - 3.
-
-IN : A 2*3 van.
-OUT: A 2*3 van.
-# IN : A 2*3.
-# OUT: A 2*3.
-IN : A 2 *3 van.
-OUT: A 2 *3 van.
-# IN : A 2 *3.
-# OUT: A 2 *3.
-IN : A 2* 3 van.
-OUT: A 2* 3 van.
-# IN : A 2* 3.
-# OUT: A 2* 3.
-IN : A 2 * 3 van.
-OUT: A 2 * 3 van.
-# IN : A 2 * 3.
-# OUT: A 2 * 3.
-
- IN : A 2/3 van.
- OUT: A 2/3 van.
-# IN : A 2/3.
-# OUT: A 2/3.
- IN : A 2 /3 van.
- OUT: A 2 /3 van.
-# IN : A 2 /3.
-# OUT: A 2 /3.
- IN : A 2/ 3 van.
- OUT: A 2/ 3 van.
- IN : A 2/ 3.
- OUT: A 2/ 3.
- IN : A 2 / 3 van.
- OUT: A 2 / 3 van.
- IN : A 2 / 3.
- OUT: A 2 / 3.
-
-IN : A C++ van.
-OUT: A C++ van.
-IN : A C++-ben van.
-OUT: A C++-ben van.
-IN : A C++.
-OUT: A C++.
-IN : A C++-ben.
-OUT: A C++-ben.
-
-
-
-datumok
-IN : A 2003. I. 06. van.
-OUT: A 2003. I. 06. van.
-IN : A 2003. I. 06-ben van.
-OUT: A 2003. I. 06-ben van.
-IN : A 2003. I. 06.
-OUT: A 2003. I. 06.
-IN : A 2003. I. 06-ben.
-OUT: A 2003. I. 06-ben.
-
-IN : A 2003. 01. 06. van.
-OUT: A 2003. 01. 06. van.
-IN : A 2003. 01. 06-ben van.
-OUT: A 2003. 01. 06-ben van.
-IN : A 2003. 01. 06.
-OUT: A 2003. 01. 06.
-IN : A 2003. 01. 06-ben.
-OUT: A 2003. 01. 06-ben.
-
-IN : A IV. 12. van.
-OUT: A IV. 12. van.
-IN : A IV. 12-ben van.
-OUT: A IV. 12-ben van.
-IN : A IV. 12.
-OUT: A IV. 12.
-IN : A IV. 12-ben.
-OUT: A IV. 12-ben.
-
-IN : A 2003.01.06. van.
-OUT: A 2003.01.06. van.
-IN : A 2003.01.06-ben van.
-OUT: A 2003.01.06-ben van.
-IN : A 2003.01.06.
-OUT: A 2003.01.06.
-IN : A 2003.01.06-ben.
-OUT: A 2003.01.06-ben.
-
-# TODO: cannot implement in spacy
-# IN : A 2003/01/06 van.
-# OUT: A 2003/01/06 van.
-# IN : A 2003/01/06-ben van.
-# OUT: A 2003/01/06-ben van.
-# IN : A 2003/01/06.
-# OUT: A 2003/01/06.
-# IN : A 2003/01/06-ben.
-# OUT: A 2003/01/06-ben.
-
-IN : A IV.12. van.
-OUT: A IV.12. van.
-IN : A IV.12-ben van.
-OUT: A IV.12-ben van.
-IN : A IV.12.
-OUT: A IV.12.
-IN : A IV.12-ben.
-OUT: A IV.12-ben.
-
-fejezetazonosito
-IN : A 1.1.2. van.
-OUT: A 1.1.2. van.
-IN : A 1.1.2-ben van.
-OUT: A 1.1.2-ben van.
-IN : A 1.1.2.
-OUT: A 1.1.2.
-IN : A 1.1.2-ben.
-OUT: A 1.1.2-ben.
-
-# TODO cannot handle "/" in multiple ways in spacy
-egyeb pontot tartalmazo szamok
-# IN : A 123.45/67. van.
-# OUT: A 123.45/67. van.
-# IN : A 123.45/67-ben van.
-# OUT: A 123.45/67-ben van.
-# IN : A 123.45/67.
-# OUT: A 123.45/67.
-# IN : A 123.45/67-ben.
-# OUT: A 123.45/67-ben.
-
-IN : A 1,5--2,5 van.
-OUT: A 1,5--2,5 van.
-IN : A 1,5--2,5-ben van.
-OUT: A 1,5--2,5-ben van.
-# IN : A 1,5--2,5.
-# OUT: A 1,5--2,5.
-IN : A 1,5--2,5-ben.
-OUT: A 1,5--2,5-ben.
-
-tizedestortek vesszovel
-IN : A 3,14 van.
-OUT: A 3,14 van.
-IN : A 3,14-ben van.
-OUT: A 3,14-ben van.
-# IN : A 3,14.
-# OUT: A 3,14.
-IN : A 3,14-ben.
-OUT: A 3,14-ben.
-
-tizedestortek ponttal
-IN : A 3.14 van.
-OUT: A 3.14 van.
-IN : A 3.14-ben van.
-OUT: A 3.14-ben van.
-# IN : A 3.14.
-# sOUT: A 3.14.
-IN : A 3.14-ben.
-OUT: A 3.14-ben.
-
-sorszamnevek
-IN : A 15. van.
-OUT: A 15. van.
-IN : A 15-ben van.
-OUT: A 15-ben van.
-# IN : A 15.
-# OUT: A 15.
-IN : A 15-ben.
-OUT: A 15-ben.
-IN : A 15.-ben van.
-OUT: A 15.-ben van.
-IN : A 15.-ben.
-OUT: A 15.-ben.
-
-IN : A 2002--2003. van.
-OUT: A 2002--2003. van.
-IN : A 2002--2003-ben van.
-OUT: A 2002--2003-ben van.
-# IN : A 2002--2003.
-# OUT: A 2002--2003.
-IN : A 2002--2003-ben.
-OUT: A 2002--2003-ben.
-
-%-ot tartalmazo szamok
-IN : A -0,99% van.
-OUT: A -0,99% van.
-IN : A -0,99%-ben van.
-OUT: A -0,99%-ben van.
-IN : A -0,99%.
-OUT: A -0,99%.
-IN : A -0,99%-ben.
-OUT: A -0,99%-ben.
-
-IN : A 10--20% van.
-OUT: A 10--20% van.
-IN : A 10--20%-ben van.
-OUT: A 10--20%-ben van.
-IN : A 10--20%.
-OUT: A 10--20%.
-IN : A 10--20%-ben.
-OUT: A 10--20%-ben.
-
-§-t tartalmazo szamok
-IN : A 99§ van.
-OUT: A 99§ van.
-IN : A 99§-ben van.
-OUT: A 99§-ben van.
-# IN : A 99§.
-# OUT: A 99§.
-IN : A 99§-ben.
-OUT: A 99§-ben.
-
-IN : A 10--20§ van.
-OUT: A 10--20§ van.
-IN : A 10--20§-ben van.
-OUT: A 10--20§-ben van.
-# IN : A 10--20§.
-# OUT: A 10--20§.
-IN : A 10--20§-ben.
-OUT: A 10--20§-ben.
-
-°-t tartalmazo szamok
-IN : A 99° van.
-OUT: A 99° van.
-IN : A 99°-ben van.
-OUT: A 99°-ben van.
-# IN : A 99°.
-# OUT: A 99°.
-IN : A 99°-ben.
-OUT: A 99°-ben.
-
-IN : A 10--20° van.
-OUT: A 10--20° van.
-IN : A 10--20°-ben van.
-OUT: A 10--20°-ben van.
-# IN : A 10--20°.
-# OUT: A 10--20°.
-IN : A 10--20°-ben.
-OUT: A 10--20°-ben.
-
-(ez nem szam, de ide jon)
-IN : A °C van.
-OUT: A °C van.
-IN : A °C-ben van.
-OUT: A °C-ben van.
-IN : A °C.
-OUT: A °C.
-IN : A °C-ben.
-OUT: A °C-ben.
-
-IN : A 100°C van.
-OUT: A 100°C van.
-IN : A 100°C-ben van.
-OUT: A 100°C-ben van.
-IN : A 100°C.
-OUT: A 100°C.
-IN : A 100°C-ben.
-OUT: A 100°C-ben.
-
-euroz, dollaz, yeniz
-# IN : A $1,000 van.
-# OUT: A $1,000 van.
-# IN : A $1,000-ben van.
-# OUT: A $1,000-ben van.
-# IN : A $1,000.
-# OUT: A $1,000.
-# IN : A $1,000-ben.
-# OUT: A $1,000-ben.
-
-# IN : A €1,000 van.
-# OUT: A €1,000 van.
-I# N : A €1,000-ben van.
-# OUT: A €1,000-ben van.
-# IN : A €1,000.
-# OUT: A €1,000.
-# IN : A €1,000-ben.
-# OUT: A €1,000-ben.
-
-# IN : A ¥1,000 van.
-# OUT: A ¥1,000 van.
-# IN : A ¥1,000-ben van.
-# OUT: A ¥1,000-ben van.
-# IN : A ¥1,000.
-# OUT: A ¥1,000.
-# IN : A ¥1,000-ben.
-# OUT: A ¥1,000-ben.
-
-# IN : A £1,000 van.
-# OUT: A £1,000 van.
-# IN : A £1,000-ben van.
-# OUT: A £1,000-ben van.
-# IN : A £1,000.
-# OUT: A £1,000.
-# IN : A £1,000-ben.
-# OUT: A £1,000-ben.
-
-#aranyok
-#IN : A 1645kJ/1000g van.
-#OUT: A 1645kJ/1000g van.
-#IN : A 1645kJ/1000g-ben van.
-#OUT: A 1645kJ/1000g-ben van.
-#IN : A 1645kJ/1000g.
-#OUT: A 1645kJ/1000g.
-#IN : A 1645kJ/1000g-ben.
-#OUT: A 1645kJ/1000g-ben.
-
-#IN : A 1645 kJ/1000g van.
-#OUT: A 1645 kJ/1000g van.
-#IN : A 1645 kJ/1000g-ben van.
-#OUT: A 1645 kJ/1000g-ben van.
-#IN : A 1645 kJ/1000g.
-#OUT: A 1645 kJ/1000g.
-#IN : A 1645 kJ/1000g-ben.
-#OUT: A 1645 kJ/1000g-ben.
-
-meretek
-IN : A 800x600 van.
-OUT: A 800x600 van.
-IN : A 800x600-ben van.
-OUT: A 800x600-ben van.
-#IN : A 800x600.
-#OUT: A 800x600.
-IN : A 800x600-ben.
-OUT: A 800x600-ben.
-
-IN : A 1x2x3x4 van.
-OUT: A 1x2x3x4 van.
-IN : A 1x2x3x4-ben van.
-OUT: A 1x2x3x4-ben van.
-#IN : A 1x2x3x4.
-#OUT: A 1x2x3x4.
-IN : A 1x2x3x4-ben.
-OUT: A 1x2x3x4-ben.
-
-tortszamok
-#IN : A 5/4 van.
-#OUT: A 5/4 van.
-#IN : A 5/4-ben van.
-#OUT: A 5/4-ben van.
-#IN : A 5/4.
-#OUT: A 5/4.
-#IN : A 5/4-ben.
-#OUT: A 5/4-ben.
-
-#IN : A 5/4. van.
-#OUT: A 5/4. van.
-#IN : A 5/4.-ben van.
-#OUT: A 5/4.-ben van.
-#IN : A 5/4.-ben.
-#OUT: A 5/4.-ben.
-
-egyeb szamok perjellel
-IN : A 5/J van.
-OUT: A 5/J van.
-IN : A 5/J-ben van.
-OUT: A 5/J-ben van.
-#IN : A 5/J.
-#OUT: A 5/J.
-IN : A 5/J-ben.
-OUT: A 5/J-ben.
-
-IN : A 5/J. van.
-OUT: A 5/J. van.
-IN : A 5/J.-ben van.
-OUT: A 5/J.-ben van.
-IN : A 5/J.-ben.
-OUT: A 5/J.-ben.
-
-romai szamok perjellel
-IN : A III/1 van.
-OUT: A III/1 van.
-IN : A III/1-ben van.
-OUT: A III/1-ben van.
-#IN : A III/1.
-#OUT: A III/1.
-IN : A III/1-ben.
-OUT: A III/1-ben.
-
-IN : A III/1. van.
-OUT: A III/1. van.
-IN : A III/1.-ben van.
-OUT: A III/1.-ben van.
-IN : A III/1.-ben.
-OUT: A III/1.-ben.
-
-IN : A III/c van.
-OUT: A III/c van.
-IN : A III/c-ben van.
-OUT: A III/c-ben van.
-IN : A III/c.
-OUT: A III/c.
-IN : A III/c-ben.
-OUT: A III/c-ben.
-
-egyeb azonositok
-IN : A TU–154 van.
-OUT: A TU–154 van.
-IN : A TU–154-ben van.
-OUT: A TU–154-ben van.
-#IN : A TU–154.
-#OUT: A TU–154.
-IN : A TU–154-ben.
-OUT: A TU–154-ben.
-
-szamok es nagybetuk legalabb ket perjellel
-#IN : A BDE/2000/01/0983/0010 van.
-#OUT: A BDE/2000/01/0983/0010 van.
-#IN : A BDE/2000/01/0983/0010-ben van.
-#OUT: A BDE/2000/01/0983/0010-ben van.
-#IN : A BDE/2000/01/0983/0010.
-#OUT: A BDE/2000/01/0983/0010.
-#IN : A BDE/2000/01/0983/0010-ben.
-#OUT: A BDE/2000/01/0983/0010-ben.
-
-
- MINTA
- IN : A van.
- OUT: A van.
- IN : A -ben van.
- OUT: A -ben van.
- IN : A .
- OUT: A .
- IN : A -ben.
- OUT: A -ben.
-
diff --git a/spacy/tests/hu/tokenizer/test_default_token_quote.txt b/spacy/tests/hu/tokenizer/test_default_token_quote.txt
deleted file mode 100644
index c334e5246..000000000
--- a/spacy/tests/hu/tokenizer/test_default_token_quote.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-# TOKEN quote
-
-mondatban
-IN : Az "Ime, hat"-ban irja.
-OUT: Az "Ime, hat"-ban irja.
-
-mondat elejen
-IN : "Ime, hat"-ban irja.
-OUT: "Ime, hat"-ban irja.
-
-mondat vegen
-IN : Az "Ime, hat".
-OUT: Az "Ime, hat".
-
-magaban
-IN : Egy 24"-os monitor.
-OUT: Egy 24"-os monitor.
-
-aposztrof
-IN : A don't van.
-OUT: A don't van.
-
diff --git a/spacy/tests/hu/tokenizer/test_tokenizer.py b/spacy/tests/hu/tokenizer/test_tokenizer.py
index 0d4689226..fb600aa11 100644
--- a/spacy/tests/hu/tokenizer/test_tokenizer.py
+++ b/spacy/tests/hu/tokenizer/test_tokenizer.py
@@ -1,68 +1,216 @@
-import os
-import re
-
import pytest
from spacy.hu import Hungarian
-_MODULE_PATH = os.path.dirname(__file__)
+_DEFAULT_TESTS = [('N. kormányzósági\nszékhely.', ['N.', 'kormányzósági', 'székhely', '.']),
+ ('A .hu egy tld.', ['A', '.hu', 'egy', 'tld', '.']),
+ ('Az egy.ketto pelda.', ['Az', 'egy.ketto', 'pelda', '.']),
+ ('A pl. rovidites.', ['A', 'pl.', 'rovidites', '.']),
+ ('A S.M.A.R.T. szo.', ['A', 'S.M.A.R.T.', 'szo', '.']),
+ ('A .hu.', ['A', '.hu', '.']),
+ ('Az egy.ketto.', ['Az', 'egy.ketto', '.']),
+ ('A pl.', ['A', 'pl.']),
+ ('A S.M.A.R.T.', ['A', 'S.M.A.R.T.']),
+ ('Egy..ket.', ['Egy', '..', 'ket', '.']),
+ ('Valami... van.', ['Valami', '...', 'van', '.']),
+ ('Valami ...van...', ['Valami', '...', 'van', '...']),
+ ('Valami...', ['Valami', '...']),
+ ('Valami ...', ['Valami', '...']),
+ ('Valami ... más.', ['Valami', '...', 'más', '.'])]
+_HYPHEN_TESTS = [
+ ('Egy -nak, -jaiért, -magyar, bel- van.', ['Egy', '-nak', ',', '-jaiért', ',', '-magyar', ',', 'bel-', 'van', '.']),
+ ('Egy -nak.', ['Egy', '-nak', '.']),
+ ('Egy bel-.', ['Egy', 'bel-', '.']),
+ ('Dinnye-domb-.', ['Dinnye-domb-', '.']),
+ ('Ezen -e elcsatangolt.', ['Ezen', '-e', 'elcsatangolt', '.']),
+ ('Lakik-e', ['Lakik', '-e']),
+ ('Lakik-e?', ['Lakik', '-e', '?']),
+ ('Lakik-e.', ['Lakik', '-e', '.']),
+ ('Lakik-e...', ['Lakik', '-e', '...']),
+ ('Lakik-e... van.', ['Lakik', '-e', '...', 'van', '.']),
+ ('Lakik-e van?', ['Lakik', '-e', 'van', '?']),
+ ('Lakik-elem van?', ['Lakik-elem', 'van', '?']),
+ ('Van lakik-elem.', ['Van', 'lakik-elem', '.']),
+ ('A 7-es busz?', ['A', '7-es', 'busz', '?']),
+ ('A 7-es?', ['A', '7-es', '?']),
+ ('A 7-es.', ['A', '7-es', '.']),
+ ('Ez (lakik)-e?', ['Ez', '(', 'lakik', ')', '-e', '?']),
+ ('A %-sal.', ['A', '%-sal', '.']),
+ ('A CD-ROM-okrol.', ['A', 'CD-ROM-okrol', '.'])]
-class TokenizerTestCase(object):
- INPUT_PREFIX = "IN :"
- OUTPUT_PREFIX = "OUT:"
- WORD_PATTERN = re.compile(r"<([wc])>([^<>]+)\1>")
+_NUMBER_TESTS = [('A 2b van.', ['A', '2b', 'van', '.']),
+ ('A 2b-ben van.', ['A', '2b-ben', 'van', '.']),
+ ('A 2b.', ['A', '2b', '.']),
+ ('A 2b-ben.', ['A', '2b-ben', '.']),
+ ('A 3.b van.', ['A', '3.b', 'van', '.']),
+ ('A 3.b-ben van.', ['A', '3.b-ben', 'van', '.']),
+ ('A 3.b.', ['A', '3.b', '.']),
+ ('A 3.b-ben.', ['A', '3.b-ben', '.']),
+ ('A 1:20:36.7 van.', ['A', '1:20:36.7', 'van', '.']),
+ ('A 1:20:36.7-ben van.', ['A', '1:20:36.7-ben', 'van', '.']),
+ ('A 1:20:36.7-ben.', ['A', '1:20:36.7-ben', '.']),
+ ('A 1:35 van.', ['A', '1:35', 'van', '.']),
+ ('A 1:35-ben van.', ['A', '1:35-ben', 'van', '.']),
+ ('A 1:35-ben.', ['A', '1:35-ben', '.']),
+ ('A 1.35 van.', ['A', '1.35', 'van', '.']),
+ ('A 1.35-ben van.', ['A', '1.35-ben', 'van', '.']),
+ ('A 1.35-ben.', ['A', '1.35-ben', '.']),
+ ('A 4:01,95 van.', ['A', '4:01,95', 'van', '.']),
+ ('A 4:01,95-ben van.', ['A', '4:01,95-ben', 'van', '.']),
+ ('A 4:01,95-ben.', ['A', '4:01,95-ben', '.']),
+ ('A 10--12 van.', ['A', '10--12', 'van', '.']),
+ ('A 10--12-ben van.', ['A', '10--12-ben', 'van', '.']),
+ ('A 10--12-ben.', ['A', '10--12-ben', '.']),
+ ('A 10‐12 van.', ['A', '10‐12', 'van', '.']),
+ ('A 10‐12-ben van.', ['A', '10‐12-ben', 'van', '.']),
+ ('A 10‐12-ben.', ['A', '10‐12-ben', '.']),
+ ('A 10‑12 van.', ['A', '10‑12', 'van', '.']),
+ ('A 10‑12-ben van.', ['A', '10‑12-ben', 'van', '.']),
+ ('A 10‑12-ben.', ['A', '10‑12-ben', '.']),
+ ('A 10‒12 van.', ['A', '10‒12', 'van', '.']),
+ ('A 10‒12-ben van.', ['A', '10‒12-ben', 'van', '.']),
+ ('A 10‒12-ben.', ['A', '10‒12-ben', '.']),
+ ('A 10–12 van.', ['A', '10–12', 'van', '.']),
+ ('A 10–12-ben van.', ['A', '10–12-ben', 'van', '.']),
+ ('A 10–12-ben.', ['A', '10–12-ben', '.']),
+ ('A 10—12 van.', ['A', '10—12', 'van', '.']),
+ ('A 10—12-ben van.', ['A', '10—12-ben', 'van', '.']),
+ ('A 10—12-ben.', ['A', '10—12-ben', '.']),
+ ('A 10―12 van.', ['A', '10―12', 'van', '.']),
+ ('A 10―12-ben van.', ['A', '10―12-ben', 'van', '.']),
+ ('A 10―12-ben.', ['A', '10―12-ben', '.']),
+ ('A -23,12 van.', ['A', '-23,12', 'van', '.']),
+ ('A -23,12-ben van.', ['A', '-23,12-ben', 'van', '.']),
+ ('A -23,12-ben.', ['A', '-23,12-ben', '.']),
+ ('A 2+3 van.', ['A', '2', '+', '3', 'van', '.']),
+ ('A 2 +3 van.', ['A', '2', '+', '3', 'van', '.']),
+ ('A 2+ 3 van.', ['A', '2', '+', '3', 'van', '.']),
+ ('A 2 + 3 van.', ['A', '2', '+', '3', 'van', '.']),
+ ('A 2*3 van.', ['A', '2', '*', '3', 'van', '.']),
+ ('A 2 *3 van.', ['A', '2', '*', '3', 'van', '.']),
+ ('A 2* 3 van.', ['A', '2', '*', '3', 'van', '.']),
+ ('A 2 * 3 van.', ['A', '2', '*', '3', 'van', '.']),
+ ('A C++ van.', ['A', 'C++', 'van', '.']),
+ ('A C++-ben van.', ['A', 'C++-ben', 'van', '.']),
+ ('A C++.', ['A', 'C++', '.']),
+ ('A C++-ben.', ['A', 'C++-ben', '.']),
+ ('A 2003. I. 06. van.', ['A', '2003.', 'I.', '06.', 'van', '.']),
+ ('A 2003. I. 06-ben van.', ['A', '2003.', 'I.', '06-ben', 'van', '.']),
+ ('A 2003. I. 06.', ['A', '2003.', 'I.', '06.']),
+ ('A 2003. I. 06-ben.', ['A', '2003.', 'I.', '06-ben', '.']),
+ ('A 2003. 01. 06. van.', ['A', '2003.', '01.', '06.', 'van', '.']),
+ ('A 2003. 01. 06-ben van.', ['A', '2003.', '01.', '06-ben', 'van', '.']),
+ ('A 2003. 01. 06.', ['A', '2003.', '01.', '06.']),
+ ('A 2003. 01. 06-ben.', ['A', '2003.', '01.', '06-ben', '.']),
+ ('A IV. 12. van.', ['A', 'IV.', '12.', 'van', '.']),
+ ('A IV. 12-ben van.', ['A', 'IV.', '12-ben', 'van', '.']),
+ ('A IV. 12.', ['A', 'IV.', '12.']),
+ ('A IV. 12-ben.', ['A', 'IV.', '12-ben', '.']),
+ ('A 2003.01.06. van.', ['A', '2003.01.06.', 'van', '.']),
+ ('A 2003.01.06-ben van.', ['A', '2003.01.06-ben', 'van', '.']),
+ ('A 2003.01.06.', ['A', '2003.01.06.']),
+ ('A 2003.01.06-ben.', ['A', '2003.01.06-ben', '.']),
+ ('A IV.12. van.', ['A', 'IV.12.', 'van', '.']),
+ ('A IV.12-ben van.', ['A', 'IV.12-ben', 'van', '.']),
+ ('A IV.12.', ['A', 'IV.12.']),
+ ('A IV.12-ben.', ['A', 'IV.12-ben', '.']),
+ ('A 1.1.2. van.', ['A', '1.1.2.', 'van', '.']),
+ ('A 1.1.2-ben van.', ['A', '1.1.2-ben', 'van', '.']),
+ ('A 1.1.2.', ['A', '1.1.2.']),
+ ('A 1.1.2-ben.', ['A', '1.1.2-ben', '.']),
+ ('A 1,5--2,5 van.', ['A', '1,5--2,5', 'van', '.']),
+ ('A 1,5--2,5-ben van.', ['A', '1,5--2,5-ben', 'van', '.']),
+ ('A 1,5--2,5-ben.', ['A', '1,5--2,5-ben', '.']),
+ ('A 3,14 van.', ['A', '3,14', 'van', '.']),
+ ('A 3,14-ben van.', ['A', '3,14-ben', 'van', '.']),
+ ('A 3,14-ben.', ['A', '3,14-ben', '.']),
+ ('A 3.14 van.', ['A', '3.14', 'van', '.']),
+ ('A 3.14-ben van.', ['A', '3.14-ben', 'van', '.']),
+ ('A 3.14-ben.', ['A', '3.14-ben', '.']),
+ ('A 15. van.', ['A', '15.', 'van', '.']),
+ ('A 15-ben van.', ['A', '15-ben', 'van', '.']),
+ ('A 15-ben.', ['A', '15-ben', '.']),
+ ('A 15.-ben van.', ['A', '15.-ben', 'van', '.']),
+ ('A 15.-ben.', ['A', '15.-ben', '.']),
+ ('A 2002--2003. van.', ['A', '2002--2003.', 'van', '.']),
+ ('A 2002--2003-ben van.', ['A', '2002--2003-ben', 'van', '.']),
+ ('A 2002--2003-ben.', ['A', '2002--2003-ben', '.']),
+ ('A -0,99% van.', ['A', '-0,99%', 'van', '.']),
+ ('A -0,99%-ben van.', ['A', '-0,99%-ben', 'van', '.']),
+ ('A -0,99%.', ['A', '-0,99%', '.']),
+ ('A -0,99%-ben.', ['A', '-0,99%-ben', '.']),
+ ('A 10--20% van.', ['A', '10--20%', 'van', '.']),
+ ('A 10--20%-ben van.', ['A', '10--20%-ben', 'van', '.']),
+ ('A 10--20%.', ['A', '10--20%', '.']),
+ ('A 10--20%-ben.', ['A', '10--20%-ben', '.']),
+ ('A 99§ van.', ['A', '99§', 'van', '.']),
+ ('A 99§-ben van.', ['A', '99§-ben', 'van', '.']),
+ ('A 99§-ben.', ['A', '99§-ben', '.']),
+ ('A 10--20§ van.', ['A', '10--20§', 'van', '.']),
+ ('A 10--20§-ben van.', ['A', '10--20§-ben', 'van', '.']),
+ ('A 10--20§-ben.', ['A', '10--20§-ben', '.']),
+ ('A 99° van.', ['A', '99°', 'van', '.']),
+ ('A 99°-ben van.', ['A', '99°-ben', 'van', '.']),
+ ('A 99°-ben.', ['A', '99°-ben', '.']),
+ ('A 10--20° van.', ['A', '10--20°', 'van', '.']),
+ ('A 10--20°-ben van.', ['A', '10--20°-ben', 'van', '.']),
+ ('A 10--20°-ben.', ['A', '10--20°-ben', '.']),
+ ('A °C van.', ['A', '°C', 'van', '.']),
+ ('A °C-ben van.', ['A', '°C-ben', 'van', '.']),
+ ('A °C.', ['A', '°C', '.']),
+ ('A °C-ben.', ['A', '°C-ben', '.']),
+ ('A 100°C van.', ['A', '100°C', 'van', '.']),
+ ('A 100°C-ben van.', ['A', '100°C-ben', 'van', '.']),
+ ('A 100°C.', ['A', '100°C', '.']),
+ ('A 100°C-ben.', ['A', '100°C-ben', '.']),
+ ('A 800x600 van.', ['A', '800x600', 'van', '.']),
+ ('A 800x600-ben van.', ['A', '800x600-ben', 'van', '.']),
+ ('A 800x600-ben.', ['A', '800x600-ben', '.']),
+ ('A 1x2x3x4 van.', ['A', '1x2x3x4', 'van', '.']),
+ ('A 1x2x3x4-ben van.', ['A', '1x2x3x4-ben', 'van', '.']),
+ ('A 1x2x3x4-ben.', ['A', '1x2x3x4-ben', '.']),
+ ('A 5/J van.', ['A', '5/J', 'van', '.']),
+ ('A 5/J-ben van.', ['A', '5/J-ben', 'van', '.']),
+ ('A 5/J-ben.', ['A', '5/J-ben', '.']),
+ ('A 5/J. van.', ['A', '5/J.', 'van', '.']),
+ ('A 5/J.-ben van.', ['A', '5/J.-ben', 'van', '.']),
+ ('A 5/J.-ben.', ['A', '5/J.-ben', '.']),
+ ('A III/1 van.', ['A', 'III/1', 'van', '.']),
+ ('A III/1-ben van.', ['A', 'III/1-ben', 'van', '.']),
+ ('A III/1-ben.', ['A', 'III/1-ben', '.']),
+ ('A III/1. van.', ['A', 'III/1.', 'van', '.']),
+ ('A III/1.-ben van.', ['A', 'III/1.-ben', 'van', '.']),
+ ('A III/1.-ben.', ['A', 'III/1.-ben', '.']),
+ ('A III/c van.', ['A', 'III/c', 'van', '.']),
+ ('A III/c-ben van.', ['A', 'III/c-ben', 'van', '.']),
+ ('A III/c.', ['A', 'III/c', '.']),
+ ('A III/c-ben.', ['A', 'III/c-ben', '.']),
+ ('A TU–154 van.', ['A', 'TU–154', 'van', '.']),
+ ('A TU–154-ben van.', ['A', 'TU–154-ben', 'van', '.']),
+ ('A TU–154-ben.', ['A', 'TU–154-ben', '.'])]
- def __init__(self, input_str, expected_words):
- self.input = input_str
- self.expected_tokens = expected_words
+_QUTE_TESTS = [('Az "Ime, hat"-ban irja.', ['Az', '"', 'Ime', ',', 'hat', '"', '-ban', 'irja', '.']),
+ ('"Ime, hat"-ban irja.', ['"', 'Ime', ',', 'hat', '"', '-ban', 'irja', '.']),
+ ('Az "Ime, hat".', ['Az', '"', 'Ime', ',', 'hat', '"', '.']),
+ ('Egy 24"-os monitor.', ['Egy', '24', '"', '-os', 'monitor', '.']),
+ ("A don't van.", ['A', "don't", 'van', '.'])]
- def __repr__(self):
- return "TokenizerTestCase".format(repr(self.input), self.expected_tokens)
-
- def to_tuple(self):
- return (self.input, self.expected_tokens)
-
- @classmethod
- def _parse_output_line(cls, line):
- for match in cls.WORD_PATTERN.finditer(line):
- yield match.group(2)
-
- @classmethod
- def read_from_file(cls, path):
- with open(path) as f:
- input_lines = []
- output_words = []
- last_type = None
- for line in f:
- if line.startswith(cls.INPUT_PREFIX):
- if last_type == TokenizerTestCase.OUTPUT_PREFIX and input_lines:
- yield TokenizerTestCase("\n".join(input_lines), output_words)
- input_lines = []
- output_words = []
- input_lines.append(line[len(cls.INPUT_PREFIX):].strip())
- last_type = TokenizerTestCase.INPUT_PREFIX
- elif line.startswith(cls.OUTPUT_PREFIX):
- output_words.extend(list(cls._parse_output_line(line.strip())))
- last_type = TokenizerTestCase.OUTPUT_PREFIX
- else:
- # Comments separate test cases
- if input_lines:
- yield TokenizerTestCase("\n".join(input_lines), output_words)
- input_lines = []
- output_words = []
- last_type = None
-
-
-_DOTS_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_dots.txt"))
-_HYPHEN_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_hyphen.txt"))
-_QUOTE_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_quote.txt"))
-_NUMBER_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_numbers.txt"))
-_MISC_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_misc.txt"))
-_IT_CASES = list(TokenizerTestCase.read_from_file(_MODULE_PATH + "/test_default_token_it.txt"))
-
-# TODO: Until this get fixed we cannot really test the urls: https://github.com/explosion/spaCy/issues/344
-ALL_TESTCASES = _DOTS_CASES + _HYPHEN_CASES + _QUOTE_CASES + _NUMBER_CASES + _MISC_CASES # + _IT_CASES
+_DOT_TESTS = [('N. kormányzósági\nszékhely.', ['N.', 'kormányzósági', 'székhely', '.']),
+ ('A .hu egy tld.', ['A', '.hu', 'egy', 'tld', '.']),
+ ('Az egy.ketto pelda.', ['Az', 'egy.ketto', 'pelda', '.']),
+ ('A pl. rovidites.', ['A', 'pl.', 'rovidites', '.']),
+ ('A S.M.A.R.T. szo.', ['A', 'S.M.A.R.T.', 'szo', '.']),
+ ('A .hu.', ['A', '.hu', '.']),
+ ('Az egy.ketto.', ['Az', 'egy.ketto', '.']),
+ ('A pl.', ['A', 'pl.']),
+ ('A S.M.A.R.T.', ['A', 'S.M.A.R.T.']),
+ ('Egy..ket.', ['Egy', '..', 'ket', '.']),
+ ('Valami... van.', ['Valami', '...', 'van', '.']),
+ ('Valami ...van...', ['Valami', '...', 'van', '...']),
+ ('Valami...', ['Valami', '...']),
+ ('Valami ...', ['Valami', '...']),
+ ('Valami ... más.', ['Valami', '...', 'más', '.'])]
@pytest.fixture(scope="session")
@@ -75,8 +223,9 @@ def hu_tokenizer(HU):
return HU.tokenizer
-@pytest.mark.parametrize(("test_case"), ALL_TESTCASES)
-def test_testcases(hu_tokenizer, test_case):
- tokens = hu_tokenizer(test_case.input)
+@pytest.mark.parametrize(("input", "expected_tokens"),
+ _DEFAULT_TESTS + _HYPHEN_TESTS + _NUMBER_TESTS + _DOT_TESTS + _QUTE_TESTS)
+def test_testcases(hu_tokenizer, input, expected_tokens):
+ tokens = hu_tokenizer(input)
token_list = [token.orth_ for token in tokens if not token.is_space]
- assert test_case.expected_tokens == token_list # , "{} was erronously tokenized as {}".format(test_case, token_list)
+ assert expected_tokens == token_list