def test_dsn_all_explicit(): params = dsn_to_params('clickhouse://*****:*****@pet:12345/warehouse') assert params == { 'url': 'http://pet:12345', 'database': 'warehouse', 'user': '******', 'password': '******', }
def test_dsn_quoted(): params = dsn_to_params('clickhouse://n%40me:6p_%2FD%21h@h%6Fst/db%5Fname') assert params == { 'url': 'http://host:8123', 'database': 'db_name', 'user': '******', 'password': '******', }
def test_dsn_default_port(): params = dsn_to_params('clickhouse://pet') assert params['url'] == 'http://pet:8123'
def test_dsn_wrong_scheme(): with pytest.raises(ValueError): dsn_to_params('postgresql://db')