mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-05-21 23:40:26 -04:00
Fix providing mask for setting group subscribeFlag, msgStatus and grpStatus
Tests updated Also setting msg and grp Status to unprocessed and unread on receipt from a sync (see rsgxsflag.h). These are set on bits masked by 0xf00. git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5834 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
c5fee54ee7
commit
d591d795bd
9 changed files with 150 additions and 25 deletions
|
@ -3,6 +3,9 @@
|
|||
#include "gxs/rsdataservice.h"
|
||||
#include "gxs/rsgxsflags.h"
|
||||
|
||||
#define TEST_FLAG 0x00004;
|
||||
#define TEST_MASK 0x0000f;
|
||||
|
||||
GenExchangeTester::GenExchangeTester()
|
||||
: mGenTestMutex("genTest")
|
||||
{
|
||||
|
@ -277,7 +280,6 @@ bool GenExchangeTester::testGrpMetaRetrieval()
|
|||
|
||||
opts.mReqType = GXS_REQUEST_TYPE_GROUP_META;
|
||||
|
||||
std::list<RsGxsGroupId> grpIds;
|
||||
mTokenService->requestGroupInfo(token, 0, opts);
|
||||
|
||||
pollForToken(token, opts);
|
||||
|
@ -372,6 +374,8 @@ bool GenExchangeTester::testGrpMetaModRequest()
|
|||
init(dgrp1);
|
||||
init(dgrp2);
|
||||
init(dgrp3);
|
||||
dgrp1->meta.mSubscribeFlags = 0;
|
||||
dgrp1->meta.mGroupStatus = 0;
|
||||
|
||||
uint32_t token;
|
||||
RsTokReqOptions opts;
|
||||
|
@ -397,8 +401,9 @@ bool GenExchangeTester::testGrpMetaModRequest()
|
|||
bool ok = true;
|
||||
|
||||
std::string newServiceString;
|
||||
uint32_t newGrpStatus = randNum();
|
||||
uint32_t newSubscribeGrpFlag = randNum();
|
||||
uint32_t newGrpStatus = TEST_FLAG;
|
||||
uint32_t newSubscribeGrpFlag = TEST_FLAG;
|
||||
uint32_t testMask = TEST_MASK;
|
||||
randString(SHORT_STR, newServiceString);
|
||||
|
||||
// mod service flag for first grp
|
||||
|
@ -406,11 +411,11 @@ bool GenExchangeTester::testGrpMetaModRequest()
|
|||
pollForToken(token, opts);
|
||||
ok = mTestService->acknowledgeTokenGrp(token, grpId);
|
||||
|
||||
mTestService->setGroupStatusFlagTS(token, grpIds[0], newGrpStatus);
|
||||
mTestService->setGroupStatusFlagTS(token, grpIds[0], newGrpStatus, testMask);
|
||||
pollForToken(token, opts);
|
||||
ok = mTestService->acknowledgeTokenGrp(token, grpId);
|
||||
|
||||
mTestService->setGroupSubscribeFlagTS(token, grpIds[0], newSubscribeGrpFlag);
|
||||
mTestService->setGroupSubscribeFlagTS(token, grpIds[0], newSubscribeGrpFlag, testMask);
|
||||
pollForToken(token, opts);
|
||||
ok = mTestService->acknowledgeTokenGrp(token, grpId);
|
||||
|
||||
|
@ -432,10 +437,10 @@ bool GenExchangeTester::testGrpMetaModRequest()
|
|||
if(meta.mServiceString != newServiceString)
|
||||
ok = false;
|
||||
|
||||
if(meta.mSubscribeFlags != newSubscribeGrpFlag)
|
||||
if(!(meta.mSubscribeFlags & newSubscribeGrpFlag))
|
||||
ok = false;
|
||||
|
||||
if(meta.mGroupStatus != newGrpStatus)
|
||||
if(!(meta.mGroupStatus & newGrpStatus))
|
||||
ok = false;
|
||||
|
||||
|
||||
|
@ -475,6 +480,7 @@ bool GenExchangeTester::testMsgMetaModRequest()
|
|||
uint32_t token;
|
||||
RsDummyMsg* msgOut = new RsDummyMsg();
|
||||
*msgOut = *msg;
|
||||
msg->meta.mMsgStatus = 0;
|
||||
mTestService->publishDummyMsg(token, msg);
|
||||
|
||||
// poll will block until found
|
||||
|
@ -499,9 +505,10 @@ bool GenExchangeTester::testMsgMetaModRequest()
|
|||
|
||||
mTestService->acknowledgeTokenMsg(token, msgId);
|
||||
|
||||
uint32_t newStatus = 2;
|
||||
uint32_t newStatus = TEST_FLAG;
|
||||
uint32_t testMask = TEST_MASK;
|
||||
// first modify service string
|
||||
mTestService->setMsgStatusFlagTS(token, msgId, newStatus);
|
||||
mTestService->setMsgStatusFlagTS(token, msgId, newStatus, testMask);
|
||||
pollForToken(token, opts);
|
||||
|
||||
mTestService->acknowledgeTokenMsg(token, msgId);
|
||||
|
@ -539,7 +546,7 @@ bool GenExchangeTester::testMsgMetaModRequest()
|
|||
if(meta.mServiceString != newServiceString)
|
||||
ok &= false;
|
||||
|
||||
if(meta.mMsgStatus != newStatus)
|
||||
if(!(meta.mMsgStatus & newStatus))
|
||||
ok &= false;
|
||||
|
||||
|
||||
|
|
|
@ -67,14 +67,14 @@ void GenExchangeTestService::setGroupServiceStringTS(uint32_t &token, const RsGx
|
|||
RsGenExchange::setGroupServiceString(token, grpId, servString);
|
||||
}
|
||||
|
||||
void GenExchangeTestService::setGroupStatusFlagTS(uint32_t &token, const RsGxsGroupId &grpId, const uint32_t &status)
|
||||
void GenExchangeTestService::setGroupStatusFlagTS(uint32_t &token, const RsGxsGroupId &grpId, const uint32_t &status, const uint32_t& mask)
|
||||
{
|
||||
RsGenExchange::setGroupStatusFlags(token, grpId, status, 0xff);
|
||||
RsGenExchange::setGroupStatusFlags(token, grpId, status, mask);
|
||||
}
|
||||
|
||||
void GenExchangeTestService::setGroupSubscribeFlagTS(uint32_t &token, const RsGxsGroupId &grpId, const uint32_t &status)
|
||||
void GenExchangeTestService::setGroupSubscribeFlagTS(uint32_t &token, const RsGxsGroupId &grpId, const uint32_t &status, const uint32_t& mask)
|
||||
{
|
||||
RsGenExchange::setGroupSubscribeFlags(token, grpId, status, 0xff);
|
||||
RsGenExchange::setGroupSubscribeFlags(token, grpId, status, mask);
|
||||
}
|
||||
|
||||
void GenExchangeTestService::setMsgServiceStringTS(uint32_t &token, const RsGxsGrpMsgIdPair &msgId, const std::string &servString)
|
||||
|
@ -82,9 +82,9 @@ void GenExchangeTestService::setMsgServiceStringTS(uint32_t &token, const RsGxsG
|
|||
RsGenExchange::setMsgServiceString(token, msgId, servString);
|
||||
}
|
||||
|
||||
void GenExchangeTestService::setMsgStatusFlagTS(uint32_t &token, const RsGxsGrpMsgIdPair &msgId, const uint32_t &status)
|
||||
void GenExchangeTestService::setMsgStatusFlagTS(uint32_t &token, const RsGxsGrpMsgIdPair &msgId, const uint32_t &status, const uint32_t& mask)
|
||||
{
|
||||
RsGenExchange::setMsgStatusFlags(token, msgId, status, 0xff);
|
||||
RsGenExchange::setMsgStatusFlags(token, msgId, status, mask);
|
||||
}
|
||||
|
||||
void GenExchangeTestService::service_tick()
|
||||
|
|
|
@ -76,13 +76,13 @@ public:
|
|||
bool getMsgRelatedDataTS(const uint32_t &token, GxsMsgRelatedDataMap& msgItems);
|
||||
|
||||
|
||||
void setGroupSubscribeFlagTS(uint32_t& token, const RsGxsGroupId& grpId, const uint32_t& status);
|
||||
void setGroupSubscribeFlagTS(uint32_t& token, const RsGxsGroupId& grpId, const uint32_t& status, const uint32_t& mask);
|
||||
|
||||
void setGroupStatusFlagTS(uint32_t& token, const RsGxsGroupId& grpId, const uint32_t& status);
|
||||
void setGroupStatusFlagTS(uint32_t& token, const RsGxsGroupId& grpId, const uint32_t& status, const uint32_t& mask);
|
||||
|
||||
void setGroupServiceStringTS(uint32_t& token, const RsGxsGroupId& grpId, const std::string& servString);
|
||||
|
||||
void setMsgStatusFlagTS(uint32_t& token, const RsGxsGrpMsgIdPair& msgId, const uint32_t& status);
|
||||
void setMsgStatusFlagTS(uint32_t& token, const RsGxsGrpMsgIdPair& msgId, const uint32_t& status, const uint32_t& mask);
|
||||
|
||||
void setMsgServiceStringTS(uint32_t& token, const RsGxsGrpMsgIdPair& msgId, const std::string& servString );
|
||||
|
||||
|
|
|
@ -21,13 +21,13 @@ int main()
|
|||
// CHECK(tester.testMsgIdRetrieval_OptOrigMsgId()); REPORT("tester.testRelatedMsgIdRetrieval_OrigMsgId()");
|
||||
// CHECK(tester.testMsgIdRetrieval_OptLatest()); REPORT("tester.testRelatedMsgIdRetrieval_Latest()");
|
||||
// CHECK(tester.testMsgMetaModRequest()); REPORT("tester.testMsgMetaModRequest()");
|
||||
CHECK(tester.testMsgRelatedChildDataRetrieval()); REPORT("tester.testMsgRelatedChildDataRetrieval()");
|
||||
//CHECK(tester.testMsgRelatedChildDataRetrieval()); REPORT("tester.testMsgRelatedChildDataRetrieval()");
|
||||
// CHECK(tester.testMsgAllVersions()); REPORT("tester.testMsgAllVersions()");
|
||||
|
||||
// CHECK(tester.testGrpSubmissionRetrieval()); REPORT("tester.testGrpSubmissionRetrieval()");
|
||||
// CHECK(tester.testGrpMetaRetrieval()); REPORT("tester.testGrpMetaRetrieval()");
|
||||
// CHECK(tester.testGrpMetaRetrieval()); REPORT("tester.testGrpMetaRetrieval()");
|
||||
// CHECK(tester.testGrpIdRetrieval()); REPORT("tester.testGrpIdRetrieval()");
|
||||
// CHECK(tester.testGrpMetaModRequest()); REPORT("tester.testGrpMetaModRequest()");
|
||||
CHECK(tester.testGrpMetaModRequest()); REPORT("tester.testGrpMetaModRequest()");
|
||||
|
||||
FINALREPORT("RsGenExchangeTest");
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue