photosgallery/viewframework/medialists/tsrc/t_cglxfetcherrorarray/t_cglxfetcherrorarray.cpp
changeset 0 4e91876724a2
child 18 bcb43dc84c44
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/photosgallery/viewframework/medialists/tsrc/t_cglxfetcherrorarray/t_cglxfetcherrorarray.cpp	Thu Dec 17 08:45:44 2009 +0200
@@ -0,0 +1,272 @@
+/*
+* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:    CGlxFetchErrorArray unit tests
+*
+*/
+
+
+
+
+//  CLASS HEADER
+#include "t_cglxfetcherrorarray.h"
+
+//  EXTERNAL INCLUDES
+#include <digia/eunit/EUnitMacros.h>
+#include <digia/eunit/EUnitDecorators.h>
+
+#include <mpxmediageneraldefs.h>
+
+#include <glxmediageneraldefs.h>
+
+//  INTERNAL INCLUDES
+#include "glxfetcherrorarray.h"
+#include "glxfetcherror.h"
+
+const TInt KTestMediaIdGeneral = 1;
+
+// CONSTRUCTION
+T_CGlxFetchErrorArray* T_CGlxFetchErrorArray::NewL()
+    {
+    T_CGlxFetchErrorArray* self = T_CGlxFetchErrorArray::NewLC();
+    CleanupStack::Pop();
+
+    return self;
+    }
+
+T_CGlxFetchErrorArray* T_CGlxFetchErrorArray::NewLC()
+    {
+    T_CGlxFetchErrorArray* self = new( ELeave ) T_CGlxFetchErrorArray();
+    CleanupStack::PushL( self );
+
+    self->ConstructL();
+
+    return self;
+    }
+
+// Destructor (virtual by CBase)
+T_CGlxFetchErrorArray::~T_CGlxFetchErrorArray()
+    {
+    }
+
+// Default constructor
+T_CGlxFetchErrorArray::T_CGlxFetchErrorArray()
+    {
+    }
+
+// Second phase construct
+void T_CGlxFetchErrorArray::ConstructL()
+    {
+    // The ConstructL from the base class CEUnitTestSuiteClass must be called.
+    // It generates the test case table.
+    CEUnitTestSuiteClass::ConstructL();
+    }
+
+//  METHODS
+
+
+void T_CGlxFetchErrorArray::SetupL(  )
+    {
+    EUNIT_PRINT(_L("Initial setup"));
+
+    EUNIT_PRINT(_L("ErrorArray1 has 2 errors"));
+    iCGlxFetchErrorArray1 = new (ELeave) CGlxFetchErrorArray();
+
+    TGlxFetchError error1(KMPXMediaGeneralSize, KErrNotSupported);
+    iCGlxFetchErrorArray1->AddErrorL(error1);
+
+    TGlxFetchError error2(KGlxMediaGeneralSystemItem, KErrNotFound);
+    iCGlxFetchErrorArray1->AddErrorL(error2);
+
+    EUNIT_PRINT(_L("ErrorArray2 has 0 errors"));
+    iCGlxFetchErrorArray2 = new (ELeave) CGlxFetchErrorArray();
+    }
+    
+
+void T_CGlxFetchErrorArray::Teardown(  )
+    {
+    delete iCGlxFetchErrorArray1; 
+    iCGlxFetchErrorArray1 = NULL; 
+
+    delete iCGlxFetchErrorArray2; 
+    iCGlxFetchErrorArray2 = NULL; 
+    }
+    
+
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_ErrorCountL(  )
+    {
+    // Check ErrorArray1 has 2 errors
+    EUNIT_PRINT(_L("Check ErrorArray1 has 2 errors"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->ErrorCount() == 2, "Incorrect error count");
+
+    // Check ErrorArray2 has 0 errors
+    EUNIT_PRINT(_L("Check ErrorArray2 has 0 errors"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray2->ErrorCount() == 0, "Incorrect error count");
+    }
+    
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_ErrorL(  )
+    {
+    // Obtain error at index 0
+    EUNIT_PRINT(_L("Obtain error at ErrorArray1 index 0"));
+    const TGlxFetchError& error1 = iCGlxFetchErrorArray1->Error(0);
+
+    EUNIT_PRINT(_L("Check error at ErrorArray1 index 0"));
+    EUNIT_ASSERT_DESC(error1.iAttr == KMPXMediaGeneralSize && error1.iError == KErrNotSupported, "Incorrect error returned");
+
+    // Obtain error at index 1
+    EUNIT_PRINT(_L("Obtain error at ErrorArray1 index 1"));
+    const TGlxFetchError& error2 = iCGlxFetchErrorArray1->Error(1);
+
+    EUNIT_PRINT(_L("Check error at ErrorArray1 index 1"));
+    EUNIT_ASSERT_DESC(error2.iAttr == KGlxMediaGeneralSystemItem && error2.iError == KErrNotFound, "Incorrect error returned");
+    }
+    
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_AddErrorLL(  )
+    {
+    // Add existing error
+    EUNIT_PRINT(_L("Add existing error to ErrorArray1"));
+    TGlxFetchError error1(KMPXMediaGeneralSize, KErrGeneral);
+    iCGlxFetchErrorArray1->AddErrorL(error1);
+
+    EUNIT_PRINT(_L("Check ErrorArray1 still has 2 errors"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->ErrorCount() == 2, "Incorrect error count");
+
+    const TGlxFetchError& storedError1 = iCGlxFetchErrorArray1->Error(0);
+    EUNIT_ASSERT_DESC(storedError1.iAttr == KMPXMediaGeneralSize && storedError1.iError == KErrGeneral, "Incorrect error returned");
+
+    // Add new error
+    EUNIT_PRINT(_L("Add new error to ErrorArray2"));
+    TGlxFetchError error2(KMPXMediaGeneralDate, KErrCorrupt);
+    iCGlxFetchErrorArray2->AddErrorL(error2);
+
+    EUNIT_PRINT(_L("Check ErrorArray2 has 1 new error"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray2->ErrorCount() == 1, "Incorrect error count");
+
+    const TGlxFetchError& storedError2 = iCGlxFetchErrorArray2->Error(0);
+    EUNIT_ASSERT_DESC(storedError2.iAttr == KMPXMediaGeneralDate && storedError2.iError == KErrCorrupt, "Incorrect error returned");
+    }
+    
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_RemoveL(  )
+    {
+    // Remove error at index 1
+    EUNIT_PRINT(_L("Remove error at ErrorArray1 index 1"));
+    iCGlxFetchErrorArray1->Remove(1);
+
+    EUNIT_PRINT(_L("Check ErrorArray1 still has 1 error"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->ErrorCount() == 1, "Incorrect error count");
+
+    const TGlxFetchError& storedError1 = iCGlxFetchErrorArray1->Error(0);
+    EUNIT_ASSERT_DESC(storedError1.iAttr == KMPXMediaGeneralSize && storedError1.iError == KErrNotSupported, "Incorrect error returned");
+    }
+    
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_FindErrorL(  )
+    {
+    // Find existing error
+    EUNIT_PRINT(_L("Find existing error in ErrorArray1"));
+
+    EUNIT_PRINT(_L("Check correct ErrorArray1 index returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->FindError(KMPXMediaGeneralSize) == 0, "Incorrect index for error");
+
+    // Find non-existing error
+    EUNIT_PRINT(_L("Find non-existing error in ErrorArray1"));
+
+    EUNIT_PRINT(_L("Check KErrNotFound returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->FindError(KMPXMediaGeneralTitle) == KErrNotFound, "Index should be KErrNotFound");
+
+    // Find non-existing error on empty ErrorArray2
+    EUNIT_PRINT(_L("Find non-existing error in empty ErrorArray2"));
+
+    EUNIT_PRINT(_L("Check KErrNotFound returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray2->FindError(KMPXMediaGeneralSize) == KErrNotFound, "Index should be KErrNotFound");
+    }
+    
+void T_CGlxFetchErrorArray::T_CGlxFetchErrorArray_FindError2L(  )
+    {
+    // Find KMPXMediaIdGeneral errors
+    EUNIT_PRINT(_L("Find KMPXMediaIdGeneral errors in ErrorArray1"));
+
+    EUNIT_PRINT(_L("Check correct ErrorArray1 index returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->FindError(KMPXMediaIdGeneral) == 0, "Incorrect index for error");
+
+    // Find KGlxMediaIdGeneral errors
+    EUNIT_PRINT(_L("Find KGlxMediaIdGeneral errors in ErrorArray1"));
+
+    EUNIT_PRINT(_L("Check correct ErrorArray1 index returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->FindError(KGlxMediaIdGeneral) == 1, "Incorrect index for error");
+
+    // Find non-existing error
+    EUNIT_PRINT(_L("Find non-existing error in ErrorArray1"));
+
+    EUNIT_PRINT(_L("Check KErrNotFound returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray1->FindError(KTestMediaIdGeneral) == KErrNotFound, "Index should be KErrNotFound");
+
+    // Find non-existing error on empty ErrorArray2
+    EUNIT_PRINT(_L("Find non-existing error on empty ErrorArray2"));
+
+    EUNIT_PRINT(_L("Check KErrNotFound returned"));
+    EUNIT_ASSERT_DESC(iCGlxFetchErrorArray2->FindError(KTestMediaIdGeneral) == KErrNotFound, "Index should be KErrNotFound");
+    }
+    
+
+//  TEST TABLE
+EUNIT_BEGIN_TEST_TABLE(
+    T_CGlxFetchErrorArray,
+    "Add test suite description here.",
+    "UNIT" )
+
+EUNIT_TEST(
+    "ErrorCount - test1",
+    "CGlxFetchErrorArray",
+    "ErrorCount - test1",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_ErrorCountL, Teardown)
+    
+EUNIT_TEST(
+    "Error - test2",
+    "CGlxFetchErrorArray",
+    "Error - test2",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_ErrorL, Teardown)
+    
+EUNIT_TEST(
+    "AddErrorL - test3",
+    "CGlxFetchErrorArray",
+    "AddErrorL - test3",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_AddErrorLL, Teardown)
+    
+EUNIT_TEST(
+    "Remove - test4",
+    "CGlxFetchErrorArray",
+    "Remove - test4",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_RemoveL, Teardown)
+    
+EUNIT_TEST(
+    "FindError - test5",
+    "CGlxFetchErrorArray",
+    "FindError - test5",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_FindErrorL, Teardown)
+    
+EUNIT_TEST(
+    "FindError - test6",
+    "CGlxFetchErrorArray",
+    "FindError - test6",
+    "FUNCTIONALITY",
+    SetupL, T_CGlxFetchErrorArray_FindError2L, Teardown)
+    
+
+EUNIT_END_TEST_TABLE
+
+//  END OF FILE