mirror of
https://github.com/bndr/pipreqs.git
synced 2025-06-06 03:25:21 +00:00
applying pep8 rules
This commit is contained in:
parent
e7571ea033
commit
f2e745256e
@ -16,45 +16,43 @@ from pipreqs import pipreqs
|
||||
|
||||
|
||||
class TestPipreqs(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.modules = [
|
||||
'flask', 'requests', 'sqlalchemy', 'docopt', 'boto', 'ipython',
|
||||
'pyflakes', 'nose', 'analytics', 'flask_seasurf', 'peewee',
|
||||
'ujson', 'nonexistendmodule', 'bs4',
|
||||
'after_method_is_valid_even_if_not_pep8'
|
||||
"flask",
|
||||
"requests",
|
||||
"sqlalchemy",
|
||||
"docopt",
|
||||
"boto",
|
||||
"ipython",
|
||||
"pyflakes",
|
||||
"nose",
|
||||
"analytics",
|
||||
"flask_seasurf",
|
||||
"peewee",
|
||||
"ujson",
|
||||
"nonexistendmodule",
|
||||
"bs4",
|
||||
"after_method_is_valid_even_if_not_pep8",
|
||||
]
|
||||
self.modules2 = ['beautifulsoup4']
|
||||
self.local = ["docopt", "requests", "nose", 'pyflakes']
|
||||
self.modules2 = ["beautifulsoup4"]
|
||||
self.local = ["docopt", "requests", "nose", "pyflakes"]
|
||||
self.project = os.path.join(os.path.dirname(__file__), "_data")
|
||||
self.project_clean = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"_data_clean"
|
||||
)
|
||||
self.project_invalid = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"_invalid_data"
|
||||
)
|
||||
self.project_clean = os.path.join(os.path.dirname(__file__), "_data_clean")
|
||||
self.project_invalid = os.path.join(os.path.dirname(__file__), "_invalid_data")
|
||||
self.project_with_ignore_directory = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"_data_ignore"
|
||||
os.path.dirname(__file__), "_data_ignore"
|
||||
)
|
||||
self.project_with_duplicated_deps = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"_data_duplicated_deps"
|
||||
os.path.dirname(__file__), "_data_duplicated_deps"
|
||||
)
|
||||
self.requirements_path = os.path.join(self.project, "requirements.txt")
|
||||
self.alt_requirement_path = os.path.join(
|
||||
self.project,
|
||||
"requirements2.txt"
|
||||
)
|
||||
self.alt_requirement_path = os.path.join(self.project, "requirements2.txt")
|
||||
|
||||
def test_get_all_imports(self):
|
||||
imports = pipreqs.get_all_imports(self.project)
|
||||
self.assertEqual(len(imports), 15)
|
||||
for item in imports:
|
||||
self.assertTrue(
|
||||
item.lower() in self.modules, "Import is missing: " + item)
|
||||
self.assertTrue(item.lower() in self.modules, "Import is missing: " + item)
|
||||
self.assertFalse("time" in imports)
|
||||
self.assertFalse("logging" in imports)
|
||||
self.assertFalse("curses" in imports)
|
||||
@ -72,8 +70,7 @@ class TestPipreqs(unittest.TestCase):
|
||||
"""
|
||||
Test that invalid python files cannot be imported.
|
||||
"""
|
||||
self.assertRaises(
|
||||
SyntaxError, pipreqs.get_all_imports, self.project_invalid)
|
||||
self.assertRaises(SyntaxError, pipreqs.get_all_imports, self.project_invalid)
|
||||
|
||||
def test_get_imports_info(self):
|
||||
"""
|
||||
@ -86,13 +83,14 @@ class TestPipreqs(unittest.TestCase):
|
||||
self.assertEqual(len(with_info), 13)
|
||||
for item in with_info:
|
||||
self.assertTrue(
|
||||
item['name'].lower() in self.modules,
|
||||
"Import item appears to be missing " + item['name'])
|
||||
item["name"].lower() in self.modules,
|
||||
"Import item appears to be missing " + item["name"],
|
||||
)
|
||||
|
||||
def test_get_pkg_names(self):
|
||||
pkgs = ['jury', 'Japan', 'camel', 'Caroline']
|
||||
pkgs = ["jury", "Japan", "camel", "Caroline"]
|
||||
actual_output = pipreqs.get_pkg_names(pkgs)
|
||||
expected_output = ['camel', 'Caroline', 'Japan', 'jury']
|
||||
expected_output = ["camel", "Caroline", "Japan", "jury"]
|
||||
self.assertEqual(actual_output, expected_output)
|
||||
|
||||
def test_get_use_local_only(self):
|
||||
@ -107,22 +105,33 @@ class TestPipreqs(unittest.TestCase):
|
||||
# should find only docopt and requests
|
||||
imports_with_info = pipreqs.get_import_local(self.modules)
|
||||
for item in imports_with_info:
|
||||
self.assertTrue(item['name'].lower() in self.local)
|
||||
self.assertTrue(item["name"].lower() in self.local)
|
||||
|
||||
def test_init(self):
|
||||
"""
|
||||
Test that all modules we will test upon are in requirements file
|
||||
"""
|
||||
pipreqs.init({'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True, '--proxy':None, '--pypi-server':None,
|
||||
'--diff': None, '--clean': None, '--mode': None})
|
||||
pipreqs.init(
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.requirements_path) == 1
|
||||
with open(self.requirements_path, "r") as f:
|
||||
data = f.read().lower()
|
||||
for item in self.modules[:-3]:
|
||||
self.assertTrue(item.lower() in data)
|
||||
# It should be sorted based on names.
|
||||
data = data.strip().split('\n')
|
||||
data = data.strip().split("\n")
|
||||
self.assertEqual(data, sorted(data))
|
||||
|
||||
def test_init_local_only(self):
|
||||
@ -130,9 +139,20 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test that items listed in requirements.text are the same
|
||||
as locals expected
|
||||
"""
|
||||
pipreqs.init({'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': True, '--force': True, '--proxy':None, '--pypi-server':None,
|
||||
'--diff': None, '--clean': None, '--mode': None})
|
||||
pipreqs.init(
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": True,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.requirements_path) == 1
|
||||
with open(self.requirements_path, "r") as f:
|
||||
data = f.readlines()
|
||||
@ -145,9 +165,19 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test that we can save requirements.txt correctly
|
||||
to a different path
|
||||
"""
|
||||
pipreqs.init({'<path>': self.project, '--savepath': self.alt_requirement_path,
|
||||
'--use-local': None, '--proxy':None, '--pypi-server':None, '--print': False,
|
||||
'--diff': None, '--clean': None, '--mode': None})
|
||||
pipreqs.init(
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": self.alt_requirement_path,
|
||||
"--use-local": None,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--print": False,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.alt_requirement_path) == 1
|
||||
with open(self.alt_requirement_path, "r") as f:
|
||||
data = f.read().lower()
|
||||
@ -163,9 +193,20 @@ class TestPipreqs(unittest.TestCase):
|
||||
"""
|
||||
with open(self.requirements_path, "w") as f:
|
||||
f.write("should_not_be_overwritten")
|
||||
pipreqs.init({'<path>': self.project, '--savepath': None, '--use-local': None,
|
||||
'--force': None, '--proxy':None, '--pypi-server':None, '--print': False,
|
||||
'--diff': None, '--clean': None, '--mode': None})
|
||||
pipreqs.init(
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--use-local": None,
|
||||
"--force": None,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--print": False,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.requirements_path) == 1
|
||||
with open(self.requirements_path, "r") as f:
|
||||
data = f.read().lower()
|
||||
@ -181,10 +222,10 @@ class TestPipreqs(unittest.TestCase):
|
||||
import_name_with_alias = "requests as R"
|
||||
expected_import_name_without_alias = "requests"
|
||||
import_name_without_aliases = pipreqs.get_name_without_alias(
|
||||
import_name_with_alias)
|
||||
import_name_with_alias
|
||||
)
|
||||
self.assertEqual(
|
||||
import_name_without_aliases,
|
||||
expected_import_name_without_alias
|
||||
import_name_without_aliases, expected_import_name_without_alias
|
||||
)
|
||||
|
||||
def test_custom_pypi_server(self):
|
||||
@ -192,10 +233,17 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test that trying to get a custom pypi sever fails correctly
|
||||
"""
|
||||
self.assertRaises(
|
||||
requests.exceptions.MissingSchema, pipreqs.init,
|
||||
{'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True, '--proxy': None,
|
||||
'--pypi-server': 'nonexistent'}
|
||||
requests.exceptions.MissingSchema,
|
||||
pipreqs.init,
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": "nonexistent",
|
||||
},
|
||||
)
|
||||
|
||||
def test_ignored_directory(self):
|
||||
@ -203,18 +251,25 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test --ignore parameter
|
||||
"""
|
||||
pipreqs.init(
|
||||
{'<path>': self.project_with_ignore_directory, '--savepath': None,
|
||||
'--print': False, '--use-local': None, '--force': True,
|
||||
'--proxy':None, '--pypi-server':None,
|
||||
'--ignore':'.ignored_dir,.ignore_second',
|
||||
'--diff': None,
|
||||
'--clean': None,
|
||||
'--mode': None
|
||||
{
|
||||
"<path>": self.project_with_ignore_directory,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--ignore": ".ignored_dir,.ignore_second",
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
with open(os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r") as f:
|
||||
with open(
|
||||
os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r"
|
||||
) as f:
|
||||
data = f.read().lower()
|
||||
for item in ['click', 'getpass']:
|
||||
for item in ["click", "getpass"]:
|
||||
self.assertFalse(item.lower() in data)
|
||||
|
||||
def test_dynamic_version_no_pin_scheme(self):
|
||||
@ -222,17 +277,24 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test --mode=no-pin
|
||||
"""
|
||||
pipreqs.init(
|
||||
{'<path>': self.project_with_ignore_directory, '--savepath': None,
|
||||
'--print': False, '--use-local': None, '--force': True,
|
||||
'--proxy': None, '--pypi-server': None,
|
||||
'--diff': None,
|
||||
'--clean': None,
|
||||
'--mode': 'no-pin'
|
||||
{
|
||||
"<path>": self.project_with_ignore_directory,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": "no-pin",
|
||||
}
|
||||
)
|
||||
with open(os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r") as f:
|
||||
with open(
|
||||
os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r"
|
||||
) as f:
|
||||
data = f.read().lower()
|
||||
for item in ['beautifulsoup4', 'boto']:
|
||||
for item in ["beautifulsoup4", "boto"]:
|
||||
self.assertTrue(item.lower() in data)
|
||||
|
||||
def test_dynamic_version_gt_scheme(self):
|
||||
@ -240,20 +302,26 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test --mode=gt
|
||||
"""
|
||||
pipreqs.init(
|
||||
{'<path>': self.project_with_ignore_directory, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True,
|
||||
'--proxy': None,
|
||||
'--pypi-server': None,
|
||||
'--diff': None,
|
||||
'--clean': None,
|
||||
'--mode': 'gt'
|
||||
{
|
||||
"<path>": self.project_with_ignore_directory,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": "gt",
|
||||
}
|
||||
)
|
||||
with open(os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r") as f:
|
||||
with open(
|
||||
os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r"
|
||||
) as f:
|
||||
data = f.readlines()
|
||||
for item in data:
|
||||
symbol = '>='
|
||||
message = 'symbol is not in item'
|
||||
symbol = ">="
|
||||
message = "symbol is not in item"
|
||||
self.assertIn(symbol, item, message)
|
||||
|
||||
def test_dynamic_version_compat_scheme(self):
|
||||
@ -261,20 +329,26 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test --mode=compat
|
||||
"""
|
||||
pipreqs.init(
|
||||
{'<path>': self.project_with_ignore_directory, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True,
|
||||
'--proxy': None,
|
||||
'--pypi-server': None,
|
||||
'--diff': None,
|
||||
'--clean': None,
|
||||
'--mode': 'compat'
|
||||
{
|
||||
"<path>": self.project_with_ignore_directory,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": "compat",
|
||||
}
|
||||
)
|
||||
with open(os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r") as f:
|
||||
with open(
|
||||
os.path.join(self.project_with_ignore_directory, "requirements.txt"), "r"
|
||||
) as f:
|
||||
data = f.readlines()
|
||||
for item in data:
|
||||
symbol = '~='
|
||||
message = 'symbol is not in item'
|
||||
symbol = "~="
|
||||
message = "symbol is not in item"
|
||||
self.assertIn(symbol, item, message)
|
||||
|
||||
def test_clean(self):
|
||||
@ -282,17 +356,33 @@ class TestPipreqs(unittest.TestCase):
|
||||
Test --clean parameter
|
||||
"""
|
||||
pipreqs.init(
|
||||
{'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True, '--proxy': None,
|
||||
'--pypi-server': None, '--diff': None, '--clean': None,
|
||||
'--mode': None}
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.requirements_path) == 1
|
||||
pipreqs.init(
|
||||
{'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': None, '--proxy': None,
|
||||
'--pypi-server': None, '--diff': None,
|
||||
'--clean': self.requirements_path, '--mode': 'non-pin'}
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": None,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": self.requirements_path,
|
||||
"--mode": "non-pin",
|
||||
}
|
||||
)
|
||||
with open(self.requirements_path, "r") as f:
|
||||
data = f.read().lower()
|
||||
@ -303,20 +393,35 @@ class TestPipreqs(unittest.TestCase):
|
||||
"""
|
||||
Test --clean parameter when there are imports to clean
|
||||
"""
|
||||
cleaned_module = 'sqlalchemy'
|
||||
cleaned_module = "sqlalchemy"
|
||||
pipreqs.init(
|
||||
{'<path>': self.project, '--savepath': None, '--print': False,
|
||||
'--use-local': None, '--force': True, '--proxy': None,
|
||||
'--pypi-server': None, '--diff': None, '--clean': None,
|
||||
'--mode': None}
|
||||
{
|
||||
"<path>": self.project,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": True,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": None,
|
||||
"--mode": None,
|
||||
}
|
||||
)
|
||||
assert os.path.exists(self.requirements_path) == 1
|
||||
modules_clean = [m for m in self.modules if m != cleaned_module]
|
||||
pipreqs.init(
|
||||
{'<path>': self.project_clean, '--savepath': None,
|
||||
'--print': False, '--use-local': None, '--force': None,
|
||||
'--proxy': None, '--pypi-server': None, '--diff': None,
|
||||
'--clean': self.requirements_path, '--mode': 'non-pin'}
|
||||
{
|
||||
"<path>": self.project_clean,
|
||||
"--savepath": None,
|
||||
"--print": False,
|
||||
"--use-local": None,
|
||||
"--force": None,
|
||||
"--proxy": None,
|
||||
"--pypi-server": None,
|
||||
"--diff": None,
|
||||
"--clean": self.requirements_path,
|
||||
"--mode": "non-pin",
|
||||
}
|
||||
)
|
||||
with open(self.requirements_path, "r") as f:
|
||||
data = f.read().lower()
|
||||
@ -336,5 +441,5 @@ class TestPipreqs(unittest.TestCase):
|
||||
pass
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
Loading…
x
Reference in New Issue
Block a user