diff --git a/Cabal/tests/PackageTests.hs b/Cabal/tests/PackageTests.hs
index 69b6c8000eb6ac4b410162aac0bc4f007e3c5d14..7cec4381ae036494705ab37022b0f7892b09f226 100644
--- a/Cabal/tests/PackageTests.hs
+++ b/Cabal/tests/PackageTests.hs
@@ -9,7 +9,8 @@ module Main where
 import Data.Version (Version(Version))
 import Distribution.Simple.Utils (cabalVersion)
 import Distribution.Text (display)
-import System.Directory (setCurrentDirectory)
+import System.Directory (getCurrentDirectory, setCurrentDirectory)
+import System.FilePath ((</>))
 import Test.Framework (Test, TestName, defaultMain, testGroup)
 import Test.Framework.Providers.HUnit (hUnitTestToTests)
 import qualified Test.HUnit as HUnit
@@ -29,7 +30,7 @@ import PackageTests.BuildDeps.TargetSpecificDeps1.Check
 import PackageTests.BuildDeps.TargetSpecificDeps2.Check
 import PackageTests.BuildDeps.TargetSpecificDeps3.Check
 import PackageTests.BuildTestSuiteDetailedV09.Check
-import PackageTests.PackageTester (compileSetup)
+import PackageTests.PackageTester (PackageSpec(..), compileSetup)
 import PackageTests.PathsModule.Executable.Check
 import PackageTests.PathsModule.Library.Check
 import PackageTests.PreProcess.Check
@@ -43,8 +44,8 @@ import PackageTests.TestSuiteExeV10.Check
 hunit :: TestName -> HUnit.Test -> Test
 hunit name test = testGroup name $ hUnitTestToTests test
 
-tests :: Version -> [Test]
-tests version =
+tests :: Version -> PackageSpec -> [Test]
+tests version inplaceSpec =
     [ hunit "BuildDeps/SameDepsAllRound"
       PackageTests.BuildDeps.SameDepsAllRound.Check.suite
       -- The two following tests were disabled by Johan Tibell as
@@ -79,7 +80,7 @@ tests version =
     , hunit "EmptyLib/emptyLib"
       PackageTests.EmptyLib.Check.emptyLib
     , hunit "BuildTestSuiteDetailedV09"
-      PackageTests.BuildTestSuiteDetailedV09.Check.suite
+      $ PackageTests.BuildTestSuiteDetailedV09.Check.suite inplaceSpec
     ] ++
     -- These tests are only required to pass on cabal version >= 1.7
     (if version >= Version [1, 7] []
@@ -104,9 +105,17 @@ tests version =
 
 main :: IO ()
 main = do
+    wd <- getCurrentDirectory
+    let dbFile = wd </> "dist/package.conf.inplace"
+        inplaceSpec = PackageSpec
+            { directory = []
+            , configOpts = [ "--package-db=" ++ dbFile
+                           , "--constraint=Cabal == " ++ display cabalVersion
+                           ]
+            }
     putStrLn $ "Cabal test suite - testing cabal version " ++
         display cabalVersion
     setCurrentDirectory "tests"
     -- Create a shared Setup executable to speed up Simple tests
     compileSetup "."
-    defaultMain (tests cabalVersion)
+    defaultMain (tests cabalVersion inplaceSpec)
diff --git a/Cabal/tests/PackageTests/BuildTestSuiteDetailedV09/Check.hs b/Cabal/tests/PackageTests/BuildTestSuiteDetailedV09/Check.hs
index f23b0ac0558b96bb0d9ac9d3763979d22c7492bc..33214d67eabb25024c1b81b17e71ac2a867dc8cd 100644
--- a/Cabal/tests/PackageTests/BuildTestSuiteDetailedV09/Check.hs
+++ b/Cabal/tests/PackageTests/BuildTestSuiteDetailedV09/Check.hs
@@ -5,10 +5,13 @@ import System.FilePath ((</>))
 
 import PackageTests.PackageTester
 
-suite :: Test
-suite = TestCase $ do
+suite :: PackageSpec -> Test
+suite inplaceSpec = TestCase $ do
     let dir = "PackageTests" </> "BuildTestSuiteDetailedV09"
-        spec = PackageSpec dir ["--enable-tests"]
+        spec = inplaceSpec
+            { directory = dir
+            , configOpts = "--enable-tests" : configOpts inplaceSpec
+            }
     confResult <- cabal_configure spec
     assertEqual "configure failed!" (successful confResult) True
     buildResult <- cabal_build spec