phoneclientserver/phoneclient/tsrc/public/basic/ut_ussd/ut_testenv.cpp
branchRCL_3
changeset 19 7d48bed6ce0c
--- /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 <cphcltussd.h> // USSD API
+
+// qt stuff
+#include <QtTest/QtTest>
+
+// 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<clz*>((void*)0)
+
+RTelServer& TestEnv::PhSrvETelServer()
+    { return NULLREF(RTelServer); }
+
+RMobilePhone& TestEnv::PhSrvMobilePhone()
+    { return NULLREF(RMobilePhone); }
+
+RMmCustomAPI& TestEnv::PhSrvCustomPhone()
+    { return NULLREF(RMmCustomAPI); }
+
+
+
+
+//End of file
+