Backed out changeset 467f14a11325 (bug 517604)
authorShawn Wilsher <sdwilsh@shawnwilsher.com>
Wed, 30 Sep 2009 17:03:37 -0700
changeset 33312 7eab054403ff5dc04f3ce061125a32049476041a
parent 33301 467f14a11325660510a69ec0f2240f7bd685cc0e
child 33313 c5ff0838c35f25c14e271c5e0b68c208569174c5
push idunknown
push userunknown
push dateunknown
bugs517604
milestone1.9.3a1pre
backs out467f14a11325660510a69ec0f2240f7bd685cc0e
Backed out changeset 467f14a11325 (bug 517604)
xpcom/tests/TestHarness.h
--- a/xpcom/tests/TestHarness.h
+++ b/xpcom/tests/TestHarness.h
@@ -44,22 +44,16 @@
 #ifndef TestHarness_h__
 #define TestHarness_h__
 
 #include "nsComponentManagerUtils.h"
 #include "nsServiceManagerUtils.h"
 #include "nsCOMPtr.h"
 #include "nsAutoPtr.h"
 #include "nsStringGlue.h"
-#include "nsAppDirectoryServiceDefs.h"
-#include "nsDirectoryServiceDefs.h"
-#include "nsDirectoryServiceUtils.h"
-#include "nsIDirectoryService.h"
-#include "nsIFile.h"
-#include "nsIProperties.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdarg.h>
 
 static PRUint32 gFailCount = 0;
 
 /**
  * Prints the given failure message and arguments using printf, prepending
@@ -115,17 +109,17 @@ static PRBool _PlatformDeinitProfiler();
  * @precondition Profiling is not started
  * @param profileName A descriptive name for this profiling run.  Every 
  *                    attempt is made to name the profile data according
  *                    to this name, but check your platform's profiler
  *                    documentation for what this means.
  * @return PR_TRUE if profiling was available and successfully started.
  * @see StopProfiling
  */
-inline PRBool
+static PRBool
 StartProfiling(const char* profileName)
 {
     if (!gProfilerTriedInit) {
         gProfilerTriedInit = PR_TRUE;
         gProfilerInited = _PlatformInitProfiler();
     }
     if (!gProfilerInited)
         return PR_FALSE;
@@ -144,25 +138,25 @@ StartProfiling(const char* profileName)
  * documentation of your platform's profiler.
  *
  * This is NOT thread safe.
  *
  * @precondition Profiling was started
  * @return PR_TRUE if profiling was successfully stopped.
  * @see StartProfiling
  */
-inline PRBool
+static PRBool
 StopProfiling()
 {
     NS_ASSERTION(gProfilerTriedInit, "tried to stop profile before starting one");
     if (!gProfilerInited)
         return PR_FALSE;
 
     NS_PRECONDITION(gCurrentProfile, "tried to stop profile before starting one");
-
+    
     const char* profileName = gCurrentProfile;
     gCurrentProfile = 0;
     return _PlatformStopProfile(profileName);
 }
 
 //--------------------------------------------------
 // Shark impl
 #if defined(MOZ_SHARK)
@@ -230,50 +224,39 @@ static PRBool
     NS_WARNING("Profiling is not available/configured for your platform.");
     return PR_FALSE;
 }
 
 #endif
 
 //-----------------------------------------------------------------------------
 
