stdcpp/tsrc/Stdcpp_test/bcdrivers/twiostreams/src/twiostreamsblocks.cpp
changeset 0 e4d67989cc36
child 22 ddc455616bd6
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stdcpp/tsrc/Stdcpp_test/bcdrivers/twiostreams/src/twiostreamsblocks.cpp	Tue Feb 02 02:01:42 2010 +0200
@@ -0,0 +1,1030 @@
+/*
+* Copyright (c) 2009 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: 
+*
+*/
+
+
+
+
+// INCLUDE FILES
+#include <e32svr.h>
+#include <StifParser.h>
+#include <Stiftestinterface.h>
+#include<iostream>
+#include<string>
+#include <vector>
+#include<algorithm>
+#include<fstream>
+#include<sstream>
+#include<istream>
+
+#include<locale>
+#include "twiostreams.h"
+#define STDCPP_OOM FALSE
+using namespace std;
+
+
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// CCtwiostreams::Delete
+// Delete here all resources allocated and opened from test methods. 
+// Called from destructor. 
+// -----------------------------------------------------------------------------
+//
+void Ctwiostreams::Delete() 
+    {
+
+    }
+
+// -----------------------------------------------------------------------------
+// CCtwiostreams::RunMethodL
+// Run specified method. Contains also table of test mothods and their names.
+// -----------------------------------------------------------------------------
+//
+TInt Ctwiostreams::RunMethodL( 
+    CStifItemParser& aItem ) 
+    {
+
+    static TStifFunctionInfo const KFunctions[] =
+        {  
+        // Copy this line for every implemented function.
+        // First string is the function name used in TestScripter script file.
+        // Second is the actual implementation member function. 
+        ENTRY( "basicstring", Ctwiostreams::basicstring ),
+        ENTRY( "basicfilebufL", Ctwiostreams::basicfilebufL ),
+        ENTRY( "basicistreamL", Ctwiostreams::basicistreamL ),
+        ENTRY( "wfstreamL", Ctwiostreams::wfstreamL ),
+        ENTRY( "wifstreamL", Ctwiostreams::wifstreamL ),
+        ENTRY( "wistreamL", Ctwiostreams::wistreamL ),
+		ENTRY( "wofstreamL", Ctwiostreams::wofstreamL ),
+ 		ENTRY( "wistringstreamL", Ctwiostreams::wistringstreamL ),
+ 		ENTRY( "wostringstreamL", Ctwiostreams::wostringstreamL ),
+ 		ENTRY( "wstreambufL", Ctwiostreams::wstreambufL ),
+ 		ENTRY( "wostreamL", Ctwiostreams::wostreamL ),
+ 		ENTRY( "wstringbufL", Ctwiostreams::wstringbufL ),
+         
+
+        };
+
+    const TInt count = sizeof( KFunctions ) / 
+                        sizeof( TStifFunctionInfo );
+
+    return RunInternalL( KFunctions, count, aItem );
+
+    }
+
+// -----------------------------------------------------------------------------
+// Ctwiostreams::basic_string
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+TInt Ctwiostreams::basicstring( CStifItemParser& aItem )
+    {
+				int failures =0;
+				
+				try
+				{
+					
+				
+			    const char *cstr1a = "Hello Out There.";
+			    cout<<"";
+			    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+			   basic_string<char> str1a(cstr1a ,5);
+	 
+			   if(str1a.compare("Hello")!=0)
+			   failures++;
+			    
+			    str1a.append("Out There");
+			    if(!str1a.compare("Hello Out There"))
+			    failures++;
+			    
+			    
+			   string  str2a ( "How Do You Do?" );
+			   basic_string <char> str2b ( str2a , 7 , 7 );
+			   
+			    if(str2b.compare("You Do?")!=0)
+			   failures++;
+			   
+			    
+			 
+			   basic_string <char> str3a ( 5, '9' );
+			   if(str3a.compare("99999")!=0)
+			   failures++;
+			   
+
+			   
+			   basic_string <char> str4a;
+			   string str4b;
+			   basic_string <char> str4c ( str4b.get_allocator( ) );
+			   if (!str4c.empty ())
+			   failures++;
+			      
+
+			  
+			   string str5a ( "Hello World");
+			    basic_string <char>::iterator strp_Iter, str1_Iter, str2_Iter;
+			   
+			   
+			   
+			   strp_Iter = str5a.begin();
+			   if(*strp_Iter != 'H' )
+				failures++;
+			   
+			   
+			   
+			   
+			   basic_string <char>::reference refStr2 = str5a.at ( 3 );
+			   
+			   if(refStr2 != 'l')
+			   failures++;
+			   
+			   
+			   if(str5a.size()!=11)
+			   failures++;
+			   if(str5a.length()!=11)
+			   failures++;
+			   if(str5a.capacity()!=11)
+			   failures++;
+			   
+
+
+		#if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 	   
+			  /*  if(failures)
+			    return  KErrGeneral;
+			    return KErrNone;
+			    */
+
+    }
+
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    }
+
+// -----------------------------------------------------------------------------
+// Ctwiostreams::basic_filebuf
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+// 
+ 
+ TInt Ctwiostreams::basicfilebufL( CStifItemParser& aItem )
+ {
+ 	
+	 int failures=0;
+	 try
+	 {
+	 	
+	 
+   	 char* wszHello = "Hello World";
+   	 char wBuffer[128];
+   	  cout<<"";
+		    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+		
+     basic_filebuf<char> wOutFile;
+	 
+		
+    // Open a file, wcHello.txt, then write to it, then dump the
+    // file's contents in hex
+    wOutFile.open("c:\\TestFramework\\docs\\basicfilebuf.txt",ios_base::out | ios_base::trunc | ios_base::binary);
+    if(!wOutFile.is_open())
+    failures++;
+    
+    wOutFile.sputn(wszHello, 11);
+    wOutFile.close();
+ 	if(wOutFile.is_open())
+ 	failures++;
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+ /*	if(failures)
+	return KErrGeneral;
+ 	else
+ 	return KErrNone;
+ 
+ */
+  
+ 
+ 
+ 
+ }
+ 
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    }
+ 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::basic_istream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+ 
+ TInt Ctwiostreams::basicistreamL( CStifItemParser& aItem )
+ {
+ 
+ 
+ 		int failures = 0;
+ 		try
+ 		{
+ 		 cout<<"";
+ 				    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+			
+ 		
+     typedef std::basic_istream<char, std::char_traits<char> >         Input;
+    typedef std::basic_ofstream<Input::char_type, Input::traits_type> Output;
+	 
+		
+    Input::char_type s [200];
+ 
+    Output out ("c:\\TestFramework\\docs\\basicistream.txt", std::ios::in | std::ios::out | std::ios::trunc);
+
+     Input in (out.rdbuf ());
+
+    float f = 3.14159;
+    int   i = 3;
+
+    // output to the file
+    out << "He lifted his head and pondered.\n"
+        << f << std::endl << i << std::endl;
+  
+    // seek to the beginning of the file
+    in.seekg (0);
+  
+  if(!out.is_open())
+  failures++;
+  
+  out.close();
+  
+  if(out.is_open())
+  failures++;
+  #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+  /*if(failures)
+   return KErrGeneral;
+  else
+  return KErrNone;
+ 
+  */
+ 
+ 	
+ }
+ 
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    }
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wfstream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+ TInt Ctwiostreams::wfstreamL( CStifItemParser& aItem )
+ 
+ {
+ 	
+ int failures=0;
+ 
+ try
+ {
+ 	 cout<<"";
+ 		    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+		
+ wfstream file;
+ 	  
+		
+ file.open("c:\\TestFramework\\docs\\wfstream.txt");
+ file.rdbuf();
+ if(!file.is_open())
+ failures++;
+ 
+ file.close();
+ 
+ if(file.is_open())
+ failures++;
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+/* if(failures)
+ return KErrGeneral;
+ return KErrNone;
+ 
+ */
+ 
+ }
+ 
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    }
+ 
+ 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wifstream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+ TInt Ctwiostreams::wifstreamL( CStifItemParser& aItem )
+ 
+ {
+ int failures =0;
+ 
+ try
+ {
+ 	 cout<<"";
+ 		    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+		
+ wifstream file;
+ 		    
+		
+ file.open("c:\\TestFramework\\docs\\wifstream.txt");
+ 
+ 
+ file.rdbuf();
+ if(!file.is_open())
+ failures++;
+ 
+ file.close();
+ 
+ if(file.is_open())
+ failures++;
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+/* if(failures)
+ return KErrGeneral;
+ return KErrNone;
+ 
+ */
+ 	
+ }
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    }
+ 
+ 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wfilebuf,wistream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+ TInt Ctwiostreams::wistreamL( CStifItemParser& aItem )
+ 
+ {
+ 	int failures=0;
+ 	try
+ 	{
+ 		
+ 	
+ int length;
+wchar_t * buffer;
+wchar_t getl[16] ;
+ 
+ wfilebuf fb;
+  fb.open ("c:\\TestFramework\\docs\\wistream.txt",ios::in);
+   cout<<"";
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+  wistream is(&fb);
+  
+  if(!fb.is_open())
+  failures++;
+  
+  //if( char(is.get())!= 'S')
+ // failures++;
+  
+//if(sizeof(fb)!=140)  
+//failures++;
+
+
+
+
+  // get length of file:
+  is.seekg (0, ios::end);
+  length = is.tellg();
+  is.seekg (0, ios::beg);
+  
+  
+  
+
+
+if(length != 15)
+failures++;
+
+ wchar_t ch = is.get();
+  
+   
+ if(is.gcount() != 1)
+ failures++;
+ 
+  
+ if( ch != L'S')
+ failures++;
+ 
+ 
+
+ 
+ 
+ 
+ 
+ wchar_t pk1 = is.peek();
+ 
+ if(pk1!= 'a')
+ failures++;
+ 
+ 
+ is.unget();
+ 
+ wchar_t pk2 = is.peek();
+ if(pk2!= 'S')
+ failures++;
+ 
+ is.get();
+ is.putback('K');
+ 
+ is.getline(getl,16,'\0');
+ 
+ if(getl == L"Kample sentence")
+ failures++;
+ 
+
+
+fb.close();
+
+if(fb.is_open())
+failures++;
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+/*
+ if(failures)
+ 
+ return sizeof(fb);
+ return KErrNone;
+  
+ */
+ 
+ 
+ 
+ 
+ }
+ 
+ catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+ 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wofstream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+ 
+  TInt Ctwiostreams::wofstreamL( CStifItemParser& aItem )
+  {
+  	
+  	int failures=0;
+  	try
+  	{
+  	 cout<<"";	
+  	 #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+  	
+  	wofstream outfile;
+  	
+  	outfile.open("c:\\TestFramework\\docs\\wostream.txt");
+  	outfile.write(L"This is an ostreamfile",22);
+  	
+  	outfile.rdbuf();
+  	if(!outfile.is_open())
+  	failures++;
+  	
+  	outfile.close();
+  	
+  	
+  	if(outfile.is_open())
+  	failures++;
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+ /* 	if(failures)
+  	return KErrGeneral;
+  	else
+  	return KErrNone;
+  
+  */
+  
+  
+  }
+  
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+  
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wistringstream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+   TInt Ctwiostreams::wistringstreamL( CStifItemParser& aItem )
+   {
+   int failures=0;
+   try
+   {
+   	
+   
+   	int output[5];
+   int n,val;
+   wstring strvalues ;
+   
+   strvalues = L"1 2 3 4 5";
+    cout<<"";
+    #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+   wistringstream iss(strvalues,wistringstream::in);
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+   
+   for(n=0;n<5;n++)
+   {
+   	
+   static int j;
+   
+   iss>>val;
+   
+   output[j]=val;
+   
+   j++;
+   
+   
+   }
+   
+      if(iss.str()!=L"1 2 3 4 5")
+      failures++;
+/*
+   if(output[0]== 1)
+   if(output[1]== 2)
+   if(output[2]== 3)
+   if(output[3]== 4 )
+   if(output[4]== 5)
+   
+   return KErrNone;
+   else 
+   return  KErrGeneral;
+   */
+   
+    if(output[0]!= 1)
+    failures++;
+   if(output[1]!= 2)
+   failures++;
+   if(output[2]!= 3)
+   failures++;
+   if(output[3]!= 4 )
+   failures++;
+   if(output[4]!= 5)
+   failures++;
+   }
+  
+   catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wostringstream,wstring
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+  TInt Ctwiostreams::wostringstreamL( CStifItemParser& aItem )
+  {
+  	int failures=0;
+  	try
+  	{ cout<<"";
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 		
+  	
+  
+wostringstream oss;
+wstring mystr;
+
+oss << L"wostringstream testcase";
+oss.rdbuf();
+mystr=oss.str();
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+/*if(mystr.compare(L"wostringstream testcase")==0)
+return KErrNone;
+return KErrGeneral;
+*/
+if(mystr.compare(L"wostringstream testcase")!=0)
+failures++;
+
+  }
+  
+  
+   catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wstreambuf,wofstreams
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+   
+  TInt Ctwiostreams::wstreambufL( CStifItemParser& aItem )
+  {
+
+
+//locale   loc ("en_GB.UTF-8");
+
+ 
+ 
+ int failures = 0;
+ try
+ {
+ 	
+ 
+ wchar_t a[4]=
+ {
+ 	0
+ };
+ 
+ wchar_t sentence[]= L"Sample sentence"; cout<<"";
+  #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+ wstreambuf * pbuf;
+ wofstream ostr ("c:\\TestFramework\\docs\\wstreambuf.txt");
+ 
+ 
+  
+// if(cout.rdbuf( )->getloc( ).name( ).c_str( ) != "C") //failing
+ //failures++;
+ 
+ wchar_t ch[28];
+ //rdbuf()s
+ pbuf = ostr.rdbuf();
+
+
+//sputn()
+
+
+
+
+ pbuf->sputn (sentence,sizeof(sentence)-1);
+
+  
+ ostr.open("c:\\TestFramework\\docs\\wstreambuf.txt");
+  
+ if(!ostr.is_open())
+ failures++;
+   
+
+ long size1 = pbuf->pubseekoff(0,ios_base::end);
+ if(size1!=31)
+ failures++;
+  
+
+  pbuf->sputc('a');
+  
+
+ long size2 = pbuf->pubseekoff(0,ios_base::end);
+ if(size2!=32)
+ failures++;
+  
+ wifstream istr("c:\\TestFramework\\docs\\wstreambuf.txt");
+ pbuf = istr.rdbuf();
+
+streamsize i = istr.rdbuf()->sgetn(&a[0], 3);   
+    //a[i] = istr.widen('\0');
+
+    // Display the size and contents of the buffer passed to sgetn.
+   if(i!=3)
+   failures++;
+  
+ 
+ int k = pbuf->snextc();
+ 
+ 
+ //sgetc()
+ while (pbuf->sgetc()!=EOF)
+  {
+     static int i;
+      //sbumpc()
+     ch[i] = pbuf->sbumpc();
+     i++;
+  }
+
+  
+  if(ch[0]!='l' )
+  failures++;
+  
+ 
+  
+  
+  
+  
+  istr.close();
+  ostr.close();
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+ /* if(failures)
+  return KErrGeneral;
+  else
+  return KErrNone;
+   */
+ 
+
+
+  }
+  
+   catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wostream
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+//
+
+ TInt Ctwiostreams::wostreamL( CStifItemParser& aItem )  
+ {
+ 	
+
+ 
+ int failures = 0;
+ try
+ {
+ 	
+
+ wfilebuf fb;
+wchar_t input[18] = L"wostream testcase";
+streamsize size = 5;
+  fb.open ("c:\\TestFramework\\docs\\wostream.txt",ios::out); cout<<"";
+   #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif 
+  wostream os(&fb);
+  
+  os.write(input,size);
+  streamoff i = os.tellp();
+  if(i!= 5)
+  failures++;
+  
+  os.put('K');
+  streamoff j = os.tellp();
+  if(j!=6)
+  failures++;
+
+  os.seekp(2);
+    os<<"i";
+  streamoff k = os.tellp();
+
+  if(k!=3)
+  failures++;
+  
+  os.flush();
+  
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+  
+ 
+  /*
+if(failures)
+return KErrGeneral;
+return KErrNone;
+*/
+ 
+  
+ }
+ 
+  catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+
+// -----------------------------------------------------------------------------
+// Ctwiostreams::wstringbuf
+// Example test method function.
+// 
+// -----------------------------------------------------------------------------
+// 
+ 
+  TInt Ctwiostreams::wstringbufL( CStifItemParser& aItem )  
+  {
+  int failures=0;
+  try
+  {
+   cout<<"";	
+ #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::EDeterministic,1);
+  #endif  
+wstringbuf sb;
+wstring mystr;
+
+  
+sb.sputn (L"Sample string",13);
+mystr=sb.str();
+
+/*if(mystr.compare(L"Sample string") == 0)
+return KErrNone;
+else
+return KErrGeneral;
+  */
+  #if  STDCPP_OOM
+User::__DbgSetAllocFail(FALSE,RHeap::ENone,1);
+  #endif 
+  if(mystr.compare(L"Sample string") != 0)
+  failures++;
+  
+  }
+  
+   catch(bad_alloc&)
+   {
+   	//do nothing
+    }
+   catch(...)
+   {
+   	failures++;
+   	
+   }
+   
+	if( failures == 0 )
+		return KErrNone;
+  else  
+		return KErrGeneral;
+    } 
+  
+//  End of File
+
+//  End of File