2021-02-11 21:34:44 +00:00
|
|
|
*** Settings ***
|
2021-12-09 10:58:51 +00:00
|
|
|
Variables common.py
|
|
|
|
|
2021-02-11 21:34:44 +00:00
|
|
|
Library Collections
|
2021-12-09 10:58:51 +00:00
|
|
|
Library neofs.py
|
|
|
|
Library payment_neogo.py
|
2021-06-01 12:07:31 +00:00
|
|
|
|
2021-02-11 21:34:44 +00:00
|
|
|
Resource common_steps_object.robot
|
2021-12-09 10:58:51 +00:00
|
|
|
Resource setup_teardown.robot
|
|
|
|
Resource payment_operations.robot
|
2021-02-11 21:34:44 +00:00
|
|
|
|
|
|
|
*** Test cases ***
|
2021-02-16 11:56:52 +00:00
|
|
|
NeoFS Complex Storagegroup
|
2021-02-11 21:34:44 +00:00
|
|
|
[Documentation] Testcase to validate NeoFS operations with Storagegroup.
|
|
|
|
[Tags] Object NeoFS NeoCLI
|
|
|
|
[Timeout] 20 min
|
|
|
|
|
2021-06-01 12:07:31 +00:00
|
|
|
[Setup] Setup
|
2021-04-26 10:30:40 +00:00
|
|
|
|
2021-06-01 12:07:31 +00:00
|
|
|
${WALLET} ${ADDR} ${WIF} = Init Wallet with Address ${ASSETS_DIR}
|
|
|
|
Payment Operations ${ADDR} ${WIF}
|
|
|
|
Prepare container ${WIF}
|
2021-02-11 21:34:44 +00:00
|
|
|
|
2021-04-26 10:30:40 +00:00
|
|
|
${FILE_S} = Generate file of bytes ${COMPLEX_OBJ_SIZE}
|
2021-04-06 14:18:48 +00:00
|
|
|
${FILE_HASH_S} = Get file hash ${FILE_S}
|
2021-02-11 21:34:44 +00:00
|
|
|
|
|
|
|
# Put two Simple Object
|
2021-06-01 12:07:31 +00:00
|
|
|
${S_OID_1} = Put object ${WIF} ${FILE_S} ${CID} ${EMPTY} ${EMPTY}
|
|
|
|
${S_OID_2} = Put object ${WIF} ${FILE_S} ${CID} ${EMPTY} ${FILE_USR_HEADER}
|
2021-04-26 10:30:40 +00:00
|
|
|
|
2021-05-04 09:27:43 +00:00
|
|
|
@{S_OBJ_ALL} = Create List ${S_OID_1} ${S_OID_2}
|
2021-04-26 10:30:40 +00:00
|
|
|
|
2021-02-11 21:34:44 +00:00
|
|
|
Log Storage group with 1 object
|
2021-06-01 12:07:31 +00:00
|
|
|
${SG_OID_1} = Put Storagegroup ${WIF} ${CID} ${EMPTY} ${S_OID_1}
|
|
|
|
List Storagegroup ${WIF} ${CID} ${EMPTY} ${SG_OID_1}
|
|
|
|
@{SPLIT_OBJ_1} = Get Split objects ${WIF} ${CID} ${S_OID_1}
|
|
|
|
Get Storagegroup ${WIF} ${CID} ${SG_OID_1} ${EMPTY} ${COMPLEX_OBJ_SIZE} @{SPLIT_OBJ_1}
|
|
|
|
${Tombstone} = Delete Storagegroup ${WIF} ${CID} ${SG_OID_1} ${EMPTY}
|
|
|
|
Verify Head tombstone ${WIF} ${CID} ${Tombstone} ${SG_OID_1} ${ADDR}
|
2021-04-26 10:30:40 +00:00
|
|
|
Run Keyword And Expect Error *
|
2021-06-01 12:07:31 +00:00
|
|
|
... Get Storagegroup ${WIF} ${CID} ${SG_OID_1} ${EMPTY} ${COMPLEX_OBJ_SIZE} @{SPLIT_OBJ_1}
|
|
|
|
List Storagegroup ${WIF} ${CID} ${EMPTY} @{EMPTY}
|
2021-02-11 21:34:44 +00:00
|
|
|
|
|
|
|
Log Storage group with 2 objects
|
2021-06-01 12:07:31 +00:00
|
|
|
${SG_OID_2} = Put Storagegroup ${WIF} ${CID} ${EMPTY} @{S_OBJ_ALL}
|
|
|
|
List Storagegroup ${WIF} ${CID} ${EMPTY} ${SG_OID_2}
|
|
|
|
@{SPLIT_OBJ_2} = Get Split objects ${WIF} ${CID} ${S_OID_2}
|
2021-02-11 21:34:44 +00:00
|
|
|
@{SPLIT_OBJ_ALL} = Combine Lists ${SPLIT_OBJ_1} ${SPLIT_OBJ_2}
|
2021-04-26 10:30:40 +00:00
|
|
|
${EXPECTED_SIZE} = Evaluate 2*${COMPLEX_OBJ_SIZE}
|
2021-06-01 12:07:31 +00:00
|
|
|
Get Storagegroup ${WIF} ${CID} ${SG_OID_2} ${EMPTY} ${EXPECTED_SIZE} @{SPLIT_OBJ_ALL}
|
|
|
|
${Tombstone} = Delete Storagegroup ${WIF} ${CID} ${SG_OID_2} ${EMPTY}
|
|
|
|
Verify Head tombstone ${WIF} ${CID} ${Tombstone} ${SG_OID_2} ${ADDR}
|
2021-04-26 10:30:40 +00:00
|
|
|
Run Keyword And Expect Error *
|
2021-06-01 12:07:31 +00:00
|
|
|
... Get Storagegroup ${WIF} ${CID} ${SG_OID_2} ${EMPTY} ${EXPECTED_SIZE} @{SPLIT_OBJ_ALL}
|
|
|
|
List Storagegroup ${WIF} ${CID} ${EMPTY} @{EMPTY}
|
2021-02-11 21:34:44 +00:00
|
|
|
|
|
|
|
Log Incorrect input
|
|
|
|
|
2021-04-26 10:30:40 +00:00
|
|
|
Run Keyword And Expect Error *
|
2021-06-01 12:07:31 +00:00
|
|
|
... Put Storagegroup ${WIF} ${CID} ${EMPTY} ${UNEXIST_OID}
|
2021-04-26 10:30:40 +00:00
|
|
|
Run Keyword And Expect Error *
|
2021-06-01 12:07:31 +00:00
|
|
|
... Delete Storagegroup ${WIF} ${CID} ${UNEXIST_OID} ${EMPTY}
|
2021-02-11 21:34:44 +00:00
|
|
|
|
2021-06-01 12:07:31 +00:00
|
|
|
[Teardown] Teardown object_storage_group_complex
|