names: Convert tests to pytest style

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
This commit is contained in:
Sunil Mohan Adapa 2019-05-01 16:08:30 -07:00 committed by Joseph Nuthalapati
parent 54b684dbaf
commit 0cacb21983
No known key found for this signature in database
GPG Key ID: 5398F00A2FA43C35

View File

@ -14,12 +14,11 @@
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
""" """
Tests for names module. Tests for names module.
""" """
import unittest import pytest
from .. import domain_types, domains from .. import domain_types, domains
from .. import on_domain_added, on_domain_removed from .. import on_domain_added, on_domain_removed
@ -27,70 +26,93 @@ from .. import get_domain_types, get_description
from .. import get_domain, get_enabled_services, get_services_status from .. import get_domain, get_enabled_services, get_services_status
class TestNames(unittest.TestCase): @pytest.fixture(name='clean_domains')
"""Test cases for testing the names module.""" def fixture_clean_domains():
def test_on_domain_added(self): """Test fixture to start a test with clean domains list."""
"""Test adding a domain to the global list.""" old_domain_types = dict(domain_types)
on_domain_added('', '') old_domains = dict(domains)
self.assertNotIn('', domain_types) domain_types.clear()
self.assertNotIn('', domains) domains.clear()
yield
domain_types.clear()
domains.clear()
domain_types.update(old_domain_types)
domains.update(old_domains)
on_domain_added('', 'hiddenservice', 'ddddd.onion')
on_domain_added('', 'hiddenservice', 'eeeee.onion')
self.assertIn('ddddd.onion', domains['hiddenservice'])
self.assertIn('eeeee.onion', domains['hiddenservice'])
def test_on_domain_removed(self): @pytest.mark.usefixtures('clean_domains')
"""Test removing a domain from the global list.""" def test_on_domain_added():
on_domain_added('', 'domainname', 'fffff') """Test adding a domain to the global list."""
on_domain_removed('', 'domainname', 'fffff') on_domain_added('', '')
self.assertNotIn('fffff', domains['domainname']) assert '' not in domain_types
assert '' not in domains
on_domain_added('', 'pagekite', 'ggggg.pagekite.me') on_domain_added('', 'hiddenservice', 'ddddd.onion')
on_domain_added('', 'pagekite', 'hhhhh.pagekite.me') on_domain_added('', 'hiddenservice', 'eeeee.onion')
on_domain_removed('', 'pagekite') assert 'ddddd.onion' in domains['hiddenservice']
self.assertNotIn('ggggg.pagekite.me', domains['pagekite']) assert 'eeeee.onion' in domains['hiddenservice']
self.assertNotIn('hhhhh.pagekite.me', domains['pagekite'])
# try to remove things that don't exist
on_domain_removed('', '')
on_domain_removed('', 'domainname', 'iiiii')
def test_get_domain_types(self): @pytest.mark.usefixtures('clean_domains')
"""Test getting domain types.""" def test_on_domain_removed():
on_domain_added('', 'domainname') """Test removing a domain from the global list."""
self.assertIn('domainname', get_domain_types()) on_domain_added('', 'domainname', 'fffff')
on_domain_removed('', 'domainname', 'fffff')
assert 'fffff' not in domains['domainname']
def test_get_description(self): on_domain_added('', 'pagekite', 'ggggg.pagekite.me')
"""Test getting domain type description.""" on_domain_added('', 'pagekite', 'hhhhh.pagekite.me')
on_domain_added('', 'pagekite', '', 'Pagekite') on_domain_removed('', 'pagekite')
self.assertEqual(get_description('pagekite'), 'Pagekite') assert 'ggggg.pagekite.me' not in domains['pagekite']
assert 'hhhhh.pagekite.me' not in domains['pagekite']
self.assertEqual('asdfasdf', get_description('asdfasdf')) # try to remove things that don't exist
on_domain_removed('', '')
on_domain_removed('', 'domainname', 'iiiii')
def test_get_domain(self):
"""Test getting a domain of domain_type."""
on_domain_added('', 'hiddenservice', 'aaaaa.onion')
self.assertEqual(get_domain('hiddenservice'), 'aaaaa.onion')
self.assertEqual(None, get_domain('abcdef')) @pytest.mark.usefixtures('clean_domains')
def test_get_domain_types():
"""Test getting domain types."""
on_domain_added('', 'domainname')
assert 'domainname' in get_domain_types()
on_domain_removed('', 'hiddenservice')
self.assertEqual(None, get_domain('hiddenservice'))
def test_get_enabled_services(self): @pytest.mark.usefixtures('clean_domains')
"""Test getting enabled services for a domain.""" def test_get_description():
on_domain_added('', 'domainname', 'bbbbb', '', """Test getting domain type description."""
['http', 'https', 'ssh']) on_domain_added('', 'pagekite', '', 'Pagekite')
self.assertEqual(get_enabled_services('domainname', 'bbbbb'), assert get_description('pagekite') == 'Pagekite'
['http', 'https', 'ssh'])
self.assertEqual(get_enabled_services('xxxxx', 'yyyyy'), []) assert get_description('asdfasdf') == 'asdfasdf'
self.assertEqual(get_enabled_services('domainname', 'zzzzz'), [])
def test_get_services_status(self):
"""Test getting whether each service is enabled for a domain.""" @pytest.mark.usefixtures('clean_domains')
on_domain_added('', 'pagekite', 'ccccc.pagekite.me', '', def test_get_domain():
['http', 'https']) """Test getting a domain of domain_type."""
self.assertEqual(get_services_status('pagekite', 'ccccc.pagekite.me'), on_domain_added('', 'hiddenservice', 'aaaaa.onion')
[True, True, False]) assert get_domain('hiddenservice') == 'aaaaa.onion'
assert get_domain('abcdef') is None
on_domain_removed('', 'hiddenservice')
assert get_domain('hiddenservice') is None
@pytest.mark.usefixtures('clean_domains')
def test_get_enabled_services():
"""Test getting enabled services for a domain."""
on_domain_added('', 'domainname', 'bbbbb', '', ['http', 'https', 'ssh'])
assert get_enabled_services('domainname',
'bbbbb') == ['http', 'https', 'ssh']
assert get_enabled_services('xxxxx', 'yyyyy') == []
assert get_enabled_services('domainname', 'zzzzz') == []
@pytest.mark.usefixtures('clean_domains')
def test_get_services_status():
"""Test getting whether each service is enabled for a domain."""
on_domain_added('', 'pagekite', 'ccccc.pagekite.me', '', ['http', 'https'])
assert get_services_status('pagekite', 'ccccc.pagekite.me') == \
[True, True, False]