Merge pull request #48 from poikjhn/tests

Few more tests
This commit is contained in:
Arun Prakash Jana 2016-06-20 08:50:04 +05:30 committed by GitHub
commit c5ea5b3ed5
2 changed files with 52 additions and 7 deletions

View File

@ -92,18 +92,29 @@ class TestBukuDb(unittest.TestCase):
curr.close()
conn.close()
# @unittest.skip('skipping')
def test_add_and_retrieve_bookmark(self):
def test_get_bookmark_index(self):
bdb = BukuDb()
for idx, bookmark in enumerate(self.bookmarks):
# adding bookmark from self.bookmarks to database
bdb.add_bookmark(*bookmark)
# checking indexes
index = bdb.get_bookmark_index(bookmark[0])
self.assertEqual(idx + 1, index)
# asserting index is in order
idx_from_db = bdb.get_bookmark_index(bookmark[0])
self.assertEqual(idx + 1, idx_from_db)
# asserting -1 is returned for nonexistent url
idx_from_db = bdb.get_bookmark_index("http://nonexistent.url")
self.assertEqual(-1, idx_from_db)
# @unittest.skip('skipping')
def test_add_bookmark(self):
bdb = BukuDb()
for bookmark in self.bookmarks:
# adding bookmark from self.bookmarks to database
bdb.add_bookmark(*bookmark)
# retrieving bookmark from database
index = bdb.get_bookmark_index(bookmark[0])
from_db = bdb.get_bookmark_by_index(index)
self.assertIsNotNone(from_db)
# comparing data

View File

@ -4,7 +4,7 @@ import imp, unittest
buku = imp.load_source('buku', '../buku')
from buku import parse_tags
from buku import *
class TestHelpers(unittest.TestCase):
@ -33,6 +33,40 @@ class TestHelpers(unittest.TestCase):
parsed = parse_tags([",,z_tag, a tag ,\t,,, ,n_tag ,n_tag, a_tag, \na tag ,\r, \"a_tag\""])
self.assertEqual(parsed, ",\"a_tag\",a tag,a_tag,n_tag,z_tag,")
# @unittest.skip('skipping')
def test_is_int(self):
self.assertTrue(is_int('0'))
self.assertTrue(is_int('1'))
self.assertTrue(is_int('-1'))
self.assertFalse(is_int(''))
self.assertFalse(is_int('one'))
def test_sigint_handler(capsys):
try:
# sending SIGINT to self
os.kill(os.getpid(), signal.SIGINT)
except SystemExit as error:
out, err = capsys.readouterr()
# assering exited with 1
assert error.args[0] == 1
# assering proper error message
assert out == ''
assert err == "\nInterrupted.\n"
def test_printmsg(capsys):
# call with two args
printmsg("test", "ERROR")
out, err = capsys.readouterr()
assert out == "\x1b[1mERROR: \x1b[21mtest\x1b[0m\n"
assert err == ''
# call with one arg
printmsg("message")
out, err = capsys.readouterr()
assert out == "message\n"
assert err == ''
if __name__ == "__main__":
unittest.main()