mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-20 14:42:02 +00:00
48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
# coding: utf-8
|
|
|
|
import datetime
|
|
import math
|
|
import os
|
|
import time
|
|
|
|
import logging
|
|
import docker
|
|
import pytest
|
|
from docker.models.containers import Container
|
|
from helpers.cluster import ClickHouseCluster, get_docker_compose_path, run_and_check
|
|
|
|
SCRIPT_DIR = os.path.dirname(os.path.realpath(__file__))
|
|
DOCKER_COMPOSE_PATH = get_docker_compose_path()
|
|
|
|
cluster = ClickHouseCluster(__file__)
|
|
node = cluster.add_instance('node',
|
|
user_configs=["configs/users.xml"], env_variables={'UBSAN_OPTIONS': 'print_stacktrace=1'})
|
|
|
|
@pytest.fixture(scope="module")
|
|
def started_cluster():
|
|
cluster.start()
|
|
try:
|
|
yield cluster
|
|
finally:
|
|
cluster.shutdown()
|
|
|
|
|
|
@pytest.fixture(scope='module')
|
|
def dotnet_container():
|
|
docker_compose = os.path.join(DOCKER_COMPOSE_PATH, 'docker_compose_dotnet_client.yml')
|
|
run_and_check(
|
|
['docker-compose', '-p', cluster.project_name, '-f', docker_compose, 'up', '--no-recreate', '-d', '--no-build'])
|
|
yield docker.from_env().containers.get(cluster.project_name + '_dotnet1_1')
|
|
|
|
|
|
def test_dotnet_client(started_cluster, dotnet_container):
|
|
with open(os.path.join(SCRIPT_DIR, 'dotnet.reference'), 'rb') as fp:
|
|
reference = fp.read()
|
|
|
|
code, (stdout, stderr) = dotnet_container.exec_run(
|
|
'dotnet run --host {host} --port {port} --user default --password 123 --database default'
|
|
.format(host=started_cluster.get_instance_ip('node'), port=8123), demux=True)
|
|
|
|
assert code == 0
|
|
assert stdout == reference
|