Stderr to a file - avoid xml problems in error messages.
/*
* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of the License "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:
*
*/
#include <cppunit/config/SourcePrefix.h>
#include "misc.h"
CPPUNIT_TEST_SUITE_REGISTRATION( CTestMisc );
#include "depchecker.h"
#include "exceptionreporter.h"
/**
Test the misctest output(cmdline) by E32input with directory for DBG flag.
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForValidE32Input()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--e32input", "--dbg", "S:/GT0415/cppunit/imgcheck_unittest/imgs/executables/UseStaticDLL.exe"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(4,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}
/**
Test the misctest output(cmdline) by provinding value E32 input directory for VID and DEP.
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForVidDep()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--dep", "--vid", "--e32input", "S:/GT0415/cppunit/imgcheck_unittest/imgs/executables/helloworld.exe", "-x"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(6,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}
/**
Test the misctest output(cmdline) by provinding and ELF input for Dbg flag TRUE expecting an error message.
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForValidELFInput()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--dbg=true", "S:/GT0415/cppunit/imgcheck_unittest/imgs/input/HelloWorld.exe"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(3,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}
/**
Test the misctest output(cmdline) by provinding extension rom image for Dbg flag TRUE.
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForValidExtnRomimage()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--dbg=true", "S:/GT0415/cppunit/imgcheck_unittest/imgs/extrom1.img"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(3,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}
/**
Test the misctest output(cmdline) by provinding extension image with Dbg flag true with VID enabled and disabled VID.
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForEnableandSuppress()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--dbg=true", "--vid", "-s=sid,vid", "S:/GT0415/cppunit/imgcheck_unittest/imgs/extrom1.img"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(5,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}
/**
Test the misctest output(cmdline) by valid E32input directory for SID, expecting the warning for SID
Note: Refer the code coverage output for percentage of check.
@internalComponent
@released
*/
void CTestMisc::TestForValidSid()
{
int status = 0;
CmdLineHandler* cmdInput;
ImgCheckManager* imgCheckerPtr;
try
{
char* argvect[] = { "imgchecker", "--sid", "S:/GT0415/cppunit/imgcheck_unittest/imgs/executables", "--e32input"};
cmdInput = new CmdLineHandler();
ReturnType val = cmdInput->ProcessCommandLine(4,argvect);
if(val == ESuccess)
{
imgCheckerPtr = new ImgCheckManager(cmdInput);
imgCheckerPtr->CreateObjects();
imgCheckerPtr->Execute();
imgCheckerPtr->FillReporterData();
imgCheckerPtr->GenerateReport();
}
}
catch(ExceptionReporter& aExceptionReport)
{
aExceptionReport.Report();
status = 0;
}
DELETE(cmdInput);
DELETE(imgCheckerPtr);
delete cmdInput;
}