提交 5b65066d 编写于 作者: W wangxiaomeng1357

<wangxiaomeng9@huawei.com>

Signed-off-by: Nwangxiaomeng1357 <wangxiaomeng9@huawei.com>
上级 493e29f3
...@@ -17,44 +17,49 @@ import distributedObject from '@ohos.data.distributedDataObject'; ...@@ -17,44 +17,49 @@ import distributedObject from '@ohos.data.distributedDataObject';
import abilityAccessCtrl from '@ohos.abilityAccessCtrl' import abilityAccessCtrl from '@ohos.abilityAccessCtrl'
import bundle from '@ohos.bundle' import bundle from '@ohos.bundle'
var baseLine = 500; //0.5 second var baseLine = 3000; //3 second
var gObject; var gObject;
const TAG = "OBJECTSTORE_TEST"; const TAG = "OBJECTSTORE_TEST";
function changeCallback(sessionId, changeData) { function changeCallback(sessionId, changeData) {
console.info("get init change111" + sessionId + " " + changeData); console.info("changeCallback start" + sessionId + " " + changeData);
if (changeData != null && changeData != undefined) { if (changeData != null && changeData != undefined) {
changeData.forEach(element => { changeData.forEach(element => {
console.info(TAG + "data changed !" + element); console.info(TAG + "data changed !" + element);
expect(element != null);
}); });
} }
console.info(TAG + "get init change111 end" + sessionId + " " + changeData); console.info(TAG + "changeCallback end" + sessionId + " " + changeData);
} }
function changeCallback2(sessionId, changeData) { function changeCallback2(sessionId, changeData) {
console.info("get init change222" + sessionId + " " + changeData); console.info("changeCallback2 satrt" + sessionId + " " + changeData);
if (changeData != null && changeData != undefined) { if (changeData != null && changeData != undefined) {
changeData.forEach(element => { changeData.forEach(element => {
console.info(TAG + "data changed !" + element); console.info(TAG + "data changed !" + element);
}); });
} }
console.info(TAG + "get init change222 end" + sessionId + " " + changeData); console.info(TAG + "changeCallback2 end" + sessionId + " " + changeData);
} }
function statusCallback1(sessionId, networkId, status) { function statusCallback1(sessionId, networkId, status) {
console.info(TAG + "test init change111" + sessionId); console.info(TAG + "statusCallback1" + sessionId);
this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId; this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId;
} }
function statusCallback2(sessionId, networkId, status) { function statusCallback2(sessionId, networkId, status) {
console.info(TAG + "test init change222" + sessionId); console.info(TAG + "statusCallback2" + sessionId);
this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId; this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId;
} }
function statusCallback3(sessionId, networkId, status) { function statusCallback3(sessionId, networkId, status) {
console.info(TAG + "test init change333" + sessionId); console.info(TAG + "statusCallback3" + sessionId);
this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId; this.response += "\nstatus changed " + sessionId + " " + status + " " + networkId;
} }
function statusCallback4(sessionId, networkId, status) {
console.info(TAG + "statusCallback4" + " " + sessionId);
expect("restored" == status).assertEqual(true);
}
function sleep(delay) { function sleep(delay) {
var start = (new Date()).getTime(); var start = (new Date()).getTime();
while((new Date()).getTime() - start >= delay) { while((new Date()).getTime() - start >= delay) {
...@@ -63,718 +68,723 @@ function sleep(delay) { ...@@ -63,718 +68,723 @@ function sleep(delay) {
} }
var tokenID = undefined; var tokenID = undefined;
const TIMEOUT = 2000;
const PERMISSION_USER_SET = 1; const PERMISSION_USER_SET = 1;
const PERMISSION_USER_NAME = "ohos.permission.DISTRIBUTED_DATASYNC"; const PERMISSION_USER_NAME = "ohos.permission.DISTRIBUTED_DATASYNC";
async function grantPerm() {
console.info("====grant Permission start====");
var appInfo = await bundle.getApplicationInfo('ohos.acts.dataObject', 0, 100);
tokenID = appInfo.accessTokenId;
console.info("accessTokenId" + appInfo.accessTokenId + " bundleName:" + appInfo.bundleName);
var atManager = abilityAccessCtrl.createAtManager();
var result = await atManager.grantUserGrantedPermission(tokenID, PERMISSION_USER_NAME, PERMISSION_USER_SET);
console.info("tokenId" + tokenID + " result:" + result);
console.info("====grant Permission end====");
}
export default function objectStoreTest() { export default function objectStoreTest() {
describe('objectStoreTest', function () { describe('objectStoreTest', function () {
beforeAll(async function (done) { beforeAll(async function (done) {
console.info("====>beforeAll start===="); await grantPerm();
var appInfo = await bundle.getApplicationInfo('ohos.acts.distributeddataObject', 0, 100); done();
tokenID = appInfo.accessTokenId; })
console.info(" bundleName:" + appInfo.name);
var atManager = abilityAccessCtrl.createAtManager();
var result = await atManager.grantUserGrantedPermission(tokenID, PERMISSION_USER_NAME, PERMISSION_USER_SET);
console.info(" result:" + result);
sleep(TIMEOUT);
console.debug("====>beforeAll end====");
done();
})
beforeEach(async function () { beforeEach(async function () {
// await grantPerm(); console.info(TAG + 'beforeEach');
console.info(TAG + 'beforeEach') })
})
afterEach(async function () { afterEach(async function () {
console.info(TAG + 'afterEach') console.info(TAG + 'afterEach');
gObject.setSessionId(""); console.info(TAG + 'leaveSession');
}) })
afterAll(async function () { afterAll(async function () {
console.info(TAG + 'afterAll') console.info(TAG + 'afterAll');
}) })
console.info(TAG + "*************Unit Test Begin*************"); console.info(TAG + "*************Unit Test Begin*************");
/** /**
* @tc.name: testOn001 * @tc.name: testOn001
* @tc.desc: object join session and on,object can receive callback when data has been changed * @tc.desc: object join session and on,object can receive callback when data has been changed
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_001
*/ */
it('testOn001', 0, function (done) { it('testOn001', 0, function (done) {
console.info(TAG + "************* testOn001 start *************"); console.info(TAG + "************* testOn001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session1"); objectTest.setSessionId("session1");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null) {
expect("session1" == objectTest.__sessionId); console.info(TAG + " testOn001 joinSession success: " + objectTest.__sessionId);
} else { expect("session1" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testOn001 joinSession failed"); } else {
} console.info(TAG + "testOn001 joinSession failed");
console.info(TAG + " start call watch change"); }
objectTest.on("change", changeCallback); console.info(TAG + " start call watch change");
if (objectTest != undefined && objectTest != null) { objectTest.on("change",changeCallback );
objectTest.name = "jack1"; if (objectTest != undefined && objectTest != null) {
objectTest.age = 19; objectTest.name = "jack1";
objectTest.isVis = true; objectTest.age = 19;
expect(objectTest.name == "jack1"); objectTest.isVis = true;
expect(objectTest.age == 19); expect(objectTest.name == "jack1").assertEqual(true);
console.info(TAG + " set data success!"); expect(objectTest.age == 19).assertEqual(true);
} else { console.info(TAG + " set data success!");
console.info(TAG + " object is null,set name fail"); } else {
} console.info(TAG + " object is null,set name fail");
}
done() done();
console.info(TAG + "************* testOn001 end *************"); console.info(TAG + "************* testOn001 end *************");
}) objectTest.setSessionId("");
})
/** /**
* @tc.name: testOn002 * @tc.name: testOn002
* @tc.desc object join session and no on,obejct can not receive callback when data has been changed * @tc.desc object join session and no on,obejct can not receive callback when data has been changed
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_002 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_002
*/ */
it('testOn002', 0, function (done) { it('testOn002', 0, function (done) {
console.info(TAG + "************* testOn002 start *************"); console.info(TAG + "************* testOn002 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session2"); objectTest.setSessionId("session2");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null) {
expect("session2" == objectTest.__sessionId); console.info(TAG + " testOn002 joinSession success:" + objectTest.__sessionId);
} else { expect("session2" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testOn002 joinSession failed"); } else {
} console.info(TAG + "testOn002 joinSession failed");
if (objectTest != undefined && objectTest != null) { }
objectTest.name = "jack1"; if (objectTest != undefined && objectTest != null) {
objectTest.age = 19; objectTest.name = "jack1";
objectTest.isVis = true; objectTest.age = 19;
expect(objectTest.name == "jack1"); objectTest.isVis = true;
expect(objectTest.age == 19); expect(objectTest.name == "jack1").assertEqual(true);
console.info(TAG + " set data success!"); expect(objectTest.age == 19).assertEqual(true);
} else { console.info(TAG + " set data success!");
console.info(TAG + " object is null,set name fail"); } else {
} console.info(TAG + " object is null,set name fail");
}
done() done();
console.info(TAG + "************* testOn002 end *************"); console.info(TAG + "************* testOn002 end *************");
}) objectTest.setSessionId("");
})
/** /**
* @tc.name: testOn003 * @tc.name: testOn003
* @tc.desc: object join session and on,then object change data twice, * @tc.desc: object join session and on,then object change data twice,
* object can receive two callbacks when data has been changed * object can receive two callbacks when data has been changed
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_003 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_003
*/ */
it('testOn003', 0, function (done) { it('testOn003', 0, function (done) {
console.info(TAG + "************* testOn003 start *************"); console.info(TAG + "************* testOn003 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session3"); objectTest.setSessionId("session3");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null) {
expect("session3" == objectTest.__sessionId); console.info(TAG + " testOn003 joinSession success:" + objectTest.__sessionId);
} else { expect("session3" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testOn003 joinSession failed"); } else {
} console.info(TAG + "testOn003 joinSession failed");
objectTest.on("change", changeCallback); }
console.info(TAG + " start call watch change"); objectTest.on("change", changeCallback);
if (objectTest != undefined && objectTest != null) { console.info(TAG + " start call watch change");
objectTest.name = "jack1"; if (objectTest != undefined && objectTest != null) {
objectTest.age = 19; objectTest.name = "jack1";
objectTest.isVis = true; objectTest.age = 19;
expect(objectTest.name == "jack1"); objectTest.isVis = true;
expect(objectTest.age == 19); expect(objectTest.name == "jack1").assertEqual(true);
objectTest.name = "jack2"; expect(objectTest.age == 19).assertEqual(true);
objectTest.age = 20; objectTest.name = "jack2";
objectTest.isVis = false; objectTest.age = 20;
expect(objectTest.name == "jack2"); objectTest.isVis = false;
expect(objectTest.age == 20); expect(objectTest.name == "jack2").assertEqual(true);
console.info(TAG + " set data success!"); expect(objectTest.age == 20).assertEqual(true);
} else { console.info(TAG + " set data success!");
console.info(TAG + " object is null,set name fail"); } else {
} console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testOn003 end *************");
})
/** done();
* @tc.name: testOn004 console.info(TAG + "************* testOn003 end *************");
* @tc.desc object join session and on,then object do not change data,object can not receive callbacks objectTest.setSessionId("");
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_004 })
*/
it('testOn004', 0, function (done) {
console.info(TAG + "************* testOn004 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session4");
if (objectTest != undefined && objectTest != null) {
expect("session4" == objectTest.__sessionId);
} else {
console.info(TAG + "testOn004 joinSession failed");
}
objectTest.on("change", changeCallback);
console.info(TAG + " start call watch change");
console.info(TAG + " end call watch change");
done()
console.info(TAG + "************* testOn004 end *************");
})
/** /**
* @tc.name testOff001 * @tc.name: testOn004
* @tc.desc object join session and on&off,object can not receive callback after off * @tc.desc object join session and on,then object do not change data,object can not receive callbacks
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Off_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_On_004
*/ */
it('testOff001', 0, function (done) { it('testOn004', 0, function (done) {
console.info(TAG + "************* testOff001 start *************"); console.info(TAG + "************* testOn004 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session5"); objectTest.setSessionId("session4");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null) {
expect("session5" == objectTest.__sessionId); console.info(TAG + "testOn004 joinSession success:" + objectTest.__sessionId);
} else { expect("session4" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testOff001 joinSession failed"); } else {
} console.info(TAG + "testOn004 joinSession failed");
objectTest.on("change", changeCallback); }
console.info(TAG + " start call watch change"); objectTest.on("change", changeCallback);
if (objectTest != undefined && objectTest != null) { console.info(TAG + " start call watch change");
objectTest.name = "jack1"; console.info(TAG + " end call watch change");
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1");
expect(objectTest.age == 19);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
objectTest.off("change");
console.info(TAG + " end call watch change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack2";
objectTest.age = 20;
objectTest.isVis = false;
expect(objectTest.name == "jack2");
expect(objectTest.age == 20);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testOff001 end *************");
})
/** done();
* @tc.name:testOff002 console.info(TAG + "************* testOn004 end *************");
* @tc.desc object join session and off,object can not receive callback objectTest.setSessionId("");
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Off_002 })
*/
it('testOff002', 0, function (done) {
console.info(TAG + "************* testOff002 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session6");
if (objectTest != undefined && objectTest != null) {
expect("session6" == objectTest.__sessionId);
} else {
console.info(TAG + "testOff002 joinSession failed");
}
objectTest.off("change");
console.info(TAG + " end call watch change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack1";
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1");
expect(objectTest.age == 19);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testOff002 end *************");
})
/** /**
* @tc.name: testMultiObjectOn001 * @tc.name testOff001
* @tc.desc: two objects join session and on,then object change data,user can receive two callbacks from two objects * @tc.desc object join session and on&off,object can not receive callback after off
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Multi_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_Off_001
*/ */
it('testMultiObjectOn001', 0, function (done) { it('testOff001', 0, function (done) {
console.info(TAG + "************* testMultiObjectOn001 start *************"); console.info(TAG + "************* testOff001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session7"); objectTest.setSessionId("session5");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null){
expect("session7" == objectTest.__sessionId); console.info(TAG + "testOff001 joinSession success:" + objectTest.__sessionId)
} else { expect("session5" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testMultiObjectOn001 joinSession failed"); } else {
} console.info(TAG + "testOff001 joinSession failed");
var testObject = distributedObject.createDistributedObject({ name: "Eric", age: 81, isVis: true }); }
testObject.setSessionId("testSession1"); objectTest.on("change", changeCallback);
if (testObject != undefined && testObject != null) { console.info(TAG + " start call watch change");
expect("testSession1" == testObject.__sessionId); if (objectTest != undefined && objectTest != null) {
} else { objectTest.name = "jack1";
console.info(TAG + "testMultiObjectOn001 joinSession failed"); objectTest.age = 19;
} objectTest.isVis = true;
objectTest.on("change", changeCallback); expect(objectTest.name == "jack1").assertEqual(true);
testObject.on("change", changeCallback2); expect(objectTest.age == 19).assertEqual(true);
console.info(TAG + " start call watch change"); console.info(TAG + " set data success!");
if (objectTest != undefined && objectTest != null) { } else {
objectTest.name = "jack1"; console.info(TAG + " object is null,set name fail");
objectTest.age = 19; }
objectTest.isVis = true; objectTest.off("change");
expect(objectTest.name == "jack1"); console.info(TAG + " end call watch change");
expect(objectTest.age == 19); if (objectTest != undefined && objectTest != null) {
console.info(TAG + " set data success!"); objectTest.name = "jack2";
} else { objectTest.age = 20;
console.info(TAG + " objectTest is null,set name fail"); objectTest.isVis = false;
} expect(objectTest.name == "jack2").assertEqual(true);
if (testObject != undefined && testObject != null) { expect(objectTest.age == 20).assertEqual(true);
testObject.name = "jack2"; console.info(TAG + " set data success!");
testObject.age = 20; } else {
testObject.isVis = false; console.info(TAG + " object is null,set name fail");
expect(testObject.name == "jack2"); }
expect(testObject.age == 20);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " testObject is null,set name fail");
}
done()
console.info(TAG + "************* testMultiObjectOn001 end *************");
})
/** done()
console.info(TAG + "************* testOff001 end *************");
objectTest.setSessionId("");
})
/**
* @tc.name:testOff002
* @tc.desc object join session and off,object can not receive callback
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Off_002
*/
it('testOff002', 0, function (done) {
console.info(TAG + "************* testOff002 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session6");
if (objectTest != undefined && objectTest != null) {
console.info(TAG + "testOff002 joinSession success:" + objectTest.__sessionId);
expect("session6" == objectTest.__sessionId).assertEqual(true);
} else {
console.info(TAG + "testOff002 joinSession failed");
}
objectTest.off("change");
console.info(TAG + " end call watch change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack1";
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1").assertEqual(true);
expect(objectTest.age == 19).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testOff002 end *************");
objectTest.setSessionId("");
})
/**
* @tc.name: testMultiObjectOn001
* @tc.desc: two objects join session and on,then object change data,user can receive two callbacks from two objects
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Multi_001
*/
it('testMultiObjectOn001', 0, function (done) {
console.info(TAG + "************* testMultiObjectOn001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session7");
if (objectTest != undefined && objectTest != null) {
console.info(TAG + "testMultiObjectOn001 joinSession1 success:" + objectTest.__sessionId);
expect("session7" == objectTest.__sessionId).assertEqual(true);
} else {
console.info(TAG + "testMultiObjectOn001 joinSession1 failed");
}
var testObject = distributedObject.createDistributedObject({ name: "Eric", age: 81, isVis: true });
testObject.setSessionId("testSession1");
if (testObject != undefined && testObject != null) {
console.info(TAG + "testMultiObjectOn001 joinSession2 success:" + testObject.__sessionId);
expect("testSession1" == testObject.__sessionId).assertEqual(true);
} else {
console.info(TAG + "testMultiObjectOn001 joinSession2 failed");
}
objectTest.on("change", changeCallback);
testObject.on("change", changeCallback2);
console.info(TAG + " start call watch change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack1";
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1").assertEqual(true);
expect(objectTest.age == 19).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " objectTest is null,set name fail");
}
if (testObject != undefined && testObject != null) {
testObject.name = "jack2";
testObject.age = 20;
testObject.isVis = false;
expect(testObject.name == "jack2").assertEqual(true);
expect(testObject.age == 20).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " testObject is null,set name fail");
}
done();
console.info(TAG + "************* testMultiObjectOn001 end *************");
objectTest.setSessionId("");
testObject.setSessionId("");
})
/**
* @tc.name: testMultiObjectOff001 * @tc.name: testMultiObjectOff001
* @tc.desc: two objects join session and on&off,then two objects can not receive callbacks * @tc.desc: two objects join session and on&off,then two objects can not receive callbacks
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Multi_Off_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_Multi_Off_001
*/ */
it('testMultiObjectOff001', 0, function (done) { it('testMultiObjectOff001', 0, function (done) {
console.info(TAG + "************* testMultiObjectOff001 start *************"); console.info(TAG + "************* testMultiObjectOff001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session8"); objectTest.setSessionId("session8");
if (objectTest != undefined && objectTest != null) { if (objectTest != undefined && objectTest != null) {
expect("session8" == objectTest.__sessionId); console.info(TAG + "testMultiObjectOn002 joinSession success:" + objectTest.__sessionId);
} else { expect("session8" == objectTest.__sessionId).assertEqual(true);
console.info(TAG + "testMultiObjectOn002 joinSession failed"); } else {
} console.info(TAG + "testMultiObjectOn002 joinSession failed");
var testObject = distributedObject.createDistributedObject({ name: "Eric", age: 81, isVis: true }); }
testObject.setSessionId("testSession2");
if (testObject != undefined && testObject != null) {
expect("testSession2" == testObject.__sessionId);
} else {
console.info(TAG + "testMultiObjectOn002 joinSession failed");
}
console.info(TAG + " start call watch change")
objectTest.on("change", changeCallback);
testObject.on("change", changeCallback2);
console.info(TAG + " watch success");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack1";
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1");
expect(objectTest.age == 19);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
if (testObject != undefined && testObject != null) {
testObject.name = "jack2";
testObject.age = 20;
testObject.isVis = false;
expect(testObject.name == "jack2");
expect(testObject.age == 20);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
objectTest.off("change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack3";
objectTest.age = 21;
objectTest.isVis = false;
expect(objectTest.name == "jack3");
expect(objectTest.age == 21);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
testObject.off("change");
if (testObject != undefined && testObject != null) {
testObject.name = "jack4";
testObject.age = 22;
testObject.isVis = true;
expect(testObject.name == "jack4");
expect(testObject.age == 22);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testMultiObjectOff001 end *************");
})
/** var testObject = distributedObject.createDistributedObject({ name: "Eric", age: 81, isVis: true });
* @tc.name: testChangeSession001 testObject.setSessionId("testSession2");
* @tc.desc: objects join session,then change sessionId if (testObject != undefined && testObject != null) {
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Session_001 console.info(TAG + "testMultiObjectOn002 joinSession success:" + testObject.__sessionId);
*/ expect("testSession2" == testObject.__sessionId).assertEqual(true);
it('testChangeSession001', 0, function (done) { } else {
console.info(TAG + "************* testChangeSession001 start *************"); console.info(TAG + "testMultiObjectOn002 joinSession failed");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); }
objectTest.setSessionId("session9"); console.info(TAG + " start call watch change")
if (objectTest != undefined && objectTest != null) { objectTest.on("change", changeCallback);
expect("session9" == objectTest.__sessionId); testObject.on("change", changeCallback2);
} else { console.info(TAG + " watch success");
console.info(TAG + "testChangeSession001 joinSession failed"); if (objectTest != undefined && objectTest != null) {
} objectTest.name = "jack1";
console.info(TAG + "start change sessionId"); objectTest.age = 19;
setTimeout(() => objectTest.setSessionId("session9"), 1000); objectTest.isVis = true;
if (objectTest != undefined && objectTest != null) { expect(objectTest.name == "jack1").assertEqual(true);
expect("session9" == objectTest.__sessionId); expect(objectTest.age == 19).assertEqual(true);
} else { console.info(TAG + " set data success!");
console.info(TAG + "testChangeSession001 joinSession again failed"); } else {
} console.info(TAG + " object is null,set name fail");
}
done() if (testObject != undefined && testObject != null) {
console.info(TAG + "************* testChangeSession001 end *************"); testObject.name = "jack2";
}) testObject.age = 20;
testObject.isVis = false;
expect(testObject.name == "jack2").assertEqual(true);
expect(testObject.age == 20).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
objectTest.off("change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack3";
objectTest.age = 21;
objectTest.isVis = false;
expect(objectTest.name == "jack3").assertEqual(true);
expect(objectTest.age == 21).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
testObject.off("change");
if (testObject != undefined && testObject != null) {
testObject.name = "jack4";
testObject.age = 22;
testObject.isVis = true;
expect(testObject.name == "jack4").assertEqual(true);
expect(testObject.age == 22).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
/** done();
* @tc.name: testUndefinedType001 console.info(TAG + "************* testMultiObjectOff001 end *************");
* @tc.desc: object use undefined type,can not join session objectTest.setSessionId("");
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Type_001 testObject.setSessionId("");
*/ })
it('testUndefinedType001', 0, function (done) {
console.info(TAG + "************* testUndefinedType001 start *************"); /**
var object1 = distributedObject.createDistributedObject({ name: undefined, age: undefined, isVis: undefined }); * @tc.name: testChangeSession001
try { * @tc.desc: objects join session,then change sessionId
object1.setSessionId("session11"); * @tc.number: SUB_DDM_AppDataFWK_Object_Api_Session_001
if (object1 != undefined && object1 != null) { */
expect("session11" == object1.__sessionId); it('testChangeSession001', 0, function (done) {
console.info(TAG + "************* testChangeSession001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session9");
if (objectTest != undefined && objectTest != null) {
console.info(TAG + "testChangeSession001 joinSession success:"+ objectTest.__sessionId);
expect("session9" == objectTest.__sessionId).assertEqual(true);
} else {
console.info(TAG + "testChangeSession001 joinSession failed");
}
objectTest.on("change", changeCallback);
console.info(TAG + " start call watch change");
if (objectTest != undefined && objectTest != null) {
objectTest.name = "jack1";
objectTest.age = 19;
objectTest.isVis = true;
expect(objectTest.name == "jack1").assertEqual(true);
expect(objectTest.age == 19).assertEqual(true);
console.info(TAG + " set data success!");
} else { } else {
console.info(TAG + "testUndefinedType001 joinSession session11 failed"); console.info(TAG + " object is null,set name fail");
}
console.info(TAG + "start change sessionId");
objectTest.setSessionId("session10");
if (objectTest != undefined && objectTest != null) {
console.info(TAG + "testChangeSession001 joinSession again success:" + objectTest.__sessionId);
expect("session10" == objectTest.__sessionId).assertEqual(true);
} else {
console.info(TAG + "testChangeSession001 joinSession again failed");
} }
} catch (error) {
console.error(TAG + error);
}
done() if (objectTest != undefined && objectTest != null) {
console.info(TAG + "************* testUndefinedType001 end *************"); objectTest.name = "jack2";
}) objectTest.age = 20;
objectTest.isVis = true;
expect(objectTest.name == "jack2").assertEqual(true);
expect(objectTest.age == 20).assertEqual(true);
console.info(TAG + " set data success!");
} else {
console.info(TAG + " object is null,set name fail");
}
done();
console.info(TAG + "************* testChangeSession001 end *************");
objectTest.setSessionId("");
})
/** /**
* @tc.name: testGenSessionId001 * @tc.name: testUndefinedType001
* @tc.desc: object generate random sessionId * @tc.desc: object use undefined type,can not join session
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_GetSessionId_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_Type_001
*/ */
it('testGenSessionId001', 0, function (done) { it('testUndefinedType001', 0, function (done) {
console.info(TAG + "************* testGenSessionId001 start *************"); console.info(TAG + "************* testUndefinedType001 start *************");
var sessionId = distributedObject.genSessionId(); var undefined_object = distributedObject.createDistributedObject({ name: undefined, age: undefined, isVis: undefined });
expect(sessionId != null && sessionId.length > 0 && typeof (sessionId) == 'string'); expect(undefined_object == undefined).assertEqual(false);
try {
undefined_object.setSessionId("session11");
expect("session11" == undefined_object.__sessionId).assertEqual(true);
} catch (error) {
console.error(TAG + error);
}
done() done();
console.info(TAG + "************* testGenSessionId001 end *************"); console.info(TAG + "************* testUndefinedType001 end *************");
}) })
/** /**
* @tc.name: testGenSessionId002 * @tc.name: testGenSessionId001
* @tc.desc: object generate 2 random sessionId and not equal * @tc.desc: object generate random sessionId
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_GetSessionId_002 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_GetSessionId_001
*/ */
it('testGenSessionId002', 0, function (done) { it('testGenSessionId001', 0, function (done) {
console.info(TAG + "************* testGenSessionId002 start *************"); console.info(TAG + "************* testGenSessionId001 start *************");
var sessionId1 = distributedObject.genSessionId(); var sessionId = distributedObject.genSessionId();
var sessionId2 = distributedObject.genSessionId(); expect(sessionId != null && sessionId.length > 0 && typeof (sessionId) == 'string').assertEqual(true);
expect(sessionId1 != sessionId2);
done()
console.info(TAG + "************* testGenSessionId002 end *************");
})
/** done();
* @tc.name: testOnStatus001 console.info(TAG + "************* testGenSessionId001 end *************");
* @tc.desc: object set a listener to watch another object online/offline })
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_001
*/
it('testOnStatus001', 0, function (done) {
console.info(TAG + "************* testOnStatus001 start *************");
console.info(TAG + "start watch status");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.on("status", statusCallback1);
console.info(TAG + "watch success");
done()
console.info(TAG + "************* testOnStatus001 end *************");
})
/** /**
* @tc.name: testOnStatus002 * @tc.name: testGenSessionId002
* @tc.desc: object set several listener and can unset specified listener * @tc.desc: object generate 2 random sessionId and not equal
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_002 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_GetSessionId_002
*/ */
it('testOnStatus002', 0, function (done) { it('testGenSessionId002', 0, function (done) {
console.info(TAG + "************* testOnStatus002 start *************"); console.info(TAG + "************* testGenSessionId002 start *************");
console.info(TAG + "start watch status"); var sessionId1 = distributedObject.genSessionId();
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var sessionId2 = distributedObject.genSessionId();
objectTest.on("status", statusCallback1); expect(sessionId1 != sessionId2).assertEqual(true);
objectTest.on("status", statusCallback2);
objectTest.on("status", statusCallback3);
console.info(TAG + "watch success");
console.info(TAG + "start call unwatch status");
objectTest.off("status", statusCallback1);
console.info(TAG + "unwatch success");
done()
console.info(TAG + "************* testOnStatus002 end *************");
})
/** done();
* @tc.name: testOnStatus003 console.info(TAG + "************* testGenSessionId002 end *************");
* @tc.desc: object set several listener and can unWatch all watcher })
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_003
*/
it('testOnStatus003', 0, function (done) {
console.info(TAG + "************* testOnStatus003 start *************");
console.info(TAG + "start watch status");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.on("status", statusCallback1);
objectTest.on("status", statusCallback2);
objectTest.on("status", statusCallback3);
console.info(TAG + "watch success");
console.info(TAG + "start call unwatch status");
objectTest.off("status");
console.info(TAG + "unwatch success");
done()
console.info(TAG + "************* testOnStatus003 end *************");
})
/** /**
* @tc.name: testComplex001 * @tc.name: testOnStatus001
* @tc.desc: object can get/set complex data * @tc.desc: object set a listener to watch another object online/offline
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Complex_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_001
*/ */
it('testComplex001', 0, function (done) { it('testOnStatus001', 0, function (done) {
console.info(TAG + "************* testComplex001 start *************"); console.info(TAG + "************* testOnStatus001 start *************");
var complexObject = distributedObject.createDistributedObject({ console.info(TAG + "start watch status");
name: undefined, var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
age: undefined, objectTest.on("status", statusCallback1);
parent: undefined, console.info(TAG + "watch success");
list: undefined
});
complexObject.setSessionId("session12");
if (complexObject != undefined && complexObject != null) {
expect("session12" == complexObject.__sessionId);
} else {
console.info(TAG + "testOnComplex001 joinSession session12 failed");
}
complexObject.name = "jack";
complexObject.age = 19;
complexObject.isVis = false;
complexObject.parent = { mother: "jack mom", father: "jack Dad" };
complexObject.list = [{ mother: "jack mom" }, { father: "jack Dad" }];
expect(complexObject.name == "jack");
expect(complexObject.age == 19);
expect(complexObject.parent == { mother: "jack1 mom", father: "jack1 Dad" });
expect(complexObject.list == [{ mother: "jack1 mom", father: "jack1 Dad" }]);
done()
console.info(TAG + "************* testComplex001 end *************");
})
/** done();
* @tc.name: testMaxSize001 console.info(TAG + "************* testOnStatus001 end *************");
* @tc.desc: object can get/set data under 4MB size objectTest.setSessionId("");
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_MaxSize_001 })
*/
it('testMaxSize001', 0, function (done) {
console.info(TAG + "************* testMaxSize001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session13");
if (objectTest != undefined && objectTest != null) {
expect("session13" == objectTest.__sessionId);
} else {
console.info(TAG + "testMaxSize001 joinSession session13 failed");
}
//maxString = 32byte
var maxString = "12345678123456781234567812345678".repeat(131072);
if (objectTest != undefined && objectTest != null) {
objectTest.name = maxString;
objectTest.age = 42;
objectTest.isVis = false;
expect(objectTest.name == maxString);
console.info(TAG + "get/set maxSize string success");
} else {
console.info(TAG + " object is null,set name fail");
}
done()
console.info(TAG + "************* testMaxSize001 end *************");
})
/** /**
* @tc.name: testPerformance001 * @tc.name: testOnStatus002
* @tc.desc: performanceTest for set/get data * @tc.desc: object set several listener and can unset specified listener
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Performance_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_002
*/ */
it('testPerformance001', 0, function (done) { it('testOnStatus002', 0, function (done) {
console.info(TAG + "************* testPerformance001 start *************"); console.info(TAG + "************* testOnStatus002 start *************");
var complexObject = distributedObject.createDistributedObject({ console.info(TAG + "start watch status");
name: undefined, var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
age: undefined, expect(objectTest == undefined).assertEqual(false);
parent: undefined,
list: undefined objectTest.on("status", statusCallback1);
}); objectTest.on("status", statusCallback2);
var st1; objectTest.on("status", statusCallback3);
var totalTime = 0; console.info(TAG + "watch success");
var setSessionIdTime = 0; console.info(TAG + "start call unwatch status");
var setTime = 0; objectTest.off("status", statusCallback1);
var onTime = 0; console.info(TAG + "unwatch success");
var offTime = 0;
for (var i = 0; i < 100; i++) { done();
st1 = Date.now(); console.info(TAG + "************* testOnStatus002 end *************");
complexObject.setSessionId("session14"); objectTest.setSessionId("");
setSessionIdTime += Date.now() - st1; })
/**
* @tc.name: testOnStatus003
* @tc.desc: object set several listener and can unWatch all watcher
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_OnStatus_003
*/
it('testOnStatus003', 0, function (done) {
console.info(TAG + "************* testOnStatus003 start *************");
console.info(TAG + "start watch status");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
expect(objectTest == undefined).assertEqual(false);
objectTest.on("status", statusCallback1);
objectTest.on("status", statusCallback2);
objectTest.on("status", statusCallback3);
console.info(TAG + "watch success");
console.info(TAG + "start call unwatch status");
objectTest.off("status");
console.info(TAG + "unwatch success");
done();
console.info(TAG + "************* testOnStatus003 end *************");
objectTest.setSessionId("");
})
/**
* @tc.name: testComplex001
* @tc.desc: object can get/set complex data
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Complex_001
*/
it('testComplex001', 0, function (done) {
console.info(TAG + "************* testComplex001 start *************");
var complexObject = distributedObject.createDistributedObject({
name: undefined,
age: undefined,
parent: undefined,
list: undefined
});
complexObject.setSessionId("session12");
if (complexObject != undefined && complexObject != null) { if (complexObject != undefined && complexObject != null) {
expect("session14" == complexObject.__sessionId); console.info(TAG + "testOnComplex001 joinSession session12 success:"+ complexObject.__sessionId);
expect("session12" == complexObject.__sessionId).assertEqual(true);
} else { } else {
console.info(TAG + "testPerformance001 joinSession session14 failed"); console.info(TAG + "testOnComplex001 joinSession session12 failed");
} }
console.info(TAG + " start call watch change"); complexObject.name = "jack";
st1 = Date.now(); complexObject.age = 19;
complexObject.on("change", changeCallback);
onTime += Date.now() - st1;
console.info(TAG + "on change success");
st1 = Date.now();
complexObject.name = "jack2";
complexObject.age = 20;
complexObject.isVis = false; complexObject.isVis = false;
complexObject.parent = { mother: "jack1 mom1", father: "jack1 Dad1" }; complexObject.parent = { mother: "jack mom", father: "jack Dad" };
complexObject.list = [{ mother: "jack1 mom1" }, { father: "jack1 Dad1" }]; complexObject.list = [{ mother: "jack2 mom2" }, { father: "jack2 Dad2" }];
setTime += Date.now() - st1; expect(complexObject.name == "jack").assertEqual(true);
expect(complexObject.name == "jack2"); expect(complexObject.age == 19).assertEqual(true);
expect(complexObject.age == 20); expect(complexObject.parent.mother == "jack mom").assertEqual(true);
expect(complexObject.parent == { mother: "jack1 mom1", father: "jack1 Dad1" }); expect(complexObject.parent.father == "jack Dad").assertEqual(true);
expect(complexObject.list == [{ mother: "jack1 mom1", father: "jack1 Dad1" }]); expect(complexObject.list[0].mother == "jack2 mom2").assertEqual(true);
expect(complexObject.list[1].father == "jack2 Dad2").assertEqual(true);
console.info(TAG + "start unWatch change");
st1 = Date.now();
complexObject.off("change");
offTime += Date.now() - st1;
totalTime += setSessionIdTime;
totalTime += setTime;
totalTime += onTime;
totalTime += offTime;
console.info(TAG + "end unWatch success");
}
console.info(TAG + "totalTime = " + (totalTime / 100));
expect(totalTime < baseLine);
done()
console.info(TAG + "************* testPerformance001 end *************");
})
/**
* @tc.name: testSave001
* @tc.desc: Save object <Promise>
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Save_001
*/
it('testSave001', 0, async function (done) {
console.info(TAG + "************* testSave001 start *************");
var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
gObject.setSessionId("tmpsession1");
let result = await gObject.save("local");
sleep(2000)
expect(result.sessionId == "tmpsession1").assertEqual(false);
expect(result.version == gObject.__version).assertEqual(false);
expect(result.deviceId == "local").assertEqual(false);
gObject.setSessionId("");
gObject.name = undefined;
gObject.age = undefined;
gObject.isVis = undefined;
gObject.setSessionId("tmpsession1");
done(); done();
console.info(TAG + "************* testComplex001 end *************");
complexObject.setSessionId("");
})
/**
* @tc.name: testMaxSize001
* @tc.desc: object can get/set data under 4MB size
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_MaxSize_001
*/
it('testMaxSize001', 0, function (done) {
console.info(TAG + "************* testMaxSize001 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
objectTest.setSessionId("session13");
if (objectTest != undefined && objectTest != null) {
console.info(TAG + "testMaxSize001 joinSession session13 success:" + objectTest.__sessionId);
expect("session13" == objectTest.__sessionId);
} else {
console.info(TAG + "testMaxSize001 joinSession session13 failed");
}
//maxString = 32byte
var maxString = "12345678123456781234567812345678".repeat(131072);
if (objectTest != undefined && objectTest != null) {
objectTest.name = maxString;
objectTest.age = 42;
objectTest.isVis = false;
expect(objectTest.name == maxString).assertEqual(false);
console.info(TAG + "get/set maxSize string success:" + objectTest.name);
} else {
console.info(TAG + " object is null,set name fail");
}
expect(gObject.name == "Amy").assertEqual(false); done()
expect(gObject.age == 18).assertEqual(false); console.info(TAG + "************* testMaxSize001 end *************");
expect(gObject.isVis == false).assertEqual(false); objectTest.setSessionId("");
console.info(TAG + "************* testSave001 end *************");
}) })
/**
* @tc.name: testPerformance001
* @tc.desc: performanceTest for set/get data
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Performance_001
*/
it('testPerformance001', 0, function (done) {
console.info(TAG + "************* testPerformance001 start *************");
var complexObject = distributedObject.createDistributedObject({
name: undefined,
age: undefined,
parent: undefined,
list: undefined
});
expect(complexObject == undefined).assertEqual(false);
var startTime = new Date().getTime();
for (var i = 0;i < 100; i++) {
complexObject.setSessionId("session14");
expect("session14" == complexObject.__sessionId).assertEqual(true);
complexObject.on("change", changeCallback);
complexObject.name = "jack2";
complexObject.age = 20;
complexObject.isVis = false;
complexObject.parent = { mother: "jack1 mom1", father: "jack1 Dad1" };
complexObject.list = [{ mother: "jack2 mom2" }, { father: "jack2 Dad2" }];
expect(complexObject.name == "jack2").assertEqual(true);
expect(complexObject.age == 20).assertEqual(true);
expect(complexObject.parent.mother == "jack1 mom1").assertEqual(true);
expect(complexObject.parent.father == "jack1 Dad1").assertEqual(true);
expect(complexObject.list[0].mother == "jack2 mom2").assertEqual(true);
expect(complexObject.list[1].father == "jack2 Dad2").assertEqual(true);
console.log(TAG + "start unWatch change");
complexObject.off("change");
console.log(TAG + "end unWatch success");
}
var endTime = new Date().getTime();
var totalTime = endTime - startTime;
console.log("testPerformance001 totalTime = " + totalTime);
console.log("testPerformance001 baseLine = " + baseLine);
expect(totalTime < baseLine).assertEqual(true);
done();
console.log(TAG + "************* testPerformance001 end *************");
complexObject.setSessionId("");
})
/** /**
* @tc.name: testSave002 * @tc.name: testSave001
* @tc.desc: Save object <Callback> * @tc.desc: Save object <Promise>
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Save_002 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_Save_001
*/ */
it('testSave002', 0, function (done) { it('testSave001', 0, async function (done) {
console.info(TAG + "************* testSave002 start *************"); console.info(TAG + "************* testSave001 start *************");
let SaveSuccessResponse
var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
gObject.setSessionId("tmpsession1"); gObject.setSessionId("tmpsession01");
gObject.save("local",(result)=>{ let result = await gObject.save("local");
SaveSuccessResponse = result done();
done(); expect(result.sessionId == "tmpsession01").assertEqual(true);
expect(SaveSuccessResponse != null).assertTrue(); expect(result.version == gObject.__version).assertEqual(true);
expect(SaveSuccessResponse.sessionId == "tmpsession1").assertEqual(false); expect(result.deviceId == "local").assertEqual(true);
expect(SaveSuccessResponse.version == gObject.__version).assertEqual(false);
expect(SaveSuccessResponse.deviceId == "local").assertEqual(false);
});
gObject.setSessionId(""); gObject.setSessionId("");
gObject.name = undefined; gObject.name = undefined;
gObject.age = undefined; gObject.age = undefined;
gObject.isVis = undefined; gObject.isVis = undefined;
gObject.setSessionId("tmpsession1");
expect(gObject.name == "Amy").assertEqual(false); gObject.setSessionId("tmpsession01");
expect(gObject.age == 18).assertEqual(false); expect(gObject.name == "Amy").assertEqual(true);
expect(gObject.isVis == false).assertEqual(false); expect(gObject.age == 18).assertEqual(true);
expect(gObject.isVis == false).assertEqual(true);
done(); done();
console.info(TAG + "************* testSave002 end *************"); console.info(TAG + "************* testSave001 end *************");
}) })
/**
* @tc.name: testSave002
* @tc.desc: Save object
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_Save_002
*/
it('testSave002', 0, function (done) {
console.info(TAG + "************* testSave002 start *************");
var objectTest = distributedObject.createDistributedObject({ name: "Eva", age: 20, isVis: false });
objectTest.setSessionId("tmpsession02");
done();
console.info(TAG + "************* testSave002 end *************");
})
/** /**
* @tc.name: testRevokeSave001 * @tc.name: testRevokeSave001
* @tc.desc: Revoke save object <Promise> * @tc.desc: Revoke save object <Promise>
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_RevokeSave_001 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_RevokeSave_001
*/ */
it('testRevokeSave001', 0, async function (done) { it('testRevokeSave001', 0, async function (done) {
console.info(TAG + "************* testRevokeSave001 start *************"); console.info(TAG + "************* testRevokeSave001 start *************");
var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
gObject.setSessionId("123456"); gObject.setSessionId("tmpsession03");
let result = await gObject.save("local");
expect(result.sessionId != "123456").assertEqual(true);
expect(result.version != gObject.__version).assertEqual(true);
expect(result.deviceId != "local").assertEqual(true);
result = await gObject.revokeSave();
expect(result != null).assertTrue();
done(); done();
console.info(TAG + "************* testRevokeSave001 end *************"); console.info(TAG + "************* testRevokeSave001 end *************");
}) })
/** /**
* @tc.name: testRevokeSave002 * @tc.name: testRevokeSave002
* @tc.desc: Revoke save object <Callback> * @tc.desc: Revoke save object <Callback>
* @tc.number: SUB_DDM_AppDataFWK_Object_Api_RevokeSave_002 * @tc.number: SUB_DDM_AppDataFWK_Object_Api_RevokeSave_002
*/ */
it('testRevokeSave002', 0, async function (done) { it('testRevokeSave002', 0, async function (done) {
console.info(TAG + "************* testRevokeSave002 start *************"); console.info(TAG + "************* testRevokeSave002 start *************");
var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false }); var gObject = distributedObject.createDistributedObject({ name: "Amy", age: 18, isVis: false });
gObject.setSessionId("123456"); gObject.setSessionId("tmpsession04");
let result = await gObject.save("local"); done();
expect(result.sessionId != "123456").assertEqual(true); console.info(TAG + "************* testRevokeSave002 end *************");
expect(result.version != gObject.__version).assertEqual(true);
expect(result.deviceId != "local").assertEqual(true);
let RevokeSaveSuccessResponse =undefined;
gObject.revokeSave((err,ret) => {
RevokeSaveSuccessResponse = ret;
done();
expect(err == null).assertTrue();
expect(RevokeSaveSuccessResponse == undefined).assertTrue();
});
done();
console.info(TAG + "************* testRevokeSave002 end *************");
})
console.info(TAG + "*************Unit Test End*************");
}) })
console.info(TAG + "*************Unit Test End*************");
})
} }
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册