diff -r 594d59766373 -r 7d48bed6ce0c phoneclientserver/phoneclient/tsrc/public/basic/ut_ussd/ut_testenv.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneclientserver/phoneclient/tsrc/public/basic/ut_ussd/ut_testenv.cpp Tue Aug 31 15:45:17 2010 +0300 @@ -0,0 +1,127 @@ + + + +// phoneclientengine +#include "cphsrvresourcemanager.h" +#include "cphsrvussdmanager.h" +#include // USSD API + +// qt stuff +#include + +// unit test +#include "ut_testenv.h" + +// globals +TestEnv* TestEnv::m_singleton = 0; + +// ==================================================================== +// EtelMsgLoop +// ==================================================================== +EtelMsgLoop::EtelMsgLoop() +{ + mSendMessageReqStatus = 0; + + mReceiveMessageReqStatus = 0; + mReceiveMessageData = 0; + mReceiveMessageAttributes = 0; + + mNetworkReleaseReqStatus = 0; + mNetworkReleaseMessageData = 0; + mNetworkReleaseMessageAttributes = 0; +} + +void EtelMsgLoop::receive( const TDesC8& msg, const TDesC8& attr ) +{ + qDebug("EtelMsgLoop::receive mReceiveMessageReqStatus in =%d", + mReceiveMessageReqStatus); + mReceiveMessageData->Copy( msg ); + mReceiveMessageAttributes->Copy( attr ); + const TestMode& mode = TestEnv::env().testMode(); + User::RequestComplete(mReceiveMessageReqStatus, mode.m_error); + qDebug("EtelMsgLoop::receive mReceiveMessageReqStatus out =%d", + mReceiveMessageReqStatus); + QVERIFY(mReceiveMessageReqStatus == 0); +} + +void EtelMsgLoop::networkRelease( const TDesC8& msg, const TDesC8& attr ) +{ + qDebug("EtelMsgLoop::networkRelease mNetworkReleaseReqStatus in =%d", + mNetworkReleaseReqStatus); + mNetworkReleaseMessageData->Copy( msg ); + if ( mNetworkReleaseMessageAttributes ) + mNetworkReleaseMessageAttributes->Copy( attr ); + const TestMode& mode = TestEnv::env().testMode(); + User::RequestComplete(mNetworkReleaseReqStatus, mode.m_error); + qDebug("EtelMsgLoop::networkRelease mNetworkReleaseReqStatus out =%d", + mNetworkReleaseReqStatus); + QVERIFY(mNetworkReleaseReqStatus == 0); +} + +// ==================================================================== +// TestEnv +// ==================================================================== + +void TestEnv::create() +{ + QVERIFY(!m_singleton); + m_singleton = new TestEnv(); + m_singleton->construct(); +} + +void TestEnv::destroy() +{ + QVERIFY(m_singleton); + delete m_singleton; + m_singleton = 0; +} + +TestEnv& TestEnv::env() +{ + return *m_singleton; +} + +TestEnv::TestEnv() +{ +} + +void TestEnv::construct() +{ + int leave; + // create the main USSD resource manager class + m_resourceManager = new CPhSrvResourceManager(m_fs); + TRAP(leave, m_resourceManager->ConstructL()); + QVERIFY(leave == 0); + m_ussdManager = new CPhSrvUssdManager(m_fs,*m_resourceManager); + TRAP(leave,m_ussdManager->ConstructL(*this)); + QVERIFY(leave == 0); + m_fakeMessage = new RMessage2(); +} + +TestEnv::~TestEnv() +{ + delete m_ussdManager; + m_ussdManager = 0; + delete m_resourceManager; + m_resourceManager = 0; + delete m_fakeMessage; + m_fakeMessage = 0; +} + + +#define NULLREF(clz) *reinterpret_cast((void*)0) + +RTelServer& TestEnv::PhSrvETelServer() + { return NULLREF(RTelServer); } + +RMobilePhone& TestEnv::PhSrvMobilePhone() + { return NULLREF(RMobilePhone); } + +RMmCustomAPI& TestEnv::PhSrvCustomPhone() + { return NULLREF(RMmCustomAPI); } + + + + +//End of file +