def test_invalid_config(): # A config instance with at least one property with value # equal to `None` is invalid config = Config() assert not config.is_valid config.database = None config.password = '******' assert not config.is_valid config.database = 'mydatabase' config.password = None assert not config.is_valid
def test_valid_config(): # The config object hold default values for host, port and user # database and password are set to None # So, adding a database and a password is the basic # properties that must be filled config = Config() config.database = 'mydatabase' config.password = '******' assert config.is_valid
def test_connection(mocker): from pgmboi import database # connection with a invalid config instance config = Config() assert not database.connect(config) # connection with invalid credentials config.database = 'database1' config.password = '******' assert not database.connect(config) # mock for a successful connection conn = mocker.patch('pgmboi.database.psycopg2.connect') conn().closed = 0 assert database.connect(config)