mirror of
https://github.com/nikdoof/pyzkb.git
synced 2025-12-13 18:22:14 +00:00
Added some initial tests, fixed a few minor issues.
This commit is contained in:
@@ -58,6 +58,7 @@ class ZKillboard(object):
|
||||
('no-items', False),
|
||||
('no-attackers', False),
|
||||
('api-only', False),
|
||||
('xml', False),
|
||||
)
|
||||
|
||||
_MODIFIERS = [x for x, y in _MODIFIER_DATA]
|
||||
@@ -79,11 +80,11 @@ class ZKillboard(object):
|
||||
raise InvalidModifier('%s is a unknown modifier' % mod_name)
|
||||
if args is None and mod_name.lower() in ZKillboard._MODIFIERS_ARGUMENT:
|
||||
raise InvalidModifier('%s requires a argument' % mod_name)
|
||||
if args and isinstance(args, list) and len(list) > 10:
|
||||
if args and isinstance(args, list) and len(args) > 10:
|
||||
raise ValueError('No more than 10 IDs are allowed at a time')
|
||||
x = copy.deepcopy(self)
|
||||
x._modifiers.append((mod_name, args))
|
||||
if mod_name == 'xml':
|
||||
if mod_name.lower() == 'xml':
|
||||
x._xml_format = True
|
||||
return x
|
||||
return modifier_func
|
||||
|
||||
@@ -10,16 +10,56 @@ Tests for `pyzkb` module.
|
||||
|
||||
import unittest
|
||||
|
||||
from pyzkb import pyzkb
|
||||
from pyzkb import ZKillboard, InvalidModifier
|
||||
|
||||
|
||||
class TestPyzkb(unittest.TestCase):
|
||||
class TestZKillboard(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
pass
|
||||
self.kb = ZKillboard()
|
||||
self.kb_noverification = ZKillboard(modifier_validation=False)
|
||||
|
||||
def test_something(self):
|
||||
pass
|
||||
def test_single_kill(self):
|
||||
headers, data = self.kb.get(killID=40403014)
|
||||
self.assertIsNotNone(data)
|
||||
self.assertTrue(isinstance(data, list))
|
||||
self.assertTrue(isinstance(data[0], dict))
|
||||
self.assertTrue(len(data) == 1)
|
||||
self.assertIn('killID', data[0])
|
||||
|
||||
def test_invalid_modifier(self):
|
||||
self.assertRaises(InvalidModifier, self.kb.blah)
|
||||
|
||||
def test_invalid_parameter_modifier(self):
|
||||
self.assertRaises(InvalidModifier, self.kb.solo, 1)
|
||||
|
||||
def test_no_parameter_modifier(self):
|
||||
self.assertRaises(InvalidModifier, self.kb.killID)
|
||||
|
||||
def test_too_many_ids(self):
|
||||
self.assertRaises(ValueError, self.kb.solarSystemID, [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 11])
|
||||
|
||||
def test_disabled_modifier_validation(self):
|
||||
try:
|
||||
self.kb_noverification.blah()
|
||||
except InvalidModifier:
|
||||
self.fail('Raise InvalidModifier unexpectedly.')
|
||||
|
||||
def test_disabled_modifier_validation_parameter(self):
|
||||
try:
|
||||
self.kb_noverification.blah(213123)
|
||||
except InvalidModifier:
|
||||
self.fail('Raise InvalidModifier unexpectedly.')
|
||||
|
||||
def test_no_writeback(self):
|
||||
x = self.kb.killID(40403014)
|
||||
self.assertTrue(len(self.kb._modifiers) == 0)
|
||||
self.assertTrue(len(x._modifiers) == 1)
|
||||
|
||||
def test_xml_format_set(self):
|
||||
self.kb.xml()
|
||||
self.assertTrue(len(self.kb._modifiers), 1)
|
||||
self.assertTrue(self.kb._xml_format)
|
||||
|
||||
def tearDown(self):
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user