-class ScopedXPCOM : public nsIDirectoryServiceProvider
+class ScopedXPCOM
 {
   public:
-    NS_DECL_ISUPPORTS
-
     ScopedXPCOM(const char* testName,
                 nsIDirectoryServiceProvider *dirSvcProvider = NULL)
-    : mDirSvcProvider(dirSvcProvider)
     {
       mTestName = testName;
       printf("Running %s tests...\n", mTestName);
 
-      nsresult rv = NS_InitXPCOM2(&mServMgr, NULL, this);
+      nsresult rv = NS_InitXPCOM2(&mServMgr, NULL, dirSvcProvider);
       if (NS_FAILED(rv))
       {
         fail("NS_InitXPCOM2 returned failure code 0x%x", rv);
         mServMgr = NULL;
       }
     }
 
     ~ScopedXPCOM()
     {
       if (gProfilerInited)
         if (!_PlatformDeinitProfiler())
           NS_WARNING("Problem shutting down profiler");
 
-      // If we created a profile directory, we need to remove it.
-      if (mProfD) {
-        if (NS_FAILED(mProfD->Remove(PR_TRUE)))
-          NS_WARNING("Problem removing profile direrctory");
-
-        mProfD = nsnull;
-      }
-
       if (mServMgr)
       {
         NS_RELEASE(mServMgr);
         nsresult rv = NS_ShutdownXPCOM(NULL);
         if (NS_FAILED(rv))
         {
           fail("XPCOM shutdown failed with code 0x%x", rv);
           exit(1);
@@ -283,87 +266,14 @@ class ScopedXPCOM : public nsIDirectoryS
       printf("Finished running %s tests.\n", mTestName);
     }
 
     PRBool failed()
     {
       return mServMgr == NULL;
     }
 
-    already_AddRefed<nsIFile> GetProfileDirectory()
-    {
-      if (mProfD) {
-        NS_ADDREF(mProfD);
-        return mProfD.get();
-      }
-
-      // Create a unique temporary folder to use for this test.
-      nsCOMPtr<nsIFile> profD;
-      nsresult rv = NS_GetSpecialDirectory(NS_OS_TEMP_DIR,
-                                           getter_AddRefs(profD));
-      NS_ENSURE_SUCCESS(rv, nsnull);
-
-      rv = profD->Append(NS_LITERAL_STRING("cpp-unit-profd"));
-      NS_ENSURE_SUCCESS(rv, nsnull);
-
-      rv = profD->CreateUnique(nsIFile::DIRECTORY_TYPE, 0755);
-      NS_ENSURE_SUCCESS(rv, nsnull);
-
-      mProfD = profD;
-      return profD.forget();
-    }
-
-    ////////////////////////////////////////////////////////////////////////////
-    //// nsIDirectoryServiceProvider
-
-    NS_IMETHODIMP GetFile(const char *aProperty, PRBool *_persistent,
-                          nsIFile **_result)
-    {
-      // If we were supplied a directory service provider, ask it first.
-      if (mDirSvcProvider &&
-          NS_SUCCEEDED(mDirSvcProvider->GetFile(aProperty, _persistent,
-                                                _result))) {
-        return NS_OK;
-      }
-
-      // Otherwise, the test harness provides some directories automatically.
-      if (0 == strcmp(aProperty, NS_APP_USER_PROFILE_50_DIR) ||
-          0 == strcmp(aProperty, NS_APP_USER_PROFILE_LOCAL_50_DIR)) {
-        nsCOMPtr<nsIFile> profD = GetProfileDirectory();
-        NS_ENSURE_TRUE(profD, NS_ERROR_FAILURE);
-
-        nsCOMPtr<nsIFile> clone;
-        nsresult rv = profD->Clone(getter_AddRefs(clone));
-        NS_ENSURE_SUCCESS(rv, rv);
-
-        *_persistent = PR_TRUE;
-        clone.forget(_result);
-        return NS_OK;
-      }
-
-      return NS_ERROR_FAILURE;
-    }
-
   private:
     const char* mTestName;
     nsIServiceManager* mServMgr;
-    nsCOMPtr<nsIDirectoryServiceProvider> mDirSvcProvider;
-    nsCOMPtr<nsIFile> mProfD;
 };
 
-NS_IMPL_QUERY_INTERFACE1(
-  ScopedXPCOM,
-  nsIDirectoryServiceProvider
-)
-
-NS_IMETHODIMP_(nsrefcnt)
-ScopedXPCOM::AddRef()
-{
-  return 2;
-}
-
-NS_IMETHODIMP_(nsrefcnt)
-ScopedXPCOM::Release()
-{
-  return 1;
-}
-
 #endif  // TestHarness_h__