Ejemplo n.º 1
0
void CExampleCpiManager::FindCpiFilesL()
/**	Looks in the UAProf directory for any CPI files and adds them to the array of CPI files
	@since		8.0
*/
	{
	TUidType uidType(KUidUaProfCpi);
	CDir* dir;
	// Get a list of files that match the CPI UID
	TInt err = iFs.GetDir(KTxtCpiFilesLocation, uidType, ESortByUid, dir);
	CleanupStack::PushL(dir);	
	if (err == KErrPathNotFound)
		User::LeaveIfError(iFs.MkDirAll(KTxtCpiFilesLocation()));
	else
		User::LeaveIfError(err);
	
	const TInt fileCount = dir->Count();
	for (TInt i = 0; i < fileCount; ++i)
		{
		TEntry* entry = NULL;
		entry = new (ELeave) TEntry((*dir)[i]);
		entry->iName = KTxtCpiFilesLocation();
		(entry->iName.Des()).Append((*dir)[i].iName);
		User::LeaveIfError(iCpiFileList.Append(entry));
		}
	CleanupStack::PopAndDestroy(dir);
	}
void WidgetCheckInstallationFromFolder::execute()
{
    QString filePath = m_WidgetInfo[ EPropertyFilePath ].toString();
    
    if ( !( QFileInfo(filePath).isFile() ) ) 
    {
        RProcess me;
        TUidType uidType(me.Type());
        TUint32 uid3 = uidType[2].iUid;

        if (uid3 != BackupRestoreUid && uid3 != MediaManagerUid) 
        {
            emit aborted( EErrorPermissionDenied );
            return;
        }
    }

    emit completed();
    return; 
}
Ejemplo n.º 3
0
LOCAL_C void CreateUidTestFiles()
//
// Create files with uids for testing
//
	{
    // Create \\gSessionPath\\UIDCHKNO.SHT - no uid, zero length
	RFile file;
	TInt r=file.Replace(TheFs,_L("UIDCHKNO.SHT"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.Close();

    // Create \\gSessionPath\\UIDCHKNO.LNG - no uid, long length
	r=file.Replace(TheFs,_L("UIDCHKNO.LNG"),EFileRead|EFileWrite);
	test_KErrNone(r);
	r=file.Write(_L8("Hello World needs to be over 16 bytes"));
	file.Close();

    // Create \\gSessionPath\\UIDCHK.BLG - with uid no data
	r=file.Replace(TheFs,_L("UIDCHK.BLG"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType(TUid::Uid('U'),TUid::Uid('I'),TUid::Uid('D'));
	TCheckedUid checkedUid(uidType);
	TPtrC8 buf((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	file.Close();

    // Create \\gSessionPath\\UIDCHK.MSG - with uid and data
	r=file.Replace(TheFs,_L("UIDCHK.MSG"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType2(TUid::Uid('X'),TUid::Uid('Y'),TUid::Uid('Z'));
	checkedUid.Set(uidType2);
	buf.Set((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	r=file.Write(_L8("More file data"));
	test_KErrNone(r);
	file.Close();

    // Create \\gSessionPath\\UIDCHK.DAT - uid stored only in the file
	r=file.Replace(TheFs,_L("UIDCHK.DAT"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType3(TUid::Uid('D'),TUid::Uid('A'),TUid::Uid('T'));
	checkedUid.Set(uidType3);
	buf.Set((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	r=file.Write(_L8("More file data"));
	test_KErrNone(r);
	file.Close();

    // Create \\gSessionPath\\UIDCHK.PE - uid stored in WINS PE file header
	r=file.Replace(TheFs,_L("UIDWINS.PE"),EFileRead|EFileWrite);
	test_KErrNone(r);

#if defined(__WINS__)
    if (!IsTestingLFFS())
        {
	    RFile fileSource;
	    r=fileSource.Open(TheFs,_L("Z:\\TEST\\T_CHKUID.EXE"),EFileShareReadersOnly|EFileRead);
	    test_KErrNone(r);

	    TBuf8<0x100> buffer;
	    do
		    {
		    r=fileSource.Read(buffer);
		    test_KErrNone(r);
		    r=file.Write(buffer);
		    test_KErrNone(r);
		    }
	    while (buffer.Length()==buffer.MaxLength());

	    fileSource.Close();
        }
    else
        {
	    r=file.Write(_L8("Some zany stuff here!"));
	    test_KErrNone(r);
        }
#else
	r=file.Write(_L8("Some zany stuff here!"));
	test_KErrNone(r);
#endif
	file.Close();
	}
Ejemplo n.º 4
0
LOCAL_C void CreateTestFiles()
//
// Create files with uids for testing
//
	{

	test.Next(_L("Create test files"));
	TInt r=TheFs.MkDir(_L("\\F32-TST\\"));
	test_Value(r, r == KErrNone || r==KErrAlreadyExists);

	RFile file;

//	Create \\gSessionPath\\UIDCHK.BLG - with uid no data
	r=file.Replace(TheFs,_L("\\F32-TST\\UIDCHK.BLG"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType(TUid::Uid('U'),TUid::Uid('I'),TUid::Uid('D'));
	TCheckedUid checkedUid(uidType);
	TPtrC8 buf((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	file.Close();

//	Create \\gSessionPath\\UIDCHK.MSG - with uid and data
	r=file.Replace(TheFs,_L("\\F32-TST\\UIDCHK.MSG"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType2(TUid::Uid('X'),TUid::Uid('Y'),TUid::Uid('Z'));
	checkedUid.Set(uidType2);
	buf.Set((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	r=file.Write(_L8("More file data"));
	test_KErrNone(r);
	file.Close();
	
//	Create \\gSessionPath\\UIDCHK.DAT - uid stored only in the file
	r=file.Replace(TheFs,_L("\\F32-TST\\UIDCHK.DAT"),EFileRead|EFileWrite);
	test_KErrNone(r);
	TUidType uidType3(TUid::Uid('D'),TUid::Uid('A'),TUid::Uid('T'));
	checkedUid.Set(uidType3);
	buf.Set((TUint8*)&checkedUid,sizeof(TCheckedUid));
	r=file.Write(buf);
	test_KErrNone(r);
	r=file.Write(_L8("More file data"));
	test_KErrNone(r);
	file.Close();

//	Make a few random files - these will be deleted before the test begins
//	but are necessary to try to split file ReadFileSection into non-contiguous clusters
	
	r=file.Replace(TheFs,_L("\\F32-TST\\Temp1.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(550);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp2.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp3.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();
	
	r=file.Replace(TheFs,_L("\\F32-TST\\Temp4.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(550);
	file.Close();
	
	r=file.Replace(TheFs,_L("\\F32-TST\\Temp5.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp6.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp7.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp8.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp9.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	r=file.Replace(TheFs,_L("\\F32-TST\\Temp10.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);
	file.SetSize(256);
	file.Close();

	TheFs.Delete(_L("\\F32-TST\\Temp2.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp4.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp6.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp8.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp10.txt"));
	
	r=file.Replace(TheFs,_L("\\F32-TST\\ReadFileSection1.txt"),EFileRead|EFileWrite);
	test_KErrNone(r);

//	Write 5000 bytes of nonsense
	
	TInt i=0;
	for ( ; i<100; i++)
		{
		r=file.Write(alphaPtr);
		test_KErrNone(r);
		r=file.Write(numberPtr);
		test_KErrNone(r);
		r=file.Write(humptyPtr);
		test_KErrNone(r);
		}
	
	file.Close();

	TheFs.Delete(_L("\\F32-TST\\Temp1.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp3.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp5.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp7.txt"));
	TheFs.Delete(_L("\\F32-TST\\Temp9.txt"));
	}
/**
@SYMTestCaseID		SYSLIB-BAFL-CT-4023    
@SYMREQ  	    	REQ8170, REQ8172		
@SYMTestCaseDesc    DummyAPIs
@SYMTestPriority    HIGH
@SYMTestStatus      Implemented
@SYMTestActions    	An attempt should be made to call each remove method as if it was still 
@SYMTestActions    	present in the System Utils dummy apis 3, 7, 8, 9, 11 – 20, 25 - 40 for winsc 
@SYMTestActions    	and 1 – 8, 12, 16 – 20, 25 - 40 for eabi.					 
@SYMTestExpectedResults Trace should be logged explaining that unsupported method calls have 
@SYMTestExpectedResults	been made, but no errors should occur. Trace is only logged if 
@SYMTestExpectedResults	_DEBUG is  defined
*/
TVerdict CSysUtilsDummyAPIsStep::doTestStepL()
	{

	TUidType uidType(KDynamicLibraryUid, KSharedLibraryUid,
			TUid::Uid (KSysUtilDllUid3));

	RLibrary library;
	TInt err = library.Load (_L("sysutil.dll"),uidType);
	if ( err == KErrNone)
		{
		__ASSERT_ALWAYS(err==KErrNone,User::Panic(_L("Failed to load sysutil.dll, error: %d."),err));
#ifdef __WINSCW__

		TLibraryFunction ordinalfunction = library.Lookup (3);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (7);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (8);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (9);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (11);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (12);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (13);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (14);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (15);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (16);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (17);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (18);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (19);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (20);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (15);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (16);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (17);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (18);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (19);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (20);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (25);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (26);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (27);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (28);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (29);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (30);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (31);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (32);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (33);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (34);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (35);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (36);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (37);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (38);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (39);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (40);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

#else 
		//eabi
		TLibraryFunction ordinalfunction = library.Lookup(1);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(2);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(3);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(4);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(5);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(6);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(7);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(8);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(12);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(16);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(17);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(18);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(19);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();

		ordinalfunction = library.Lookup(20);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction)();
		
		ordinalfunction = library.Lookup (25);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (26);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (27);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (28);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (29);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (30);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (31);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (32);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (33);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (34);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (35);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (36);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
		
		ordinalfunction = library.Lookup (37);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (38);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (39);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();

		ordinalfunction = library.Lookup (40);
		__ASSERT_ALWAYS(ordinalfunction!=NULL,User::Panic(_L("Failed to find ordinal in sysutil.dll."),KErrGeneral));
		(*ordinalfunction) ();
#endif

		}
	else
		{
		ERR_PRINTF1 (_L("DummyAPI failed"));
		SetTestStepResult (EFail);
		}

	return TestStepResult ();
	}
static bool processIconL(TInt32 uid, QString& newIconPath, const QString& path, const QString& basePath)
{
    LOG("processIconL path" << path);
    LOG("processIconL basePath " << basePath);
    // this should never happen as there is usually at least
    // the default icon path here
    if (path.isEmpty())
        return false;

    // 3 cases here for widget icon:
    // 1: default icon (i.e. QT_DEFAULT_ICON)
    // 2: an image file
    // 3: svg(z) image file

    // generate icon path
    newIconPath = basePath;
    if (!basePath.endsWith(QDir::separator()))
      newIconPath.append(QDir::separator());

#ifdef QTWRT_USE_USIF
    newIconPath.append('[' + QString::number( uid, 16 ) + "].png");
#else
    newIconPath.append('[' + QString::number( uid, 16 ) + "].mbm");
#endif
    LOG("processIconL newIconPath" << newIconPath << QFile::exists(newIconPath));
    QDir dir = QDir::root();
    dir.mkpath(basePath);

    bool ret = false;

    QString srcPath = path;
    if (path == QT_DEFAULT_ICON) {
        srcPath = newIconPath + ".png";
        if (QFile::exists(srcPath))
            QFile::remove(srcPath);

        if (!QFile::copy(path, srcPath))
            return false;

        // when default icon file is read only, so changing the attribute of copied icon file
        // so that, it can be writable otherwise it may cause problems while deleting/cleanup
        if (!QFile::setPermissions(srcPath, QFile::WriteOwner))
            return false;
    }

    RProcess myUID;
    TUidType uidType(myUID.Type());
    TUint32 processuid = uidType[2].iUid;
    if ((processuid == BACKUP_RESTORE_UID || processuid ==  MEDIA_MANAGER_UID) &&
        QFile::exists(newIconPath)) {
        // skip the convertion since the file is good
        LOG("processIconL skipping conversion");
        ret = true;
    } else {

        // try to convert the image into symbian specific format
        QEventLoop* loop = new QEventLoop();
        IconConverterWrapper* iconConverter = new IconConverterWrapper(loop);

#ifdef QTWRT_USE_USIF
        // if the destination icon already exists, remove it
        if (QFile::exists(newIconPath))
            QFile::remove(newIconPath);

        if (srcPath.endsWith(QLatin1String(".png"), Qt::CaseInsensitive) && 
            QFile::copy(srcPath, newIconPath))
            ret = true;
#else
        if (iconConverter && iconConverter->Init(srcPath, newIconPath)) {
            loop->exec();
            ret = true;
        }
#endif

        if (!ret) {
            // if convert fails, check if the file was .svg
            ret = processOtherFormats( newIconPath, path, *iconConverter, loop );
        }

        delete iconConverter;
        delete loop;
    }
    return ret;
}