Skip to content

Commit

Permalink
Fade to black
Browse files Browse the repository at this point in the history
  • Loading branch information
jaraco committed Nov 5, 2018
1 parent 983ba82 commit b1ed1ec
Show file tree
Hide file tree
Showing 16 changed files with 3,286 additions and 2,379 deletions.
2,959 changes: 1,889 additions & 1,070 deletions inflect.py

Large diffs are not rendered by default.

62 changes: 30 additions & 32 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,42 +10,40 @@


here = os.path.dirname(__file__)
readme_path = os.path.join(here, 'README.rst')
readme = io.open(readme_path, encoding='utf-8').read()
readme_path = os.path.join(here, "README.rst")
readme = io.open(readme_path, encoding="utf-8").read()

setup(
name='inflect',
name="inflect",
version=inflect.__version__,
description='Correctly generate plurals, singular nouns, ordinals, '
'indefinite articles; convert numbers to words',
description="Correctly generate plurals, singular nouns, ordinals, "
"indefinite articles; convert numbers to words",
long_description=readme,
author='Paul Dyson',
author_email='pwdyson@yahoo.com',
maintainer='Alex Gronholm',
maintainer_email='alex.gronholm@nextday.fi',
url='https://github.com/jazzband/inflect',
py_modules=['inflect'],
provides=['inflect'],
keywords=['plural', 'inflect', 'participle'],
author="Paul Dyson",
author_email="pwdyson@yahoo.com",
maintainer="Alex Gronholm",
maintainer_email="alex.gronholm@nextday.fi",
url="https://github.com/jazzband/inflect",
py_modules=["inflect"],
provides=["inflect"],
keywords=["plural", "inflect", "participle"],
classifiers=[
'Development Status :: 4 - Beta',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Intended Audience :: Developers',
'License :: OSI Approved :: GNU Affero General Public License v3',
'Natural Language :: English',
'Operating System :: OS Independent',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: Text Processing :: Linguistic',
],
python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
setup_requires=[
'setuptools_scm',
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Intended Audience :: Developers",
"License :: OSI Approved :: GNU Affero General Public License v3",
"Natural Language :: English",
"Operating System :: OS Independent",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Text Processing :: Linguistic",
],
python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*",
setup_requires=["setuptools_scm"],
)
28 changes: 14 additions & 14 deletions tests/test_an.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,17 @@
def test_an():
p = inflect.engine()

eq_(p.an('cat'), 'a cat', msg='a cat')
eq_(p.an('ant'), 'an ant', msg='an ant')
eq_(p.an('a'), 'an a', msg='an a')
eq_(p.an('b'), 'a b', msg='a b')
eq_(p.an('honest cat'), 'an honest cat', msg='an honest')
eq_(p.an('dishonest cat'), 'a dishonest cat', msg='a dishonest')
eq_(p.an('Honolulu sunset'), 'a Honolulu sunset', msg='a Honolulu')
eq_(p.an('mpeg'), 'an mpeg', msg='an mpeg')
eq_(p.an('onetime holiday'), 'a onetime holiday', msg='a onetime')
eq_(p.an('Ugandan person'), 'a Ugandan person', msg='a Ugandan')
eq_(p.an('Ukranian person'), 'a Ukranian person', msg='a Ukranian')
eq_(p.an('Unabomber'), 'a Unabomber', msg='a Unabomber')
eq_(p.an('unanimous decision'), 'a unanimous decision', msg='a unanimous')
eq_(p.an('US farmer'), 'a US farmer', msg='a US')
eq_(p.an("cat"), "a cat", msg="a cat")
eq_(p.an("ant"), "an ant", msg="an ant")
eq_(p.an("a"), "an a", msg="an a")
eq_(p.an("b"), "a b", msg="a b")
eq_(p.an("honest cat"), "an honest cat", msg="an honest")
eq_(p.an("dishonest cat"), "a dishonest cat", msg="a dishonest")
eq_(p.an("Honolulu sunset"), "a Honolulu sunset", msg="a Honolulu")
eq_(p.an("mpeg"), "an mpeg", msg="an mpeg")
eq_(p.an("onetime holiday"), "a onetime holiday", msg="a onetime")
eq_(p.an("Ugandan person"), "a Ugandan person", msg="a Ugandan")
eq_(p.an("Ukranian person"), "a Ukranian person", msg="a Ukranian")
eq_(p.an("Unabomber"), "a Unabomber", msg="a Unabomber")
eq_(p.an("unanimous decision"), "a unanimous decision", msg="a unanimous")
eq_(p.an("US farmer"), "a US farmer", msg="a US")
126 changes: 77 additions & 49 deletions tests/test_classical_all.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,69 +9,97 @@ def test_classical(self):

