1# 2# Setup_Schema 3# 4-->macro Setup_Schema 5stmtadmin create_collection {"schema":"xtest", "name":"xdoc"}; 6recvresult; 7varlet %RESULT_PATCH_STRING% {"a": "foo", "_id": 1}; 8varlet %RESULT_PATCH_NULL% {"a": "foo", "_id": 1}; 9varlet %RESULT_PATCH_ARRAY% {"a": "foo", "_id": 1}; 10varlet %RESULT_PATCH_ID% {"a": "foo", "_id": 1}; 11varlet %OBJECT% Collection1; 12varlet %OBJECT_COLUMN% ; 13-->endmacro 14 15 16# 17# Document_UpdatePatch_Find 18# 19-->macro Document_UpdatePatch_Find %ERROR% %DOC% %PATCH% %EXPECT% 20echo # Verification of JSON patch [%DOC% patch %PATCH% = %EXPECT%]; 21quiet; 22noquery_result; 23callmacro Crud_insert Collection1 'xdoc' Row_octet '%DOC%'; 24callmacro Crud_update Collection1 'xdoc' Op_octets 25 MERGE_PATCH '%PATCH%'; 26callmacro Crud_find Collection1 'xdoc'; 27callmacro Crud_delete Collection1 'xdoc'; 28recvresult; 29expecterror %ERROR%; 30recvresult; 31recvtovar %RESULT%; 32recvresult; 33noquiet; 34query_result; 35assert_eq %EXPECT% %RESULT%; 36echo; 37-->endmacro 38 39 40# 41# Document_UpdatePatchObj_Find 42# 43-->macro Document_UpdatePatchObj_Find %ERROR% %DOC% %OBJ% %EXPECT% 44echo # Verification of JSON patch [%DOC% patch PROTOBUF_EXPR = %EXPECT%]; 45quiet; 46noquery_result; 47callmacro Crud_insert Collection1 'xdoc' Row_octet '%DOC%'; 48callmacro Crud_update Collection1 'xdoc' Op_object 49 MERGE_PATCH %OBJ%; 50callmacro Crud_find Collection1 'xdoc'; 51callmacro Crud_delete Collection1 'xdoc'; 52recvresult; 53expecterror %ERROR%; 54recvresult; 55recvtovar %RESULT%; 56recvresult; 57noquiet; 58query_result; 59assert_eq %EXPECT% %RESULT%; 60echo; 61-->endmacro 62 63 64# 65# Document_OnlyTable_UpdatePatch_Find 66# 67-->macro Document_OnlyTable_UpdatePatch_Find %ERROR% %DOC% %PATCH% %EXPECT% 68echo # Test not applicable:; 69echo # doc:%DOC% patch:%PATCH% result:%EXPECT%; 70echo # document can't be an array; 71-->endmacro 72 73 74# 75# DocumentNull_OnlyTable_UpdatePatch_Find 76# 77-->macro DocumentNull_OnlyTable_UpdatePatch_Find %ERROR% %DOC% %PATCH% %EXPECT% 78echo # Test not applicable:; 79echo # doc:%DOC% patch:%PATCH% result:%EXPECT%; 80echo # document can't be an array; 81-->endmacro 82 83