diff --git a/tests/python_client/requirements.txt b/tests/python_client/requirements.txt index e537ed53b1362851b6a90d320ccc40c23c1261f2..9980511f54e991074cc329178e90d54b04114f38 100644 --- a/tests/python_client/requirements.txt +++ b/tests/python_client/requirements.txt @@ -12,7 +12,7 @@ allure-pytest==2.7.0 pytest-print==0.2.1 pytest-level==0.1.1 pytest-xdist==2.5.0 -pymilvus==2.2.0.dev71 +pymilvus==2.2.0.dev72 pytest-rerunfailures==9.1.1 git+https://github.com/Projectplace/pytest-tags ndg-httpsclient diff --git a/tests/python_client/testcases/test_insert.py b/tests/python_client/testcases/test_insert.py index 573af6de1f19370a188a97bb5079e567adc37ffb..fdf4daa79bca8de60168a2ca2cf88f2a078273a3 100644 --- a/tests/python_client/testcases/test_insert.py +++ b/tests/python_client/testcases/test_insert.py @@ -81,7 +81,7 @@ class TestInsertParams(TestcaseBase): """ c_name = cf.gen_unique_str(prefix) collection_w = self.init_collection_wrap(name=c_name) - error = {ct.err_code: 0, ct.err_msg: "Data type is not support"} + error = {ct.err_code: 1, ct.err_msg: "The type of data should be list or pandas.DataFrame"} collection_w.insert(data=get_non_data_type, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -94,7 +94,8 @@ class TestInsertParams(TestcaseBase): """ c_name = cf.gen_unique_str(prefix) collection_w = self.init_collection_wrap(name=c_name) - error = {ct.err_code: 0, ct.err_msg: "The data fields number is not match with schema"} + error = {ct.err_code: 1, ct.err_msg: "The fields don't match with schema fields, " + "expected: ['int64', 'float', 'varchar', 'float_vector'], got %s" % data} collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -122,7 +123,7 @@ class TestInsertParams(TestcaseBase): collection_w = self.init_collection_wrap(name=c_name) df = cf.gen_default_dataframe_data(10) df.rename(columns={ct.default_int64_field_name: ' '}, inplace=True) - error = {ct.err_code: 0, ct.err_msg: "The types of schema and data do not match"} + error = {ct.err_code: 1, ct.err_msg: "The name of field don't match, expected: int64, got "} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -136,7 +137,7 @@ class TestInsertParams(TestcaseBase): collection_w = self.init_collection_wrap(name=c_name) df = cf.gen_default_dataframe_data(10) df.rename(columns={ct.default_int64_field_name: get_invalid_field_name}, inplace=True) - error = {ct.err_code: 0, ct.err_msg: "The types of schema and data do not match"} + error = {ct.err_code: 1, ct.err_msg: "The name of field don't match, expected: int64, got %s" % get_invalid_field_name} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) def test_insert_dataframe_index(self): @@ -260,7 +261,7 @@ class TestInsertParams(TestcaseBase): collection_w = self.init_collection_wrap(name=c_name) df = cf.gen_default_dataframe_data(10) df.rename(columns={ct.default_float_field_name: "int"}, inplace=True) - error = {ct.err_code: 0, ct.err_msg: 'The types of schema and data do not match'} + error = {ct.err_code: 1, ct.err_msg: "The name of field don't match, expected: float, got int"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -325,7 +326,9 @@ class TestInsertParams(TestcaseBase): df = cf.gen_default_dataframe_data(ct.default_nb) new_values = [i for i in range(ct.default_nb)] df.insert(3, 'new', new_values) - error = {ct.err_code: 0, ct.err_msg: 'The data fields number is not match with schema.'} + error = {ct.err_code: 1, ct.err_msg: "The fields don't match with schema fields, " + "expected: ['int64', 'float', 'varchar', 'float_vector'], " + "got ['int64', 'float', 'varchar', 'new', 'float_vector']"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -339,7 +342,9 @@ class TestInsertParams(TestcaseBase): collection_w = self.init_collection_wrap(name=c_name) df = cf.gen_default_dataframe_data(ct.default_nb) df.drop(ct.default_float_vec_field_name, axis=1, inplace=True) - error = {ct.err_code: 0, ct.err_msg: 'The data fields number is not match with schema.'} + error = {ct.err_code: 1, ct.err_msg: "The fields don't match with schema fields, " + "expected: ['int64', 'float', 'varchar', 'float_vector'], " + "got ['int64', 'float', 'varchar']"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -486,7 +491,7 @@ class TestInsertOperation(TestcaseBase): """ collection_w = self.init_collection_wrap(name=cf.gen_unique_str(prefix)) df = cf.gen_collection_schema_all_datatype - error = {ct.err_code: 0, ct.err_msg: "Data type is not support"} + error = {ct.err_code: 1, ct.err_msg: "The type of data should be list or pandas.DataFrame"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -528,7 +533,7 @@ class TestInsertOperation(TestcaseBase): field_one = cf.gen_int64_field(is_primary=True) field_two = cf.gen_int64_field() df = [field_one, field_two, vec_field] - error = {ct.err_code: 0, ct.err_msg: "Data type is not support."} + error = {ct.err_code: 1, ct.err_msg: "data should be a list of list"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L1) @@ -686,7 +691,7 @@ class TestInsertOperation(TestcaseBase): schema = cf.gen_default_collection_schema(auto_id=True) collection_w = self.init_collection_wrap(name=c_name, schema=schema) df = cf.gen_default_dataframe_data(nb=100) - error = {ct.err_code: 0, ct.err_msg: 'Auto_id is True, primary field should not have data'} + error = {ct.err_code: 1, ct.err_msg: "Please don't provide data for auto_id primary field: int64"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) assert collection_w.is_empty @@ -701,7 +706,8 @@ class TestInsertOperation(TestcaseBase): schema = cf.gen_default_collection_schema(auto_id=True) collection_w = self.init_collection_wrap(name=c_name, schema=schema) data = cf.gen_default_list_data(nb=100) - error = {ct.err_code: 0, ct.err_msg: 'The data fields number is not match with schema'} + error = {ct.err_code: 1, ct.err_msg: "The fields don't match with schema fields, " + "expected: ['float', 'varchar', 'float_vector'], got ['', '', '', '']"} collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error) assert collection_w.is_empty @@ -1058,7 +1064,7 @@ class TestInsertInvalidBinary(TestcaseBase): vec_field, _ = self.field_schema_wrap.init_field_schema(name=ct.default_binary_vec_field_name, dtype=DataType.BINARY_VECTOR) df = [field_one, field_two, vec_field] - error = {ct.err_code: 0, ct.err_msg: "Data type is not support."} + error = {ct.err_code: 1, ct.err_msg: "data should be a list of list"} mutation_res, _ = collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L2) @@ -1132,7 +1138,7 @@ class TestInsertString(TestcaseBase): df = cf.gen_default_dataframe_data(nb) new_float_value = pd.Series(data=[float(i) for i in range(nb)], dtype="float64") df.iloc[:, 2] = new_float_value - error = {ct.err_code: 0, ct.err_msg: 'The types of schema and data do not match'} + error = {ct.err_code: 1, ct.err_msg: "The data type of field varchar doesn't match, expected: VARCHAR, got DOUBLE"} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L0) @@ -1146,7 +1152,7 @@ class TestInsertString(TestcaseBase): c_name = cf.gen_unique_str(prefix) collection_w = self.init_collection_wrap(name=c_name) df = [cf.gen_int64_field(), cf.gen_string_field(name=ct.get_invalid_strs), cf.gen_float_vec_field()] - error = {ct.err_code: 0, ct.err_msg: 'Data type is not support.'} + error = {ct.err_code: 1, ct.err_msg: 'data should be a list of list'} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L0) @@ -1165,7 +1171,7 @@ class TestInsertString(TestcaseBase): field_three = cf.gen_string_field(max_length=nums) vec_field = cf.gen_float_vec_field() df = [field_one, field_two, field_three, vec_field] - error = {ct.err_code: 0, ct.err_msg: 'Data type is not support.'} + error = {ct.err_code: 1, ct.err_msg: 'data should be a list of list'} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L1) @@ -1182,7 +1188,7 @@ class TestInsertString(TestcaseBase): int_field = cf.gen_int64_field(is_primary=True) vec_field = cf.gen_float_vec_field() df = [string_field, int_field, vec_field] - error = {ct.err_code: 0, ct.err_msg: 'Data type is not support.'} + error = {ct.err_code: 1, ct.err_msg: 'data should be a list of list'} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L1) @@ -1199,7 +1205,7 @@ class TestInsertString(TestcaseBase): vec_field = cf.gen_float_vec_field() string_field = cf.gen_string_field(is_primary=True, auto_id=True) df = [int_field, string_field, vec_field] - error = {ct.err_code: 0, ct.err_msg: 'Data type is not support.'} + error = {ct.err_code: 1, ct.err_msg: 'data should be a list of list'} collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) @pytest.mark.tags(CaseLabel.L1)