# DEFAULT...

self.assertEqual(p.plural_noun('error', 0), 'errors',
msg="classical 'zero' not active")
self.assertEqual(p.plural_noun('wildebeest'), 'wildebeests',
msg="classical 'herd' not active")
self.assertEqual(p.plural_noun('Sally'), 'Sallys',
msg="classical 'names' active")
self.assertEqual(p.plural_noun('brother'), 'brothers',
msg="classical others not active")
self.assertEqual(p.plural_noun('person'), 'people',
msg="classical 'persons' not active")
self.assertEqual(p.plural_noun('formula'), 'formulas',
msg="classical 'ancient' not active")
self.assertEqual(
p.plural_noun("error", 0), "errors", msg="classical 'zero' not active"
)
self.assertEqual(
p.plural_noun("wildebeest"),
"wildebeests",
msg="classical 'herd' not active",
)
self.assertEqual(
p.plural_noun("Sally"), "Sallys", msg="classical 'names' active"
)
self.assertEqual(
p.plural_noun("brother"), "brothers", msg="classical others not active"
)
self.assertEqual(
p.plural_noun("person"), "people", msg="classical 'persons' not active"
)
self.assertEqual(
p.plural_noun("formula"), "formulas", msg="classical 'ancient' not active"
)

# CLASSICAL PLURALS ACTIVATED...

p.classical(all=True)
self.assertEqual(p.plural_noun('error', 0), 'error',
msg="classical 'zero' active")
self.assertEqual(p.plural_noun('wildebeest'), 'wildebeest',
msg="classical 'herd' active")
self.assertEqual(p.plural_noun('Sally'), 'Sallys',
msg="classical 'names' active")
self.assertEqual(p.plural_noun('brother'), 'brethren',
msg="classical others active")
self.assertEqual(p.plural_noun('person'), 'persons',
msg="classical 'persons' active")
self.assertEqual(p.plural_noun('formula'), 'formulae',
msg="classical 'ancient' active")
self.assertEqual(
p.plural_noun("error", 0), "error", msg="classical 'zero' active"
)
self.assertEqual(
p.plural_noun("wildebeest"), "wildebeest", msg="classical 'herd' active"
)
self.assertEqual(
p.plural_noun("Sally"), "Sallys", msg="classical 'names' active"
)
self.assertEqual(
p.plural_noun("brother"), "brethren", msg="classical others active"
)
self.assertEqual(
p.plural_noun("person"), "persons", msg="classical 'persons' active"
)
self.assertEqual(
p.plural_noun("formula"), "formulae", msg="classical 'ancient' active"
)

# CLASSICAL PLURALS DEACTIVATED...

p.classical(all=False)
self.assertEqual(p.plural_noun('error', 0), 'errors',
msg="classical 'zero' not active")
self.assertEqual(p.plural_noun('wildebeest'), 'wildebeests',
msg="classical 'herd' not active")
self.assertEqual(p.plural_noun('Sally'), 'Sallies',
msg="classical 'names' not active")
self.assertEqual(p.plural_noun('brother'), 'brothers',
msg="classical others not active")
self.assertEqual(p.plural_noun('person'), 'people',
msg="classical 'persons' not active")
self.assertEqual(p.plural_noun('formula'), 'formulas',
msg="classical 'ancient' not active")
self.assertEqual(
p.plural_noun("error", 0), "errors", msg="classical 'zero' not active"
)
self.assertEqual(
p.plural_noun("wildebeest"),
"wildebeests",
msg="classical 'herd' not active",
)
self.assertEqual(
p.plural_noun("Sally"), "Sallies", msg="classical 'names' not active"
)
self.assertEqual(
p.plural_noun("brother"), "brothers", msg="classical others not active"
)
self.assertEqual(
p.plural_noun("person"), "people", msg="classical 'persons' not active"
)
self.assertEqual(
p.plural_noun("formula"), "formulas", msg="classical 'ancient' not active"
)

