loggingservices/eventlogger/test/src/t_logpurge.cpp
branchRCL_3
changeset 9 667e88a979d7
parent 0 08ec8eefde2f
equal deleted inserted replaced
8:fa9941cf3867 9:667e88a979d7
     1 // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2003-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
    15 
    15 
    16 #include <s32file.h>
    16 #include <s32file.h>
    17 #include "TEST.H"
    17 #include "t_logutil2.h"
    18 #include <logview.h>
    18 #include <logview.h>
    19 
    19 
    20 #undef test  //there is a "test" macro which hides "RTest test" declaration.
    20 RTest TheTest(_L("t_logpurge"));
    21 
       
    22 RTest test(_L("Log Purge Test Harness"));
       
    23 
    21 
    24 const TInt KTestEventNum = 10;
    22 const TInt KTestEventNum = 10;
    25 const TInt KTestEventAge = 5;
    23 const TInt KTestEventAge = 5;
    26 const TInt KTestRecentNum = 10;
    24 const TInt KTestRecentNum = 10;
    27 const TInt KTestDuplicateNum = 10;
    25 const TInt KTestDuplicateNum = 10;
    40 @SYMTestExpectedResults Test must not fail
    38 @SYMTestExpectedResults Test must not fail
    41 @SYMREQ                 REQ0000
    39 @SYMREQ                 REQ0000
    42 */
    40 */
    43 LOCAL_C void TestMaxLogSizeL(CLogClient& aClient)
    41 LOCAL_C void TestMaxLogSizeL(CLogClient& aClient)
    44 	{
    42 	{
    45 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0875 "));
    43 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0875 "));
    46 	CLogEvent* event = CLogEvent::NewL();
    44 	CLogEvent* event = CLogEvent::NewL();
    47 	CleanupStack::PushL(event);
    45 	CleanupStack::PushL(event);
    48 	event->SetEventType(KLogCallEventTypeUid);
    46 	event->SetEventType(KLogCallEventTypeUid);
    49 
    47 
    50 	CTestActive* active = new(ELeave)CTestActive();
    48 	CTestActive* active = new(ELeave)CTestActive();
   196 @SYMTestExpectedResults Test must not fail
   194 @SYMTestExpectedResults Test must not fail
   197 @SYMREQ                 REQ0000
   195 @SYMREQ                 REQ0000
   198 */
   196 */
   199 LOCAL_C void TestMaxLogSizeConfigL(CLogClient& aClient)
   197 LOCAL_C void TestMaxLogSizeConfigL(CLogClient& aClient)
   200 	{
   198 	{
   201 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0876 "));
   199 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0876 "));
   202 	CLogEvent* event = CLogEvent::NewL();
   200 	CLogEvent* event = CLogEvent::NewL();
   203 	CleanupStack::PushL(event);
   201 	CleanupStack::PushL(event);
   204 	event->SetEventType(KLogCallEventTypeUid);
   202 	event->SetEventType(KLogCallEventTypeUid);
   205 
   203 
   206 	CTestActive* active = new(ELeave)CTestActive();
   204 	CTestActive* active = new(ELeave)CTestActive();
   294 @SYMTestExpectedResults Test must not fail
   292 @SYMTestExpectedResults Test must not fail
   295 @SYMREQ                 REQ0000
   293 @SYMREQ                 REQ0000
   296 */
   294 */
   297 LOCAL_C void TestMaxLogAgeL(CLogClient& aClient, TLogAge aMaxLogAge)
   295 LOCAL_C void TestMaxLogAgeL(CLogClient& aClient, TLogAge aMaxLogAge)
   298 	{
   296 	{
   299 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0877 "));
   297 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0877 "));
   300 	CLogEvent* event = CLogEvent::NewL();
   298 	CLogEvent* event = CLogEvent::NewL();
   301 	CleanupStack::PushL(event);
   299 	CleanupStack::PushL(event);
   302 	event->SetEventType(KLogCallEventTypeUid);
   300 	event->SetEventType(KLogCallEventTypeUid);
   303 
   301 
   304 	CTestActive* active = new(ELeave)CTestActive();
   302 	CTestActive* active = new(ELeave)CTestActive();
   396 @SYMTestExpectedResults Test must not fail
   394 @SYMTestExpectedResults Test must not fail
   397 @SYMREQ                 REQ0000
   395 @SYMREQ                 REQ0000
   398 */
   396 */
   399 LOCAL_C void TestMaxRecentSize1L(CLogClient& aClient)
   397 LOCAL_C void TestMaxRecentSize1L(CLogClient& aClient)
   400 	{
   398 	{
   401 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0878 "));
   399 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0878 "));
   402 	CLogEvent* event = CLogEvent::NewL();
   400 	CLogEvent* event = CLogEvent::NewL();
   403 	CleanupStack::PushL(event);
   401 	CleanupStack::PushL(event);
   404 
   402 
   405 	// Incoming
   403 	// Incoming
   406 	TBuf<KLogMaxDirectionLength> buf;
   404 	TBuf<KLogMaxDirectionLength> buf;
   517 @SYMTestExpectedResults Test must not fail
   515 @SYMTestExpectedResults Test must not fail
   518 @SYMREQ                 REQ0000
   516 @SYMREQ                 REQ0000
   519 */
   517 */
   520 LOCAL_C void TestMaxRecentSizeConfigL(CLogClient& aClient)
   518 LOCAL_C void TestMaxRecentSizeConfigL(CLogClient& aClient)
   521 	{
   519 	{
   522 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0879 "));
   520 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0879 "));
   523 	CLogEvent* event = CLogEvent::NewL();
   521 	CLogEvent* event = CLogEvent::NewL();
   524 	CleanupStack::PushL(event);
   522 	CleanupStack::PushL(event);
   525 
   523 
   526 	// Incoming
   524 	// Incoming
   527 	TBuf<KLogMaxDirectionLength> buf;
   525 	TBuf<KLogMaxDirectionLength> buf;
   621 @SYMTestExpectedResults Test must not fail
   619 @SYMTestExpectedResults Test must not fail
   622 @SYMREQ                 REQ0000
   620 @SYMREQ                 REQ0000
   623 */
   621 */
   624 LOCAL_C void TestMaxRecentSize2L(CLogClient& aClient)
   622 LOCAL_C void TestMaxRecentSize2L(CLogClient& aClient)
   625 	{
   623 	{
   626 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0880 "));
   624 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0880 "));
   627 	CLogEvent* event = CLogEvent::NewL();
   625 	CLogEvent* event = CLogEvent::NewL();
   628 	CleanupStack::PushL(event);
   626 	CleanupStack::PushL(event);
   629 
   627 
   630 	// Incoming
   628 	// Incoming
   631 	TBuf<KLogMaxDirectionLength> buf;
   629 	TBuf<KLogMaxDirectionLength> buf;
   751 @SYMTestExpectedResults Test must not fail
   749 @SYMTestExpectedResults Test must not fail
   752 @SYMREQ                 REQ0000
   750 @SYMREQ                 REQ0000
   753 */
   751 */
   754 LOCAL_C void TestNoPurgeWithGetL(CLogClient& aClient)
   752 LOCAL_C void TestNoPurgeWithGetL(CLogClient& aClient)
   755 	{
   753 	{
   756 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0881 "));
   754 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0881 "));
   757 	CLogEvent* event = CLogEvent::NewL();
   755 	CLogEvent* event = CLogEvent::NewL();
   758 	CleanupStack::PushL(event);
   756 	CleanupStack::PushL(event);
   759 	event->SetEventType(KLogCallEventTypeUid);
   757 	event->SetEventType(KLogCallEventTypeUid);
   760 
   758 
   761 	CTestActive* active = new(ELeave)CTestActive();
   759 	CTestActive* active = new(ELeave)CTestActive();
   832 @SYMTestExpectedResults Test must not fail
   830 @SYMTestExpectedResults Test must not fail
   833 @SYMREQ                 REQ0000
   831 @SYMREQ                 REQ0000
   834 */
   832 */
   835 LOCAL_C void TestClearLog1L(CLogClient& aClient)
   833 LOCAL_C void TestClearLog1L(CLogClient& aClient)
   836 	{
   834 	{
   837 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0882 "));
   835 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0882 "));
   838 	CLogEvent* event = CLogEvent::NewL();
   836 	CLogEvent* event = CLogEvent::NewL();
   839 	CleanupStack::PushL(event);
   837 	CleanupStack::PushL(event);
   840 	event->SetEventType(KLogCallEventTypeUid);
   838 	event->SetEventType(KLogCallEventTypeUid);
   841 
   839 
   842 	CTestActive* active = new(ELeave)CTestActive();
   840 	CTestActive* active = new(ELeave)CTestActive();
   914 @SYMTestExpectedResults Test must not fail
   912 @SYMTestExpectedResults Test must not fail
   915 @SYMREQ                 REQ0000
   913 @SYMREQ                 REQ0000
   916 */
   914 */
   917 LOCAL_C void TestClearLog2L(CLogClient& aClient)
   915 LOCAL_C void TestClearLog2L(CLogClient& aClient)
   918 	{
   916 	{
   919 	test.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0883 "));
   917 	TheTest.Next(_L(" @SYMTestCaseID:SYSLIB-LOGENG-CT-0883 "));
   920 	CLogEvent* event = CLogEvent::NewL();
   918 	CLogEvent* event = CLogEvent::NewL();
   921 	CleanupStack::PushL(event);
   919 	CleanupStack::PushL(event);
   922 	event->SetEventType(KLogCallEventTypeUid);
   920 	event->SetEventType(KLogCallEventTypeUid);
   923 
   921 
   924 	CTestActive* active = new(ELeave)CTestActive();
   922 	CTestActive* active = new(ELeave)CTestActive();
  1253 
  1251 
  1254 #endif//SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
  1252 #endif//SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
  1255 
  1253 
  1256 void doTestsL()
  1254 void doTestsL()
  1257 	{
  1255 	{
  1258 	TestUtils::Initialize(_L("T_LOGPURGE"));
  1256 	TestUtils::Initialize(_L("t_logpurge"));
  1259 	TestUtils::DeleteDatabaseL();
  1257 	TestUtils::DeleteDatabaseL();
  1260 
  1258 
  1261 	CLogClient* client = CLogClient::NewL(theFs);
  1259 	CLogClient* client = CLogClient::NewL(theFs);
  1262 	CleanupStack::PushL(client);
  1260 	CleanupStack::PushL(client);
  1263 
  1261 
  1264 	test.Start(_L("Maximum Log Size"));
  1262 	TheTest.Start(_L("Maximum Log Size"));
  1265 	TestMaxLogSizeL(*client);
  1263 	TestMaxLogSizeL(*client);
  1266 	theLog.Write(_L8("Test 1 OK\n"));
  1264 	theLog.Write(_L8("Test 1 OK\n"));
  1267 
  1265 
  1268 	test.Next(_L("Purge Log When Config Changed"));
  1266 	TheTest.Next(_L("Purge Log When Config Changed"));
  1269 	TestMaxLogSizeConfigL(*client);
  1267 	TestMaxLogSizeConfigL(*client);
  1270 	theLog.Write(_L8("Test 2 OK\n"));
  1268 	theLog.Write(_L8("Test 2 OK\n"));
  1271 
  1269 
  1272 	test.Next(_L("Test purge by Maximum Log Age enabled/disabled"));
  1270 	TheTest.Next(_L("Test purge by Maximum Log Age enabled/disabled"));
  1273 	TestMaxLogAgeL(*client, 0);	// disable purging by age
  1271 	TestMaxLogAgeL(*client, 0);	// disable purging by age
  1274 	TestMaxLogAgeL(*client, KTestEventAge * 60 * 60 * 24);  
  1272 	TestMaxLogAgeL(*client, KTestEventAge * 60 * 60 * 24);  
  1275 	theLog.Write(_L8("Test 3 OK\n"));
  1273 	theLog.Write(_L8("Test 3 OK\n"));
  1276 
  1274 
  1277 	test.Next(_L("Maximum Recent List Size"));
  1275 	TheTest.Next(_L("Maximum Recent List Size"));
  1278 	TestMaxRecentSize1L(*client);
  1276 	TestMaxRecentSize1L(*client);
  1279 	theLog.Write(_L8("Test 4 OK\n"));
  1277 	theLog.Write(_L8("Test 4 OK\n"));
  1280 
  1278 
  1281 	test.Next(_L("Purge Recent Lists When Config Changed"));
  1279 	TheTest.Next(_L("Purge Recent Lists When Config Changed"));
  1282 	TestMaxRecentSizeConfigL(*client);
  1280 	TestMaxRecentSizeConfigL(*client);
  1283 	theLog.Write(_L8("Test 5 OK\n"));
  1281 	theLog.Write(_L8("Test 5 OK\n"));
  1284 
  1282 
  1285 	test.Next(_L("Maximum Recent List Size With Duplicates"));
  1283 	TheTest.Next(_L("Maximum Recent List Size With Duplicates"));
  1286 	TestMaxRecentSize2L(*client);
  1284 	TestMaxRecentSize2L(*client);
  1287 	theLog.Write(_L8("Test 6 OK\n"));
  1285 	theLog.Write(_L8("Test 6 OK\n"));
  1288 
  1286 
  1289 	test.Next(_L("Check no purge when retrieving event"));
  1287 	TheTest.Next(_L("Check no purge when retrieving event"));
  1290 	TestNoPurgeWithGetL(*client);
  1288 	TestNoPurgeWithGetL(*client);
  1291 	theLog.Write(_L8("Test 7 OK\n"));
  1289 	theLog.Write(_L8("Test 7 OK\n"));
  1292 
  1290 
  1293 	test.Next(_L("Check ClearLog works for different locales"));
  1291 	TheTest.Next(_L("Check ClearLog works for different locales"));
  1294 	TestClearLog1L(*client);
  1292 	TestClearLog1L(*client);
  1295 	TestClearLog2L(*client);
  1293 	TestClearLog2L(*client);
  1296  	theLog.Write(_L8("Test 8 OK\n"));
  1294  	theLog.Write(_L8("Test 8 OK\n"));
  1297 
  1295 
  1298 #ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
  1296 #ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
  1299 	test.Next(_L(" @SYMTestCaseID:PDS-LOGENG-UT-4036 CLogClient::ClearLog() + SimId test"));
  1297 	TheTest.Next(_L(" @SYMTestCaseID:PDS-LOGENG-UT-4036 CLogClient::ClearLog() + SimId test"));
  1300  	ClearLogSimIdL(*client);
  1298  	ClearLogSimIdL(*client);
  1301  	theLog.Write(_L8("Test 9 OK\n"));
  1299  	theLog.Write(_L8("Test 9 OK\n"));
  1302 
  1300 
  1303 	test.Next(_L(" @SYMTestCaseID:PDS-LOGENG-UT-4037 CLogClient::ClearLog()/recent + SimId test"));
  1301 	TheTest.Next(_L(" @SYMTestCaseID:PDS-LOGENG-UT-4037 CLogClient::ClearLog()/recent + SimId test"));
  1304  	ClearLogRecentSimIdL(*client);
  1302  	ClearLogRecentSimIdL(*client);
  1305  	theLog.Write(_L8("Test 10 OK\n"));
  1303  	theLog.Write(_L8("Test 10 OK\n"));
  1306 #endif 	
  1304 #endif 	
  1307  	
  1305  	
  1308 	CleanupStack::PopAndDestroy(); // client;
  1306 	CleanupStack::PopAndDestroy(); // client;