def test_cube_desc(response): with open(f('cube_desc_v1.json')) as fd: v1_str = clean_json(fd.read()) with open(f('cube_desc_v2.json')) as fd: v2_str = clean_json(fd.read()) response.side_effect = [ MockResponse(v1_str), MockResponse(v2_str), MockResponse(v1_str), MockResponse(v2_str) ] assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v1', project='learn_kylin').cube_desc('kylin_sales_cube')) assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v2', project='learn_kylin').cube_desc('kylin_sales_cube'))
def test_users(response): with open(f('users_v2.json')) as fd: v2_str = clean_json(fd.read()) with pytest.raises(KAPOnlyError): kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v1').users() response.side_effect = [MockResponse(v2_str)] assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v2').users())
def test_tables(response): response.side_effect = [ MockResponse({}), MockResponse({ 'data': {}, 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').tables() v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').tables() assert v1 == v2
def test_projects(response): with open(f('projects_v1.json')) as fd: v1_str = clean_json(fd.read()) with open(f('projects_v2.json')) as fd: v2_str = clean_json(fd.read()) response.side_effect = [MockResponse(v1_str), MockResponse(v2_str)] assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v1').projects()) assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v2').projects())
def test_users(response): with pytest.raises(KAPOnlyError): kylinpy.Kylinpy('host', 'username', 'password', version='v1').users() response.side_effect = [ MockResponse({ 'data': { 'users': [] }, 'code': 000, 'msg': '' }) ] v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').users() assert v2 == {'data': []}
def test_projects(response): response.side_effect = [ MockResponse([]), MockResponse({ 'data': { 'projects': [] }, 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').projects() v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').projects() assert v1 == v2
def test_cube_desc(response): response.side_effect = [ MockResponse({}), MockResponse({ 'data': { 'cube': {} }, 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').cube_desc('cube_name') v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').cube_desc('cube_name') assert v1 == v2
def test_cube_desc(): response = Mock() response.body = [] response.headers = {} Client.fetch = Mock(return_value=response) v1 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v1').cube_desc('cube_name') response = Mock() response.body = {'data': {'cube': []}, 'code': 000, 'msg': ''} response.headers = {} v2 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v2').cube_desc('cube_name') assert v1 == v2
def test_authentication(response): response.side_effect = [ MockResponse({'userDetails': { 'authorities': {} }}), MockResponse({ 'data': { 'authorities': {} }, 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').authentication() v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').authentication() assert v1 == v2
def test_get_table_names(response): response.side_effect = [ MockResponse([{ 'table_NAME': 'table1' }]), MockResponse({ 'data': [{ 'table_NAME': 'table1' }], 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').get_table_names() v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').get_table_names() assert v1 == v2
def test_tables_and_columns(): response = Mock() response.body = [] response.headers = {} Client.fetch = Mock(return_value=response) v1 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v1').tables_and_columns() response = Mock() response.body = {'data': [], 'code': 000, 'msg': ''} response.headers = {} Client.fetch = Mock(return_value=response) v2 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v2').tables_and_columns() assert v1 == v2
def test_authentication(): response = Mock() response.body = {'userDetails': {'authorities': {}}} response.headers = {} Client.fetch = Mock(return_value=response) v1 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v1').authentication() response = Mock() response.body = {'data': {'authorities': {}}, 'code': 000, 'msg': ''} response.headers = {} Client.fetch = Mock(return_value=response) v2 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v2').authentication() assert v1 == v2
def test_query(): response = Mock() response.body = {} response.headers = {} Client.fetch = Mock(return_value=response) v1 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v1').query('sql') response = Mock() response.body = {'data': {}, 'code': 000, 'msg': ''} response.headers = {} Client.fetch = Mock(return_value=response) v2 = kylinpy.Kylinpy(host='host', username='******', password='******', version='v2').query('sql') assert v1 == v2
def test_model_desc(response): response.side_effect = [ MockResponse([{ 'name': 'model_name' }]), MockResponse({ 'data': { 'model': { 'name': 'model_name' } }, 'code': 000, 'msg': '' }) ] v1 = kylinpy.Kylinpy('host', 'username', 'password', version='v1').model_desc('model_name') v2 = kylinpy.Kylinpy('host', 'username', 'password', version='v2').model_desc('model_name') assert v1 == v2
def test_tables_and_columns(response): with open(f('tables_and_columns_v1.json')) as fd: v1_str = clean_json(fd.read()) with open(f('tables_and_columns_v2.json')) as fd: v2_str = clean_json(fd.read()) response.side_effect = [MockResponse(v1_str), MockResponse(v2_str)] assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v1', project='learn_kylin').tables_and_columns()) assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v2', project='learn_kylin').tables_and_columns())
def test_query(response): with open(f('query_v1.json')) as fd: v1_str = clean_json(fd.read()) with open(f('query_v2.json')) as fd: v2_str = clean_json(fd.read()) sql = "select count(*) from KYLIN_ACCOUNT" response.side_effect = [MockResponse(v1_str), MockResponse(v2_str)] assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', project='learn_kylin', version='v1').query(sql)) assert check_response( kylinpy.Kylinpy('host', 7070, 'username', 'password', project='learn_kylin', version='v2').query(sql))
def test_get_table_names_v2(response): with open(f('tables_and_columns_v2.json')) as fd: v2_str = clean_json(fd.read()) with open(f('get_table_names_v2.json')) as fd: get_table_names_str = clean_json(fd.read()) response.side_effect = [MockResponse(v2_str)] assert to_str( kylinpy.Kylinpy( 'host', 7070, 'username', 'password', version='v2', project='learn_kylin').get_table_names()) == get_table_names_str
def test_get_table_columns_v1(response): with open(f('tables_and_columns_v1.json')) as fd: v1_step1 = clean_json(fd.read()) with open(f('tables_v1.json')) as fd: v1_step2 = clean_json(fd.read()) with open(f('get_table_columns_v1.json')) as fd: get_table_columns_v1_str = clean_json(fd.read()) response.side_effect = [MockResponse(v1_step1), MockResponse(v1_step2)] assert to_str( kylinpy.Kylinpy('host', 7070, 'username', 'password', version='v1', project='learn_kylin').get_table_columns( 'KYLIN_SALES')) == get_table_columns_v1_str