Add partition tag in new cases (#5140)

* add partition tag in new cases

Signed-off-by: zw <zw@milvus.io>
pull/5166/head
del-zhenwu 2021-05-08 01:25:44 -05:00 committed by GitHub
parent e6955208ff
commit 9bf3cc74a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 162 additions and 2 deletions

View File

@ -30,7 +30,7 @@ pipeline {
LOWER_BUILD_TYPE = params.BUILD_TYPE.toLowerCase()
SEMVER = "${BRANCH_NAME.contains('/') ? BRANCH_NAME.substring(BRANCH_NAME.lastIndexOf('/') + 1) : BRANCH_NAME}"
PIPELINE_NAME = "milvus-ci"
HELM_BRANCH = "0.10.4"
HELM_BRANCH = "1.1"
}
stages {

View File

@ -873,6 +873,55 @@ class TestCollection:
status = connect.load_collection(collection, partition_tags=[partition_name])
assert status.OK()
@pytest.mark.level(1)
def test_load_release_collection_partition(self, connect, collection):
partition_name = gen_unique_str()
status = connect.create_partition(collection, partition_name)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=partition_name)
assert status.OK()
status = connect.load_collection(collection, partition_tags=[partition_name])
assert status.OK()
status = connect.release_collection(collection, partition_tags=[partition_name])
assert status.OK()
@pytest.mark.level(1)
def test_load_release_twice_collection_partition(self, connect, collection):
partition_name = gen_unique_str()
status = connect.create_partition(collection, partition_name)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=partition_name)
assert status.OK()
status = connect.load_collection(collection, partition_tags=[partition_name])
assert status.OK()
for i in range(2):
status = connect.release_collection(collection, partition_tags=[partition_name])
assert status.OK()
@pytest.mark.level(1)
def test_load_release_load_collection_partition(self, connect, collection):
partition_name = gen_unique_str()
status = connect.create_partition(collection, partition_name)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=partition_name)
assert status.OK()
status = connect.load_collection(collection, partition_tags=[partition_name])
assert status.OK()
status = connect.release_collection(collection, partition_tags=[partition_name])
assert status.OK()
status = connect.load_collection(collection, partition_tags=[partition_name])
assert status.OK()
@pytest.mark.level(1)
def test_not_load_release_collection_partition(self, connect, collection):
partition_name = gen_unique_str()
status = connect.create_partition(collection, partition_name)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=partition_name)
assert status.OK()
status = connect.release_collection(collection, partition_tags=[partition_name])
assert status.OK()
@pytest.mark.level(1)
def test_load_collection_partitions(self, connect, collection):
partition_names = []

View File

@ -144,6 +144,63 @@ class TestDeleteBase:
assert status.OK()
assert res[0][0].id == ids[0]
def test_delete_vector_from_partition(self, connect, collection):
'''
target: test.get_entity_by_id with partition params
method: add vector, and delete
expected: status ok
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=tag)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 2
status = connect.delete_entity_by_id(collection, ids[:length], partition_tag=tag)
assert status.OK()
status = connect.flush([collection])
status, res = connect.count_entities(collection)
assert status.OK()
assert res == nb-length
def test_delete_vector_from_partition_empty(self, connect, collection):
'''
target: test.get_entity_by_id with partition params
method: add vector, make sure no vector in partition, and delete
expected: status ok
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 1
status = connect.delete_entity_by_id(collection, ids[:length], partition_tag=tag)
assert status.OK()
# TODO:
def _test_delete_vector_from_partition_not_existed(self, connect, collection):
'''
target: test.get_entity_by_id with partition params, partition tag not existed
method: add vector, and delete
expected: status not
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=tag)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 1
tmp_tag = gen_unique_str()
status = connect.delete_entity_by_id(collection, ids[:length], partition_tag=tmp_tag)
assert not status.OK()
def test_delete_vector_collection_not_existed(self, connect, collection):
'''
target: test delete vector, params collection_name not existed

View File

@ -75,7 +75,7 @@ class TestGetBase:
status, res = connect.get_entity_by_id(collection, ids)
assert not status.OK()
def test_get_vector_partition(self, connect, collection):
def test_get_vector_with_partition(self, connect, collection):
'''
target: test.get_entity_by_id
method: add vector, and get
@ -94,6 +94,60 @@ class TestGetBase:
for i in range(length):
assert_equal_vector(res[i], vectors[i])
def test_get_vector_from_partition(self, connect, collection):
'''
target: test.get_entity_by_id with partition params
method: add vector, and get
expected: status ok, vector returned
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=tag)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 100
status, res = connect.get_entity_by_id(collection, ids[:length], partition_tag=tag)
assert status.OK()
for i in range(length):
assert_equal_vector(res[i], vectors[i])
def test_get_vector_from_partition_not_existed(self, connect, collection):
'''
target: test.get_entity_by_id with partition params, partition tag not existed
method: add vector, and get
expected: status not ok
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors, partition_tag=tag)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 100
tmp_tag = gen_unique_str()
status, res = connect.get_entity_by_id(collection, ids[:length], partition_tag=tmp_tag)
assert not status.OK()
def test_get_vector_from_partition_empty(self, connect, collection):
'''
target: test.get_entity_by_id with partition params
method: add vector, make sure no vector in partition, and get
expected: status not ok
'''
vectors = gen_vectors(nb, dim)
status = connect.create_partition(collection, tag)
assert status.OK()
status, ids = connect.insert(collection, vectors)
assert status.OK()
status = connect.flush([collection])
assert status.OK()
length = 100
status, res = connect.get_entity_by_id(collection, ids[:length], partition_tag=tag)
assert not status.OK()
def test_get_vector_multi_same_ids(self, connect, collection):
'''
target: test.get_entity_by_id