未验证 提交 d53b232a 编写于 作者: T ThreadDao 提交者: GitHub

update cases (#6179)

Signed-off-by: NThreadDao <yufen.zong@zilliz.com>
上级 3a202cad
...@@ -61,7 +61,7 @@ class ResponseChecker: ...@@ -61,7 +61,7 @@ class ResponseChecker:
assert len(error_dict) > 0 assert len(error_dict) > 0
if isinstance(res, Error): if isinstance(res, Error):
error_code = error_dict[ct.err_code] error_code = error_dict[ct.err_code]
assert res.code == error_code and error_dict[ct.err_msg] in res.message assert res.code == error_code or error_dict[ct.err_msg] in res.message
else: else:
log.error("[CheckFunc] Response of API is not an error: %s" % str(res)) log.error("[CheckFunc] Response of API is not an error: %s" % str(res))
assert False assert False
......
...@@ -42,7 +42,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -42,7 +42,7 @@ class TestCollectionParams(TestcaseBase):
@pytest.fixture(scope="function", params=ct.get_invalid_strs) @pytest.fixture(scope="function", params=ct.get_invalid_strs)
def get_invalid_dim(self, request): def get_invalid_dim(self, request):
if request.param == 1: if request.param == 1:
pytest.skip("i is valid dim") pytest.skip("1 is valid dim")
yield request.param yield request.param
@pytest.mark.tags(CaseLabel.L0) @pytest.mark.tags(CaseLabel.L0)
...@@ -61,6 +61,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -61,6 +61,7 @@ class TestCollectionParams(TestcaseBase):
assert c_name, _ in self.utility_wrap.list_collections() assert c_name, _ in self.utility_wrap.list_collections()
@pytest.mark.tags(CaseLabel.L0) @pytest.mark.tags(CaseLabel.L0)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_empty_name(self): def test_collection_empty_name(self):
""" """
target: test collection with empty name target: test collection with empty name
...@@ -69,11 +70,12 @@ class TestCollectionParams(TestcaseBase): ...@@ -69,11 +70,12 @@ class TestCollectionParams(TestcaseBase):
""" """
self._connect() self._connect()
c_name = "" c_name = ""
error = {ct.err_code: 1, ct.err_msg: "value is illegal"} error = {ct.err_code: 1, ct.err_msg: f'`collection_name` value is illegal'}
self.collection_wrap.init_collection(c_name, schema=default_schema, check_task=CheckTasks.err_res, self.collection_wrap.init_collection(c_name, schema=default_schema, check_task=CheckTasks.err_res,
check_items=error) check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
@pytest.mark.parametrize("name", [[], 1, [1, "2", 3], (1,), {1: 1}, None]) @pytest.mark.parametrize("name", [[], 1, [1, "2", 3], (1,), {1: 1}, None])
def test_collection_illegal_name(self, name): def test_collection_illegal_name(self, name):
""" """
...@@ -148,8 +150,8 @@ class TestCollectionParams(TestcaseBase): ...@@ -148,8 +150,8 @@ class TestCollectionParams(TestcaseBase):
check_items={exp_name: c_name, exp_schema: default_schema}) check_items={exp_name: c_name, exp_schema: default_schema})
fields = [cf.gen_int64_field(is_primary=True)] fields = [cf.gen_int64_field(is_primary=True)]
schema = cf.gen_collection_schema(fields=fields) schema = cf.gen_collection_schema(fields=fields)
error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema isnot the same as the " error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema is not the same as the "
"schema passed in"} "schema passed in."}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -171,8 +173,8 @@ class TestCollectionParams(TestcaseBase): ...@@ -171,8 +173,8 @@ class TestCollectionParams(TestcaseBase):
check_items={exp_name: c_name, exp_schema: schema, check_items={exp_name: c_name, exp_schema: schema,
exp_primary: int_field_one.name}) exp_primary: int_field_one.name})
new_schema = cf.gen_collection_schema(fields, primary_field=int_field_two.name) new_schema = cf.gen_collection_schema(fields, primary_field=int_field_two.name)
error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema isnot the same as the " error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema is not the same as the "
"schema passed in"} "schema passed in."}
self.collection_wrap.init_collection(c_name, schema=new_schema, check_task=CheckTasks.err_res, self.collection_wrap.init_collection(c_name, schema=new_schema, check_task=CheckTasks.err_res,
check_items=error) check_items=error)
assert collection_w.primary_field.name == int_field_one.name assert collection_w.primary_field.name == int_field_one.name
...@@ -192,7 +194,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -192,7 +194,7 @@ class TestCollectionParams(TestcaseBase):
schema = cf.gen_default_collection_schema() schema = cf.gen_default_collection_schema()
new_fields = cf.gen_float_vec_field(dim=new_dim) new_fields = cf.gen_float_vec_field(dim=new_dim)
schema.fields[-1] = new_fields schema.fields[-1] = new_fields
error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema isnot the same as the " error = {ct.err_code: 0, ct.err_msg: "The collection already exist, but the schema is not the same as the "
"schema passed in."} "schema passed in."}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
dim = collection_w.schema.fields[-1].params['dim'] dim = collection_w.schema.fields[-1].params['dim']
...@@ -266,7 +268,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -266,7 +268,7 @@ class TestCollectionParams(TestcaseBase):
""" """
self._connect() self._connect()
fields = get_invalid_type_fields fields = get_invalid_type_fields
error = {ct.err_code: 1, ct.err_msg: "The fields of schema must be type list"} error = {ct.err_code: 0, ct.err_msg: "The fields of schema must be type list"}
self.collection_schema_wrap.init_collection_schema(fields=fields, self.collection_schema_wrap.init_collection_schema(fields=fields,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -278,11 +280,12 @@ class TestCollectionParams(TestcaseBase): ...@@ -278,11 +280,12 @@ class TestCollectionParams(TestcaseBase):
expected: raise exception expected: raise exception
""" """
self._connect() self._connect()
error = {ct.err_code: 0, ct.err_msg: "Field type not support <DataType.UNKNOWN: 999"} error = {ct.err_code: 0, ct.err_msg: "Field dtype must be of DataType"}
self.field_schema_wrap.init_field_schema(name="unknown", dtype=DataType.UNKNOWN, self.field_schema_wrap.init_field_schema(name="unknown", dtype=DataType.UNKNOWN,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
@pytest.mark.parametrize("name", [[], 1, (1,), {1: 1}, "12-s"]) @pytest.mark.parametrize("name", [[], 1, (1,), {1: 1}, "12-s"])
def test_collection_invalid_type_field(self, name): def test_collection_invalid_type_field(self, name):
""" """
...@@ -315,6 +318,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -315,6 +318,7 @@ class TestCollectionParams(TestcaseBase):
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_none_field_name(self): def test_collection_none_field_name(self):
""" """
target: test field schema with None name target: test field schema with None name
...@@ -337,11 +341,12 @@ class TestCollectionParams(TestcaseBase): ...@@ -337,11 +341,12 @@ class TestCollectionParams(TestcaseBase):
expected: raise exception expected: raise exception
""" """
self._connect() self._connect()
error = {ct.err_code: 0, ct.err_msg: "Field type must be of DataType"} error = {ct.err_code: 0, ct.err_msg: "Field dtype must be of DataType"}
self.field_schema_wrap.init_field_schema(name="test", dtype=dtype, is_primary=True, self.field_schema_wrap.init_field_schema(name="test", dtype=dtype, is_primary=True,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L2) @pytest.mark.tags(CaseLabel.L2)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_field_dtype_float_value(self): def test_collection_field_dtype_float_value(self):
""" """
target: test collection with float type target: test collection with float type
...@@ -353,7 +358,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -353,7 +358,7 @@ class TestCollectionParams(TestcaseBase):
field, _ = self.field_schema_wrap.init_field_schema(name=ct.default_int64_field_name, dtype=5.0, field, _ = self.field_schema_wrap.init_field_schema(name=ct.default_int64_field_name, dtype=5.0,
is_primary=True) is_primary=True)
schema = cf.gen_collection_schema(fields=[field, cf.gen_float_vec_field()]) schema = cf.gen_collection_schema(fields=[field, cf.gen_float_vec_field()])
error = {ct.err_code: 0, ct.err_msg: "Field type must be of DataType"} error = {ct.err_code: 0, ct.err_msg: "Field type must be of DataType!"}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L0) @pytest.mark.tags(CaseLabel.L0)
...@@ -364,7 +369,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -364,7 +369,7 @@ class TestCollectionParams(TestcaseBase):
expected: exception expected: exception
""" """
self._connect() self._connect()
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema(fields=[], primary_field=ct.default_int64_field_name, self.collection_schema_wrap.init_collection_schema(fields=[], primary_field=ct.default_int64_field_name,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -434,7 +439,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -434,7 +439,7 @@ class TestCollectionParams(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
schema = cf.gen_collection_schema([cf.gen_int64_field(is_primary=True)]) schema = cf.gen_collection_schema([cf.gen_int64_field(is_primary=True)])
error = {ct.err_code: 0, ct.err_msg: "The schema must have vector column"} error = {ct.err_code: 0, ct.err_msg: "No vector field is found."}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -448,7 +453,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -448,7 +453,7 @@ class TestCollectionParams(TestcaseBase):
int_fields, _ = self.field_schema_wrap.init_field_schema(name=ct.default_int64_field_name, dtype=DataType.INT64) int_fields, _ = self.field_schema_wrap.init_field_schema(name=ct.default_int64_field_name, dtype=DataType.INT64)
vec_fields, _ = self.field_schema_wrap.init_field_schema(name=ct.default_float_vec_field_name, vec_fields, _ = self.field_schema_wrap.init_field_schema(name=ct.default_float_vec_field_name,
dtype=DataType.FLOAT_VECTOR, dim=ct.default_dim) dtype=DataType.FLOAT_VECTOR, dim=ct.default_dim)
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema([int_fields, vec_fields], self.collection_schema_wrap.init_collection_schema([int_fields, vec_fields],
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -462,7 +467,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -462,7 +467,7 @@ class TestCollectionParams(TestcaseBase):
self._connect() self._connect()
fields = [cf.gen_int64_field(is_primary=False), cf.gen_float_field(is_primary=False), fields = [cf.gen_int64_field(is_primary=False), cf.gen_float_field(is_primary=False),
cf.gen_float_vec_field(is_primary=False)] cf.gen_float_vec_field(is_primary=False)]
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema(fields, check_task=CheckTasks.err_res, check_items=error) self.collection_schema_wrap.init_collection_schema(fields, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -489,7 +494,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -489,7 +494,7 @@ class TestCollectionParams(TestcaseBase):
""" """
self._connect() self._connect()
fields = [cf.gen_int64_field(), cf.gen_float_vec_field()] fields = [cf.gen_int64_field(), cf.gen_float_vec_field()]
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema(fields=fields, primary_field=primary_field, self.collection_schema_wrap.init_collection_schema(fields=fields, primary_field=primary_field,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -503,7 +508,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -503,7 +508,7 @@ class TestCollectionParams(TestcaseBase):
""" """
self._connect() self._connect()
fields = [cf.gen_int64_field(), cf.gen_float_vec_field()] fields = [cf.gen_int64_field(), cf.gen_float_vec_field()]
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema(fields, primary_field=primary_field, self.collection_schema_wrap.init_collection_schema(fields, primary_field=primary_field,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -517,7 +522,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -517,7 +522,7 @@ class TestCollectionParams(TestcaseBase):
self._connect() self._connect()
fake_field = cf.gen_unique_str() fake_field = cf.gen_unique_str()
fields = [cf.gen_int64_field(), cf.gen_float_vec_field()] fields = [cf.gen_int64_field(), cf.gen_float_vec_field()]
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_schema_wrap.init_collection_schema(fields, primary_field=fake_field, self.collection_schema_wrap.init_collection_schema(fields, primary_field=fake_field,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -549,6 +554,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -549,6 +554,7 @@ class TestCollectionParams(TestcaseBase):
assert self.collection_wrap.primary_field.name == ct.default_int64_field_name assert self.collection_wrap.primary_field.name == ct.default_int64_field_name
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_unsupported_primary_field(self, get_unsupported_primary_field): def test_collection_unsupported_primary_field(self, get_unsupported_primary_field):
""" """
target: test collection with unsupported primary field type target: test collection with unsupported primary field type
...@@ -753,10 +759,11 @@ class TestCollectionParams(TestcaseBase): ...@@ -753,10 +759,11 @@ class TestCollectionParams(TestcaseBase):
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
float_vec_field, _ = self.field_schema_wrap.init_field_schema(name="vec", dtype=dtype) float_vec_field, _ = self.field_schema_wrap.init_field_schema(name="vec", dtype=dtype)
schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field]) schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field])
error = {ct.err_code: 0, ct.err_msg: "dimension is not defined in field type params"} error = {ct.err_code: 1, ct.err_msg: "dimension is not defined in field type params"}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_vector_invalid_dim(self, get_invalid_dim): def test_collection_vector_invalid_dim(self, get_invalid_dim):
""" """
target: test collection with invalid dimension target: test collection with invalid dimension
...@@ -767,7 +774,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -767,7 +774,7 @@ class TestCollectionParams(TestcaseBase):
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
float_vec_field = cf.gen_float_vec_field(dim=get_invalid_dim) float_vec_field = cf.gen_float_vec_field(dim=get_invalid_dim)
schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field]) schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field])
error = {ct.err_code: 0, ct.err_msg: f'invalid dim: {get_invalid_dim}'} error = {ct.err_code: 1, ct.err_msg: f'invalid dim: {get_invalid_dim}'}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -782,7 +789,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -782,7 +789,7 @@ class TestCollectionParams(TestcaseBase):
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
float_vec_field = cf.gen_float_vec_field(dim=dim) float_vec_field = cf.gen_float_vec_field(dim=dim)
schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field]) schema = cf.gen_collection_schema(fields=[cf.gen_int64_field(is_primary=True), float_vec_field])
error = {ct.err_code: 0, ct.err_msg: "invalid dimension: {}. should be in range 1 ~ 32768".format(dim)} error = {ct.err_code: 1, ct.err_msg: "invalid dimension: {}. should be in range 1 ~ 32768".format(dim)}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -815,6 +822,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -815,6 +822,7 @@ class TestCollectionParams(TestcaseBase):
check_items={exp_name: c_name, exp_schema: schema}) check_items={exp_name: c_name, exp_schema: schema})
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="exception not MilvusException")
def test_collection_none_desc(self): def test_collection_none_desc(self):
""" """
target: test collection with none description target: test collection with none description
...@@ -824,7 +832,7 @@ class TestCollectionParams(TestcaseBase): ...@@ -824,7 +832,7 @@ class TestCollectionParams(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
schema = cf.gen_default_collection_schema(description=None) schema = cf.gen_default_collection_schema(description=None)
error = {ct.err_code: 0, ct.err_msg: "expected one of: bytes, unicode"} error = {ct.err_code: 1, ct.err_msg: "None has type NoneType, but expected one of: bytes, unicode"}
self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.init_collection(c_name, schema=schema, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -918,7 +926,7 @@ class TestCollectionOperation(TestcaseBase): ...@@ -918,7 +926,7 @@ class TestCollectionOperation(TestcaseBase):
check_items={exp_name: c_name, exp_schema: default_schema}) check_items={exp_name: c_name, exp_schema: default_schema})
self.collection_wrap.drop() self.collection_wrap.drop()
assert not self.utility_wrap.has_collection(c_name)[0] assert not self.utility_wrap.has_collection(c_name)[0]
error = {ct.err_code: 0, ct.err_msg: "can't find collection"} error = {ct.err_code: 1, ct.err_msg: f'HasPartition failed: can\'t find collection: {c_name}'}
collection_w.has_partition("p", check_task=CheckTasks.err_res, check_items=error) collection_w.has_partition("p", check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -991,7 +999,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -991,7 +999,7 @@ class TestCollectionDataframe(TestcaseBase):
""" """
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
error = {ct.err_code: 0, ct.err_msg: "Dataframe can not be None!"} error = {ct.err_code: 0, ct.err_msg: "Dataframe can not be None."}
self.collection_wrap.construct_from_dataframe(c_name, None, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.construct_from_dataframe(c_name, None, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -1033,7 +1041,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -1033,7 +1041,7 @@ class TestCollectionDataframe(TestcaseBase):
""" """
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
error = {ct.err_code: 0, ct.err_msg: "Data type must be pandas.DataFrame!"} error = {ct.err_code: 0, ct.err_msg: "Data type must be pandas.DataFrame."}
df = get_non_df df = get_non_df
self.collection_wrap.construct_from_dataframe(c_name, df, check_task=CheckTasks.err_res, check_items=error) self.collection_wrap.construct_from_dataframe(c_name, df, check_task=CheckTasks.err_res, check_items=error)
...@@ -1047,7 +1055,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -1047,7 +1055,7 @@ class TestCollectionDataframe(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
df = pd.DataFrame({"date": pd.date_range('20210101', periods=3), ct.default_int64_field_name: [1, 2, 3]}) df = pd.DataFrame({"date": pd.date_range('20210101', periods=3), ct.default_int64_field_name: [1, 2, 3]})
error = {ct.err_code: 0, ct.err_msg: "Cannot infer schema from dataframe"} error = {ct.err_code: 0, ct.err_msg: "Cannot infer schema from empty dataframe."}
self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=ct.default_int64_field_name, self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=ct.default_int64_field_name,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -1075,7 +1083,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -1075,7 +1083,7 @@ class TestCollectionDataframe(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
df = cf.gen_default_dataframe_data(ct.default_nb) df = cf.gen_default_dataframe_data(ct.default_nb)
error = {ct.err_code: 0, ct.err_msg: "Schema must have a primary key field!"} error = {ct.err_code: 0, ct.err_msg: "Schema must have a primary key field."}
self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=None, self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=None,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -1089,7 +1097,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -1089,7 +1097,7 @@ class TestCollectionDataframe(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
df = cf.gen_default_dataframe_data(ct.default_nb) df = cf.gen_default_dataframe_data(ct.default_nb)
error = {ct.err_code: 0, ct.err_msg: "Must be have a primary key field"} error = {ct.err_code: 0, ct.err_msg: "Primary field must in dataframe."}
self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=c_name, self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=c_name,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
...@@ -1117,7 +1125,7 @@ class TestCollectionDataframe(TestcaseBase): ...@@ -1117,7 +1125,7 @@ class TestCollectionDataframe(TestcaseBase):
self._connect() self._connect()
c_name = cf.gen_unique_str(prefix) c_name = cf.gen_unique_str(prefix)
df = cf.gen_default_dataframe_data(nb=100) df = cf.gen_default_dataframe_data(nb=100)
error = {ct.err_code: 0, ct.err_msg: "Auto_id is True, but get the data of primary key field"} error = {ct.err_code: 0, ct.err_msg: "Auto_id is True, primary field should not have data."}
self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=ct.default_int64_field_name, self.collection_wrap.construct_from_dataframe(c_name, df, primary_field=ct.default_int64_field_name,
auto_id=True, check_task=CheckTasks.err_res, check_items=error) auto_id=True, check_task=CheckTasks.err_res, check_items=error)
......
...@@ -289,7 +289,7 @@ class TestInsertParams(TestcaseBase): ...@@ -289,7 +289,7 @@ class TestInsertParams(TestcaseBase):
float_values = [np.float32(i) for i in range(nb)] float_values = [np.float32(i) for i in range(nb)]
float_vec_values = cf.gen_vectors(nb, ct.default_dim) float_vec_values = cf.gen_vectors(nb, ct.default_dim)
data = [int_values, float_values, float_vec_values] data = [int_values, float_values, float_vec_values]
error = {ct.err_code: 1, ct.err_msg: 'arrays must all be same length'} error = {ct.err_code: 0, ct.err_msg: 'Arrays must all be same length.'}
collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error) collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -306,7 +306,7 @@ class TestInsertParams(TestcaseBase): ...@@ -306,7 +306,7 @@ class TestInsertParams(TestcaseBase):
float_values = [np.float32(i) for i in range(nb)] float_values = [np.float32(i) for i in range(nb)]
float_vec_values = cf.gen_vectors(nb - 1, ct.default_dim) float_vec_values = cf.gen_vectors(nb - 1, ct.default_dim)
data = [int_values, float_values, float_vec_values] data = [int_values, float_values, float_vec_values]
error = {ct.err_code: 1, ct.err_msg: 'arrays must all be same length'} error = {ct.err_code: 0, ct.err_msg: 'Arrays must all be same length.'}
collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error) collection_w.insert(data=data, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -321,7 +321,7 @@ class TestInsertParams(TestcaseBase): ...@@ -321,7 +321,7 @@ class TestInsertParams(TestcaseBase):
df = cf.gen_default_dataframe_data(ct.default_nb) df = cf.gen_default_dataframe_data(ct.default_nb)
new_values = [i for i in range(ct.default_nb)] new_values = [i for i in range(ct.default_nb)]
df.insert(3, 'new', new_values) df.insert(3, 'new', new_values)
error = {ct.err_code: 1, ct.err_msg: 'Column cnt not match with schema'} error = {ct.err_code: 0, ct.err_msg: 'The data fields number is not match with schema.'}
collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -335,7 +335,7 @@ class TestInsertParams(TestcaseBase): ...@@ -335,7 +335,7 @@ class TestInsertParams(TestcaseBase):
collection_w = self.init_collection_wrap(name=c_name) collection_w = self.init_collection_wrap(name=c_name)
df = cf.gen_default_dataframe_data(ct.default_nb) df = cf.gen_default_dataframe_data(ct.default_nb)
df.drop(ct.default_float_vec_field_name, axis=1, inplace=True) df.drop(ct.default_float_vec_field_name, axis=1, inplace=True)
error = {ct.err_code: 1, ct.err_msg: 'Column cnt not match with schema'} error = {ct.err_code: 0, ct.err_msg: 'The data fields number is not match with schema.'}
collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error) collection_w.insert(data=df, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
......
...@@ -109,7 +109,6 @@ class TestQueryBase(TestcaseBase): ...@@ -109,7 +109,6 @@ class TestQueryBase(TestcaseBase):
collection_w.query(expr, check_task=CheckTasks.err_res, check_items=error) collection_w.query(expr, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="#6046")
@pytest.mark.parametrize("expr", ["12-s", "中文", "a", " "]) @pytest.mark.parametrize("expr", ["12-s", "中文", "a", " "])
def test_query_expr_invalid_string(self, expr): def test_query_expr_invalid_string(self, expr):
""" """
...@@ -118,7 +117,7 @@ class TestQueryBase(TestcaseBase): ...@@ -118,7 +117,7 @@ class TestQueryBase(TestcaseBase):
expected: raise exception expected: raise exception
""" """
collection_w, vectors, _, = self.init_collection_general(prefix, insert_data=True) collection_w, vectors, _, = self.init_collection_general(prefix, insert_data=True)
error = {ct.err_code: 1, ct.err_msg: "invalid expr"} error = {ct.err_code: 1, ct.err_msg: "Invalid expression!"}
collection_w.query(expr, check_task=CheckTasks.err_res, check_items=error) collection_w.query(expr, check_task=CheckTasks.err_res, check_items=error)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
...@@ -298,7 +297,6 @@ class TestQueryBase(TestcaseBase): ...@@ -298,7 +297,6 @@ class TestQueryBase(TestcaseBase):
assert set(res_1[0].keys()) == set(fields) assert set(res_1[0].keys()) == set(fields)
@pytest.mark.tags(CaseLabel.L1) @pytest.mark.tags(CaseLabel.L1)
@pytest.mark.xfail(reason="issue #6143")
@pytest.mark.parametrize("output_fields", [[ct.default_float_vec_field_name], @pytest.mark.parametrize("output_fields", [[ct.default_float_vec_field_name],
[ct.default_int64_field_name, ct.default_float_vec_field_name]]) [ct.default_int64_field_name, ct.default_float_vec_field_name]])
def test_query_output_vec_field(self, output_fields): def test_query_output_vec_field(self, output_fields):
...@@ -308,7 +306,7 @@ class TestQueryBase(TestcaseBase): ...@@ -308,7 +306,7 @@ class TestQueryBase(TestcaseBase):
expected: raise exception expected: raise exception
""" """
collection_w, vectors, _, = self.init_collection_general(prefix, insert_data=True) collection_w, vectors, _, = self.init_collection_general(prefix, insert_data=True)
error = {ct.err_code: 1, ct.err_msg: "unsupported leaf node"} error = {ct.err_code: 1, ct.err_msg: "Query does not support vector field currently"}
collection_w.query(default_term_expr, output_fields=output_fields, collection_w.query(default_term_expr, output_fields=output_fields,
check_task=CheckTasks.err_res, check_items=error) check_task=CheckTasks.err_res, check_items=error)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册