Source code for carepoint.tests.db.test_db

# -*- coding: utf-8 -*-
# Copyright 2015-TODAY LasLabs Inc.
# License MIT (https://opensource.org/licenses/MIT).

import unittest
import mock
from urllib import quote_plus as urlquote
from carepoint.db import Db


[docs]class TestDb(unittest.TestCase):
[docs] def setUp(self, ): self.params = { 'usr': 'This is a user', 'pass': '23243dsc dxcsdkc ewr239Copyright', 'srv': 'server', 'drv': 'drv', 'db': 'db', 'prt': 'port', } self.dsn = 'mssql+pyodbc://{usr}:{pass}@{srv}:{prt}/{db}?driver={drv}'
[docs] @mock.patch('carepoint.db.db.create_engine') def test_mssql_dsn(self, mk): Db( self.params['srv'], self.params['usr'], self.params['pass'], self.params['db'], self.params['prt'], self.params['drv'], ) self.params['usr'] = urlquote(self.params['usr']) self.params['pass'] = urlquote(self.params['pass']) mk.assert_called_once_with(self.dsn.format(**self.params))
[docs] @mock.patch('carepoint.db.db.create_engine') def test_mssql_dsn_return(self, mk): res = Db( self.params['srv'], self.params['usr'], self.params['pass'], self.params['db'], self.params['prt'], self.params['drv'], ) self.assertEqual(mk(), res)
[docs] @mock.patch('carepoint.db.db.create_engine') def test_sqlite_dsn(self, mk): Db(drv='sqlite') mk.assert_called_once_with('sqlite://')
[docs] @mock.patch('carepoint.db.db.create_engine') def test_sqlite_dsn_return(self, mk): res = Db(drv='sqlite') self.assertEqual(mk(), res)