jmsv / ety-python

A Python module to discover the etymology of words
http://ety-python.rtfd.io
MIT License
144 stars 18 forks source link

Make case insensitive #39

Closed alxwrd closed 6 years ago

alxwrd commented 6 years ago

8 seems to have regressed.

This adds fixes back and some tests around it.

I'm going to push failing tests first, stand-by!

alxwrd commented 6 years ago

Failing tests for quick reference:

======================================================================
FAIL: test_origins_allows_any_case (__main__.TestEty)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests.py", line 105, in test_origins_allows_any_case
    self.assertEqual(wonky_word_origins, lower_word_origins)
AssertionError: Lists differ: [] != [Word(test, language=Old French (842-ca. 1400))]
Second list contains 1 additional elements.
First extra element 0:
Word(test, language=Old French (842-ca. 1400))
- []
+ [Word(test, language=Old French (842-ca. 1400))]

======================================================================
FAIL: test_tree_allows_any_case (__main__.TestEty)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests.py", line 111, in test_tree_allows_any_case
    self.assertEqual(wonky_word_tree, lower_word_tree)
AssertionError: Lists differ: [] != [Word(test, language=English), Word(test, [90 chars]tin)]
Second list contains 4 additional elements.
First extra element 0:
Word(test, language=English)
- []
+ [Word(test, language=English),
+  Word(test, language=Old French (842-ca. 1400)),
+  Word(testum, language=Latin),
+  Word(testa, language=Latin)]