| |
| |
|
|
| import sys, os |
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) |
| from spacyNER.name_assembler import assemble_name, split_full_name |
|
|
|
|
| |
|
|
| def test_assemble_full_name(): |
| result = assemble_name("Juan", "dela Cruz", "Santos") |
| assert result == "Juan dela Cruz Santos" |
|
|
| def test_assemble_no_middle(): |
| result = assemble_name("Maria", None, "Reyes") |
| assert result == "Maria Reyes" |
|
|
| def test_assemble_empty_middle(): |
| result = assemble_name("Carlos", "", "Mendoza") |
| assert result == "Carlos Mendoza" |
|
|
| def test_assemble_all_none(): |
| result = assemble_name(None, None, None) |
| assert result == "" |
|
|
| def test_assemble_strips_whitespace(): |
| result = assemble_name(" Juan ", " dela Cruz ", " Santos ") |
| assert result == "Juan dela Cruz Santos" |
|
|
| def test_assemble_first_only(): |
| result = assemble_name("Jose", None, None) |
| assert result == "Jose" |
|
|
| def test_assemble_last_only(): |
| result = assemble_name(None, None, "Ramos") |
| assert result == "Ramos" |
|
|
|
|
| |
|
|
| def test_split_three_words(): |
| first, middle, last = split_full_name("Juan dela Santos") |
| assert first == "Juan" |
| assert middle == "dela" |
| assert last == "Santos" |
|
|
| def test_split_four_words(): |
| first, middle, last = split_full_name("Juan dela Cruz Santos") |
| assert first == "Juan" |
| assert middle == "dela Cruz" |
| assert last == "Santos" |
|
|
| def test_split_two_words(): |
| first, middle, last = split_full_name("Maria Reyes") |
| assert first == "Maria" |
| assert middle is None |
| assert last == "Reyes" |
|
|
| def test_split_one_word(): |
| first, middle, last = split_full_name("Carlos") |
| assert first == "Carlos" |
| assert middle is None |
| assert last is None |
|
|
| def test_split_empty(): |
| first, middle, last = split_full_name("") |
| assert first is None |
| assert middle is None |
| assert last is None |
|
|
| def test_roundtrip(): |
| """Splitting then assembling should give back the original name.""" |
| name = "Juan dela Cruz Santos" |
| first, middle, last = split_full_name(name) |
| result = assemble_name(first, middle, last) |
| assert result == name |
|
|