diff options
| -rw-r--r-- | setup.cfg | 5 | ||||
| -rw-r--r-- | setup.py | 3 | ||||
| -rw-r--r-- | test/test_wikiget.py | 45 |
3 files changed, 52 insertions, 1 deletions
diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..801c8b5 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,5 @@ +[aliases] +test = pytest + +[tool:pytest] +addopts = --verbose @@ -37,7 +37,8 @@ setup( "Programming Language :: Python :: 3", "Topic :: Utilities", ], - install_requires=["future", "mwclient", "requests", "tqdm"], + install_requires=["future", "mwclient", "pytest-runner", "requests", "tqdm"], + tests_require=["pytest"], project_urls={ "Bug Reports": "https://github.com/clpo13/python-wikiget/issues", }, diff --git a/test/test_wikiget.py b/test/test_wikiget.py new file mode 100644 index 0000000..981d640 --- /dev/null +++ b/test/test_wikiget.py @@ -0,0 +1,45 @@ +"""wikiget +Simple wget clone for downloading files from Wikimedia sites. +Copyright (C) 2018 Cody Logan; licensed GPLv3+ +SPDX-License-Identifier: GPL-3.0-or-later +""" + +from wikiget import wikiget + + +def test_invalid_site_input(): + invalid_input = ["example.com", "vim.wikia.com", + "en.wikipedia.com", "en.wikimpedia.org"] + for i in invalid_input: + site_match = wikiget.valid_site(i) + assert site_match is None + + +def test_valid_site_input(): + valid_input = ["en.wikipedia.org", "commons.wikimedia.org", + "de.wikipedia.org", "meta.wikimedia.org"] + for i in valid_input: + site_match = wikiget.valid_site(i) + assert site_match is not None + + +def test_file_regex(): + i = "File:Example.jpg" + file_match = wikiget.valid_file(i) + assert file_match.group(0) + assert file_match.group(1) == "File:" + assert file_match.group(2) == "Example.jpg" + + +def test_invalid_file_input(): + invalid_input = ["file:example", "example"] + for i in invalid_input: + file_match = wikiget.valid_file(i) + assert file_match is None + + +def test_valid_file_input(): + valid_input = ["example.jpg", "file:example.jpg", "example.file-01.jpg"] + for i in valid_input: + file_match = wikiget.valid_file(i) + assert file_match is not None |
