improve tests and test coverage
parent
f5fb2fc37d
commit
23d99dd326
|
@ -17,25 +17,32 @@ class TestHs(unittest.TestCase):
|
||||||
data = search('john')
|
data = search('john')
|
||||||
|
|
||||||
assert len(data) >= 1
|
assert len(data) >= 1
|
||||||
assert 'uid' in data[0]
|
self.assertIn('uid', data[0])
|
||||||
assert 'cn' in data[0]
|
self.assertIn('cn', data[0])
|
||||||
|
|
||||||
def test_single(self):
|
def test_single(self):
|
||||||
input = Mock(group=lambda x: 'marchany')
|
input = Mock(group=lambda x: 'marchany')
|
||||||
hs(self.phenny, input)
|
hs(self.phenny, input)
|
||||||
|
|
||||||
out = self.phenny.reply.call_args[0][0]
|
pattern = re.compile(
|
||||||
m = re.match(
|
|
||||||
'^.* - http://search\.vt\.edu/search/person\.html\?person=\d+$',
|
'^.* - http://search\.vt\.edu/search/person\.html\?person=\d+$',
|
||||||
out, flags=re.UNICODE)
|
flags=re.UNICODE)
|
||||||
self.assertTrue(m)
|
out = self.phenny.reply.call_args[0][0]
|
||||||
|
self.assertRegex(out, pattern)
|
||||||
|
|
||||||
def test_multi(self):
|
def test_multi(self):
|
||||||
input = Mock(group=lambda x: 'john')
|
input = Mock(group=lambda x: 'john')
|
||||||
hs(self.phenny, input)
|
hs(self.phenny, input)
|
||||||
|
|
||||||
out = self.phenny.reply.call_args[0][0]
|
pattern = re.compile(
|
||||||
m = re.match(
|
|
||||||
'^Multiple results found; try http://search\.vt\.edu/search/people\.html\?q=.*$',
|
'^Multiple results found; try http://search\.vt\.edu/search/people\.html\?q=.*$',
|
||||||
out, flags=re.UNICODE)
|
flags=re.UNICODE)
|
||||||
self.assertTrue(m)
|
out = self.phenny.reply.call_args[0][0]
|
||||||
|
self.assertRegex(out, pattern)
|
||||||
|
|
||||||
|
def test_none(self):
|
||||||
|
input = Mock(group=lambda x: 'THIS_IS_NOT_A_REAL_SEARCH_QUERY')
|
||||||
|
hs(self.phenny, input)
|
||||||
|
|
||||||
|
out = self.phenny.reply.call_args[0][0]
|
||||||
|
self.phenny.reply.assert_called_once_with("No results found")
|
||||||
|
|
|
@ -25,6 +25,15 @@ class TestImdb(unittest.TestCase):
|
||||||
input = Mock(group=lambda x: 'Antitrust')
|
input = Mock(group=lambda x: 'Antitrust')
|
||||||
imdb(self.phenny, input)
|
imdb(self.phenny, input)
|
||||||
|
|
||||||
out = self.phenny.reply.call_args[0][0]
|
out = self.phenny.say.call_args[0][0]
|
||||||
m = re.match('^.* \(.*\): .* http://imdb.com/title/[a-z\d]+$', out, flags=re.UNICODE)
|
pattern = re.compile(
|
||||||
self.assertTrue(m)
|
r'^.* \(.*\): .* http://imdb.com/title/[a-z\d]+$',
|
||||||
|
flags=re.UNICODE)
|
||||||
|
self.assertRegex(out, pattern)
|
||||||
|
|
||||||
|
def test_imdb_none(self):
|
||||||
|
input = Mock(group=lambda x: None)
|
||||||
|
imdb(self.phenny, input)
|
||||||
|
|
||||||
|
self.phenny.say.assert_called_once_with(
|
||||||
|
".imdb what?")
|
||||||
|
|
|
@ -24,6 +24,10 @@ class TestMylife(unittest.TestCase):
|
||||||
mylife.mlib(self.phenny, None)
|
mylife.mlib(self.phenny, None)
|
||||||
assert self.phenny.say.called is True
|
assert self.phenny.say.called is True
|
||||||
|
|
||||||
|
def test_mlig(self):
|
||||||
|
mylife.mlib(self.phenny, None)
|
||||||
|
assert self.phenny.say.called is True
|
||||||
|
|
||||||
def test_mlih(self):
|
def test_mlih(self):
|
||||||
mylife.mlih(self.phenny, None)
|
mylife.mlih(self.phenny, None)
|
||||||
assert self.phenny.say.called is True
|
assert self.phenny.say.called is True
|
||||||
|
|
|
@ -16,6 +16,11 @@ class TestNsfw(unittest.TestCase):
|
||||||
def test_nsfw(self):
|
def test_nsfw(self):
|
||||||
input = Mock(group=lambda x: "test")
|
input = Mock(group=lambda x: "test")
|
||||||
nsfw(self.phenny, input)
|
nsfw(self.phenny, input)
|
||||||
|
|
||||||
self.phenny.say.assert_called_once_with(
|
self.phenny.say.assert_called_once_with(
|
||||||
"!!NSFW!! -> test <- !!NSFW!!")
|
"!!NSFW!! -> test <- !!NSFW!!")
|
||||||
|
|
||||||
|
def test_nsfw_none(self):
|
||||||
|
input = Mock(group=lambda x: None)
|
||||||
|
nsfw(self.phenny, input)
|
||||||
|
self.phenny.say.assert_called_once_with(
|
||||||
|
".nsfw <link> - for when a link isn't safe for work")
|
||||||
|
|
|
@ -15,5 +15,10 @@ class TestShort(unittest.TestCase):
|
||||||
def test_short(self):
|
def test_short(self):
|
||||||
input = Mock(group=lambda x: 'http://vtluug.org/')
|
input = Mock(group=lambda x: 'http://vtluug.org/')
|
||||||
short(self.phenny, input)
|
short(self.phenny, input)
|
||||||
|
|
||||||
self.phenny.reply.assert_called_once_with('http://vtlu.ug/bLQYAy')
|
self.phenny.reply.assert_called_once_with('http://vtlu.ug/bLQYAy')
|
||||||
|
|
||||||
|
def test_short_none(self):
|
||||||
|
input = Mock(group=lambda x: None)
|
||||||
|
short(self.phenny, input)
|
||||||
|
self.phenny.reply.assert_called_once_with(
|
||||||
|
"No URL provided. CAN I HAS?")
|
||||||
|
|
|
@ -14,12 +14,17 @@ class TestSlogan(unittest.TestCase):
|
||||||
|
|
||||||
def test_sloganize(self):
|
def test_sloganize(self):
|
||||||
out = sloganize('slogan')
|
out = sloganize('slogan')
|
||||||
|
self.assertRegex(out, ".*slogan.*")
|
||||||
assert len(out) > 0
|
|
||||||
|
|
||||||
def test_slogan(self):
|
def test_slogan(self):
|
||||||
input = Mock(group=lambda x: 'slogan')
|
input = Mock(group=lambda x: 'slogan')
|
||||||
slogan(self.phenny, input)
|
slogan(self.phenny, input)
|
||||||
out = self.phenny.say.call_args[0][0]
|
|
||||||
|
|
||||||
self.assertNotEqual(out, "Looks like an issue with sloganizer.net")
|
out = self.phenny.say.call_args[0][0]
|
||||||
|
self.assertRegex(out, ".*slogan.*")
|
||||||
|
|
||||||
|
def test_slogan_none(self):
|
||||||
|
input = Mock(group=lambda x: None)
|
||||||
|
slogan(self.phenny, input)
|
||||||
|
self.phenny.say.assert_called_once_with(
|
||||||
|
"You need to specify a word; try .slogan Granola")
|
||||||
|
|
Loading…
Reference in New Issue