# CLASSICAL PLURALS REREREACTIVATED...

p.classical()
self.assertEqual(p.plural_noun('error', 0), 'error',
msg="classical 'zero' active")
self.assertEqual(p.plural_noun('wildebeest'), 'wildebeest',
msg="classical 'herd' active")
self.assertEqual(p.plural_noun('Sally'), 'Sallys',
msg="classical 'names' active")
self.assertEqual(p.plural_noun('brother'), 'brethren',
msg="classical others active")
self.assertEqual(p.plural_noun('person'), 'persons',
msg="classical 'persons' active")
self.assertEqual(p.plural_noun('formula'), 'formulae',
msg="classical 'ancient' active")
self.assertEqual(
p.plural_noun("error", 0), "error", msg="classical 'zero' active"
)
self.assertEqual(
p.plural_noun("wildebeest"), "wildebeest", msg="classical 'herd' active"
)
self.assertEqual(
p.plural_noun("Sally"), "Sallys", msg="classical 'names' active"
)
self.assertEqual(
p.plural_noun("brother"), "brethren", msg="classical others active"
)
self.assertEqual(
p.plural_noun("person"), "persons", msg="classical 'persons' active"
)
self.assertEqual(
p.plural_noun("formula"), "formulae", msg="classical 'ancient' active"
)


if __name__ == '__main__':
if __name__ == "__main__":
try:
unittest.main()
except SystemExit:
Expand Down
14 changes: 7 additions & 7 deletions tests/test_classical_ancient.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ def test_ancient_1():

# DEFAULT...

eq_(p.plural_noun('formula'), 'formulas', msg="classical 'ancient' not active")
eq_(p.plural_noun("formula"), "formulas", msg="classical 'ancient' not active")

# "person" PLURALS ACTIVATED...

p.classical(ancient=True)
eq_(p.plural_noun('formula'), 'formulae', msg="classical 'ancient' active")
eq_(p.plural_noun("formula"), "formulae", msg="classical 'ancient' active")

# OTHER CLASSICALS NOT ACTIVATED...

eq_(p.plural_noun('wildebeest'), 'wildebeests', msg="classical 'herd' not active")
eq_(p.plural_noun('error', 0), 'errors', msg="classical 'zero' not active")
eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun('brother'), 'brothers', msg="classical 'all' not active")
eq_(p.plural_noun('person'), 'people', msg="classical 'persons' not active")
eq_(p.plural_noun("wildebeest"), "wildebeests", msg="classical 'herd' not active")
eq_(p.plural_noun("error", 0), "errors", msg="classical 'zero' not active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")
eq_(p.plural_noun("brother"), "brothers", msg="classical 'all' not active")
eq_(p.plural_noun("person"), "people", msg="classical 'persons' not active")
14 changes: 7 additions & 7 deletions tests/test_classical_herd.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ def test_ancient_1():

# DEFAULT...

eq_(p.plural_noun('wildebeest'), 'wildebeests', msg="classical 'herd' not active")
eq_(p.plural_noun("wildebeest"), "wildebeests", msg="classical 'herd' not active")

# "person" PLURALS ACTIVATED...

p.classical(herd=True)
eq_(p.plural_noun('wildebeest'), 'wildebeest', msg="classical 'herd' active")
eq_(p.plural_noun("wildebeest"), "wildebeest", msg="classical 'herd' active")

# OTHER CLASSICALS NOT ACTIVATED...

eq_(p.plural_noun('formula'), 'formulas', msg="classical 'ancient' active")
eq_(p.plural_noun('error', 0), 'errors', msg="classical 'zero' not active")
eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun('brother'), 'brothers', msg="classical 'all' not active")
eq_(p.plural_noun('person'), 'people', msg="classical 'persons' not active")
eq_(p.plural_noun("formula"), "formulas", msg="classical 'ancient' active")
eq_(p.plural_noun("error", 0), "errors", msg="classical 'zero' not active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")
eq_(p.plural_noun("brother"), "brothers", msg="classical 'all' not active")
eq_(p.plural_noun("person"), "people", msg="classical 'persons' not active")
18 changes: 9 additions & 9 deletions tests/test_classical_names.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,19 @@ def test_ancient_1():

# DEFAULT...

eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun('Jones', 0), 'Joneses', msg="classical 'names' active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")
eq_(p.plural_noun("Jones", 0), "Joneses", msg="classical 'names' active")

