Messages60Test::Messages60Test() { // This list MUST mirror the list of routable factories from the DocumentProtocol constructor that support // version 6.x. When adding tests to this list, please KEEP THEM ORDERED alphabetically like they are now. putTest(DocumentProtocol::MESSAGE_CREATEVISITOR, TEST_METHOD(Messages60Test::testCreateVisitorMessage)); putTest(DocumentProtocol::MESSAGE_STATBUCKET, TEST_METHOD(Messages60Test::testStatBucketMessage)); putTest(DocumentProtocol::MESSAGE_GETBUCKETLIST, TEST_METHOD(Messages60Test::testGetBucketListMessage)); }
/** **************************************************************************************************** * @run MojObject stores key-value pairs.Internally it provides separate implmentation for all data types. Provides facility to push single entry or entire array of data into MojObject. Supports put/get/delete operation. Data having key and value is converted to Node type and then node is inserted into TreeBase. All operation happens on TreeBase are based on key. Provides interface to convert JSON string to JSON object and viceversa. * @param : None * @retval : MojErr **************************************************************************************************** **/ MojErr MojObjectTest::run() { MojObject obj0; MojObject obj1; MojObject obj2; MojObject obj3; MojObject obj4; MojString str1; MojObjectBuilder builder; int count = 0; bool found = false; // empty object MojTestAssert(obj1.type() == MojObject::TypeUndefined); MojErr err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeNull); MojTestAssert(obj1.type() == MojObject::TypeNull); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeObject); MojTestAssert(obj1.type() == MojObject::TypeObject); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeArray); MojTestAssert(obj1.type() == MojObject::TypeArray); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeString); MojTestAssert(obj1.type() == MojObject::TypeString); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeBool); MojTestAssert(obj1.type() == MojObject::TypeBool); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeDecimal); MojTestAssert(obj1.type() == MojObject::TypeDecimal); err = emptyTest(obj1); MojTestErrCheck(err); obj1.clear(MojObject::TypeInt); MojTestAssert(obj1.type() == MojObject::TypeInt); err = emptyTest(obj1); MojTestErrCheck(err); err = obj2.fromJson("{}"); MojTestAssert(obj2.type() == MojObject::TypeObject); MojTestErrCheck(err); err = emptyTest(obj2); MojTestErrCheck(err); err = obj3.put(_T("hello"), 5LL); MojTestErrCheck(err); err = obj3.del(_T("hello"), found); MojTestErrCheck(err); MojTestAssert(found); err = emptyTest(obj3); MojTestErrCheck(err); err = obj3.put(_T("hello"), 5LL); MojTestErrCheck(err); obj3.clear(); err = emptyTest(obj3); MojTestErrCheck(err); // put/get/del err = putTest(obj1); MojTestErrCheck(err); err = getTest(obj1); MojTestErrCheck(err); err = obj1.visit(builder); MojTestErrCheck(err); err = getTest(builder.object()); MojTestErrCheck(err); err = obj1.toJson(str1); MojTestErrCheck(err); err = obj2.fromJson(str1); MojTestErrCheck(err); err = getTest(obj2); MojTestErrCheck(err); obj3 = obj2; err = getTest(obj3); MojTestErrCheck(err); obj3.clear(); MojTestAssert(obj3.empty()); // iterator for (MojObject::ConstIterator i = obj2.begin(); i != obj2.end(); ++i) { count++; obj3.put(i.key(), i.value()); } MojTestAssert(count == 10); err = getTest(obj3); MojTestErrCheck(err); // types err = typeTest(); MojTestErrCheck(err); return MojErrNone; }