import pytest from helpers.cluster import ClickHouseCluster cluster = ClickHouseCluster(__file__) node = cluster.add_instance('node', main_configs=['configs/config.xml']) path_to_userfiles_from_defaut_config = "user_files" @pytest.fixture(scope="module") def start_cluster(): try: cluster.start() yield cluster finally: cluster.shutdown() def test_filepath(start_cluster): # 2 rows data some_data = "Test\t111.222\nData\t333.444" node.exec_in_container(['bash', '-c', 'mkdir -p {}'.format( path_to_userfiles_from_defaut_config )], privileged=True, user='root') node.exec_in_container(['bash', '-c', 'echo "{}" > {}'.format( some_data, path_to_userfiles_from_defaut_config + "/relative_user_file_test" )], privileged=True, user='root') test_requests = [("relative_user_file_test", "2"), ("../" + path_to_userfiles_from_defaut_config + "/relative_user_file_test", "2")] for pattern, value in test_requests: assert node.query(''' select count() from file('{}', 'TSV', 'text String, number Float64') '''.format(pattern)) == '{}\n'.format(value)