# "person" PLURALS ACTIVATED...

p.classical(names=True)
eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun('Jones', 0), 'Joneses', msg="classical 'names' active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")
eq_(p.plural_noun("Jones", 0), "Joneses", msg="classical 'names' active")

# OTHER CLASSICALS NOT ACTIVATED...

eq_(p.plural_noun('wildebeest'), 'wildebeests', msg="classical 'herd' not active")
eq_(p.plural_noun('formula'), 'formulas', msg="classical 'ancient' active")
eq_(p.plural_noun('error', 0), 'errors', msg="classical 'zero' not active")
eq_(p.plural_noun('brother'), 'brothers', msg="classical 'all' not active")
eq_(p.plural_noun('person'), 'people', msg="classical 'persons' not active")
eq_(p.plural_noun("wildebeest"), "wildebeests", msg="classical 'herd' not active")
eq_(p.plural_noun("formula"), "formulas", msg="classical 'ancient' active")
eq_(p.plural_noun("error", 0), "errors", msg="classical 'zero' not active")
eq_(p.plural_noun("brother"), "brothers", msg="classical 'all' not active")
eq_(p.plural_noun("person"), "people", msg="classical 'persons' not active")
16 changes: 8 additions & 8 deletions tests/test_classical_person.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ def test_ancient_1():

# DEFAULT...

eq_(p.plural_noun('person'), 'people', msg="classical 'persons' not active")
eq_(p.plural_noun("person"), "people", msg="classical 'persons' not active")

# "person" PLURALS ACTIVATED...

p.classical(persons=True)
eq_(p.plural_noun('person'), 'persons', msg="classical 'persons' active")
eq_(p.plural_noun("person"), "persons", msg="classical 'persons' active")

# OTHER CLASSICALS NOT ACTIVATED...

eq_(p.plural_noun('wildebeest'), 'wildebeests', msg="classical 'herd' not active")
eq_(p.plural_noun('formula'), 'formulas', msg="classical 'ancient' active")
eq_(p.plural_noun('error', 0), 'errors', msg="classical 'zero' not active")
eq_(p.plural_noun('brother'), 'brothers', msg="classical 'all' not active")
eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun('Jones', 0), 'Joneses', msg="classical 'names' active")
eq_(p.plural_noun("wildebeest"), "wildebeests", msg="classical 'herd' not active")
eq_(p.plural_noun("formula"), "formulas", msg="classical 'ancient' active")
eq_(p.plural_noun("error", 0), "errors", msg="classical 'zero' not active")
eq_(p.plural_noun("brother"), "brothers", msg="classical 'all' not active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")
eq_(p.plural_noun("Jones", 0), "Joneses", msg="classical 'names' active")
14 changes: 7 additions & 7 deletions tests/test_classical_zero.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ def test_ancient_1():

# DEFAULT...

eq_(p.plural_noun('error', 0), 'errors', msg="classical 'zero' not active")
eq_(p.plural_noun("error", 0), "errors", msg="classical 'zero' not active")

# "person" PLURALS ACTIVATED...

p.classical(zero=True)
eq_(p.plural_noun('error', 0), 'error', msg="classical 'zero' active")
eq_(p.plural_noun("error", 0), "error", msg="classical 'zero' active")

# OTHER CLASSICALS NOT ACTIVATED...

eq_(p.plural_noun('wildebeest'), 'wildebeests', msg="classical 'herd' not active")
eq_(p.plural_noun('formula'), 'formulas', msg="classical 'ancient' active")
eq_(p.plural_noun('person'), 'people', msg="classical 'persons' not active")
eq_(p.plural_noun('brother'), 'brothers', msg="classical 'all' not active")
eq_(p.plural_noun('Sally'), 'Sallys', msg="classical 'names' active")
eq_(p.plural_noun("wildebeest"), "wildebeests", msg="classical 'herd' not active")
eq_(p.plural_noun("formula"), "formulas", msg="classical 'ancient' active")
eq_(p.plural_noun("person"), "people", msg="classical 'persons' not active")
eq_(p.plural_noun("brother"), "brothers", msg="classical 'all' not active")
eq_(p.plural_noun("Sally"), "Sallys", msg="classical 'names' active")

0 comments on commit b1ed1ec

Please sign in to comment.