--- a/stif/StifTFwIf/src/UIStore.cpp Thu May 27 14:26:55 2010 +0300
+++ b/stif/StifTFwIf/src/UIStore.cpp Fri Jun 11 15:16:26 2010 +0300
@@ -46,7 +46,6 @@
_LIT( KUIStoreSetStart, "[TestSetStart]" );
_LIT( KUIStoreSetEnd, "[TestSetEnd]" );
-_LIT( KUIStoreSetName, "TestSetName=" );
_LIT( KUIStoreSetCaseStart, "[TestSetCaseStart]" );
_LIT( KUIStoreSetCaseEnd, "[TestSetCaseEnd]" );
_LIT( KUIStoreCaseModuleName, "ModuleName=" );
@@ -1071,7 +1070,23 @@
}
delete setInfo;
-
+ TFileName setfile;
+ setfile.Append(KUIStoreDefaultDir);
+ setfile.Append(aSetName);
+ RFs fs;
+ TInt err=fs.Connect();
+ if(err!=KErrNone)
+ {
+ fs.Close();
+ return err;
+ }
+ err=fs.Delete(setfile);
+ if(err!=KErrNone)
+ {
+ fs.Close();
+ return err;
+ }
+
return KErrNone;
}
@@ -1321,27 +1336,65 @@
EXPORT_C TInt CUIStore::SaveTestSet2( TDes& aSetName )
{
+ RRefArray<TDesC> testsets;
+
+ GetTestSetsList(testsets);
+ TBool isexist(EFalse);
+ for(TInt i=0;i<testsets.Count();i++)
+ {
+ if(testsets[i]==aSetName)
+ {
+ isexist=ETrue;
+ break;
+ }
+
+ }
+ testsets.Reset();
+ if(!isexist)
+ {
+ TTime current;
+ TDateTime date_rep;
+ current.HomeTime();
+ date_rep = current.DateTime();
+ TBuf<32> currSetName;
+ _LIT(f_ext,".set");
+
+ //create "test set name" string
+ currSetName.AppendNum(date_rep.Year());
+ currSetName.Append('_');
+ currSetName.AppendNum(date_rep.Month()+1); // Incrimination necessary, because Day and Month fields of TDateTime class are 0 based
+ currSetName.Append('_');
+ currSetName.AppendNum(date_rep.Day()+1);
+ currSetName.Append('_');
+ currSetName.AppendNum(date_rep.Hour());
+ currSetName.Append('_');
+ currSetName.AppendNum(date_rep.Minute());
+ currSetName.Append('_');
+ currSetName.AppendNum(date_rep.Second());
+ currSetName.Append(f_ext);
+
+ for(TInt i=0;i<iTestSets.Count();i++)
+ {
+ if(iTestSets[i]->Name()==aSetName)
+ {
+ iTestSets[i]->RenameTestSet(currSetName);
+
+ }
+
+ }
+
+
+
+ aSetName.Zero();
+ aSetName.Copy(currSetName);
+
+
+
+ }
TPtrC setName;
TFileName tmp;
- TTime current;
- TDateTime date_rep;
- current.HomeTime();
- date_rep = current.DateTime();
- TBuf<32> currSetName;
- _LIT(f_ext,".set");
-
- //create "test set name" string
- currSetName.AppendNum(date_rep.Year());
- currSetName.Append('_');
- currSetName.AppendNum(date_rep.Month()+1); // Incrimination necessary, because Day and Month fields of TDateTime class are 0 based
- currSetName.Append('_');
- currSetName.AppendNum(date_rep.Day()+1);
- currSetName.Append('_');
- currSetName.AppendNum(date_rep.Hour());
- currSetName.Append('_');
- currSetName.AppendNum(date_rep.Minute());
- currSetName.Append(f_ext);
+
TInt ret = ParseTestSetName( aSetName, setName, tmp );
if( ret != KErrNone )
@@ -1357,10 +1410,10 @@
}
TRAPD( err,
- SaveTestSetL( *setInfo, currSetName );
+ SaveTestSetL( *setInfo, aSetName );
);
- aSetName.Copy(currSetName);
+
return err;
@@ -1387,7 +1440,6 @@
*/
EXPORT_C TInt CUIStore::LoadTestSet( const TDesC& aSetName )
{
-
TPtrC setName;
TFileName tmp;
TInt ret = ParseTestSetName( aSetName, setName, tmp );
@@ -1395,8 +1447,28 @@
{
return ret;
}
-
- TRAPD( err,
+ CTestSetInfo* setInfo= NULL;
+
+ FindSetByName( setName, setInfo );
+ if(setInfo != NULL)
+ {
+ return KErrNone;
+ }
+
+ TRAPD( err,
+ setInfo = CTestSetInfo::NewL( aSetName );
+ );
+ if( err != KErrNone )
+ {
+ return err;
+ }
+ if( iTestSets.Append( setInfo ) != KErrNone )
+ {
+ delete setInfo;
+ return KErrNoMemory;
+ }
+
+ TRAP( err,
LoadTestSetL( setName, aSetName );
);
@@ -1848,7 +1920,7 @@
-------------------------------------------------------------------------------
*/
-void CUIStore::LoadTestSetL( const TDesC& aSetName, const TDesC& aSetFileName )
+void CUIStore::LoadTestSetL( const TDesC& aSetName, const TDesC& /*aSetFileName*/ )
{
TPtrC tmp;
@@ -1856,15 +1928,8 @@
TInt high;
TInt64 interval;
- CStifParser* parser = NULL;
-
- TRAPD( err,
- parser = CStifParser::NewL( _L(""), aSetFileName );
- );
- if( err != KErrNone )
- {
- parser = CStifParser::NewL( KUIStoreDefaultDir, aSetName );
- }
+ CStifParser* parser = CStifParser::NewL( KUIStoreDefaultDir, aSetName );
+
CleanupStack::PushL( parser );
@@ -1872,24 +1937,8 @@
parser->SectionL( KUIStoreSetStart, KUIStoreSetEnd );
CleanupStack::PushL( section );
- CStifItemParser* item = section->GetItemLineL( KUIStoreSetName );
- CleanupStack::PushL( item );
-
- User::LeaveIfError( item->GetString( KUIStoreSetName, tmp ) );
-
- // get the standard method
- TCollationMethod method = *Mem::CollationMethodByIndex(0);
- // ignore case
- method.iFlags |= TCollationMethod::EFoldCase;
-
- TInt compare = aSetName.CompareC( tmp, 3, &method );
- if( compare != KErrNone )
- {
- User::LeaveIfError( KErrNotFound );
- }
-
- CleanupStack::PopAndDestroy( item );
-
+ CStifItemParser* item;
+
// Get started test case (if possible)
TUint lastStartedCaseIndex = 0;
item = section->GetItemLineL(KUIStoreLastStartedCaseIndex);
@@ -1908,7 +1957,6 @@
__TRACE(KInit, (_L("Could not find [%S] from test set file."), &KUIStoreLastStartedCaseIndex));
}
- User::LeaveIfError( CreateTestSet( aSetName ) );
CTestSetInfo* setInfo = NULL;
User::LeaveIfError( FindSetByName( aSetName, setInfo ) );
@@ -2048,8 +2096,6 @@
// Saving
buffer.Format(_L("%S"), &KUIStoreSetStart);
WriteLineL(file, buffer);
- buffer.Format(_L("%S %S"), &KUIStoreSetName,&aSetFileName);
- WriteLineL(file, buffer);
// Saving test set causes reset of index
aSetInfo.SetLastStartedCaseIndex(0);
@@ -4737,6 +4783,31 @@
return iLastStartedCaseIndex;
}
+/*
+-------------------------------------------------------------------------------
+
+ Class: CTestSetInfo
+
+ Method: RenameTestSet
+
+ Description: rename test set
+
+ Parameters: aTestSetName : new TestSetName
+
+ Return Values: TInt: KErrNone if success.
+
+ Errors/Exceptions: None
+
+ Status: Approved
+
+-------------------------------------------------------------------------------
+*/
+void CTestSetInfo::RenameTestSet(const TDesC& aTestSetName)
+ {
+ delete iName;
+ iName=NULL;
+ iName=aTestSetName.AllocL();
+ }
// ================= OTHER EXPORTED FUNCTIONS =================================
// End of File