diff --git a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.hs b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.hs
index fb91fb6c1f68c276d08efb8754c18930a0f0c97d..335963be4e366df1a92f6b6adee26632ee09f2ab 100644
--- a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.hs
+++ b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.hs
@@ -8,6 +8,7 @@ import GhcMake
 import DynFlags
 import Outputable
 import Exception (ExceptionMonad, ghandle)
+import Bag
 
 import Control.Monad
 import Control.Monad.IO.Class (liftIO)
@@ -134,6 +135,17 @@ main = do
          sort (map (moduleNameString . moduleName . ms_mod) mss) == ["A", "C"]
        )
 
+    go "Import error"
+        [ [ "module A where"
+          , "import B"
+          , "import DoesNotExist_FooBarBaz"
+          ]
+        , [ "module B where"
+          ]
+        ]
+       (\mss -> return $
+           sort (map (moduleNameString . moduleName . ms_mod) mss) == ["A", "B"]
+       )
 
   errored <- readIORef any_failed
   when errored $ exitFailure
@@ -154,6 +166,7 @@ go label mods cnd =
     hsc_env <- getSession
     emss <- liftIO $ downsweep hsc_env [] [] False
     -- liftIO $ hPutStrLn stderr $ showSDocUnsafe $ ppr $ rights emss
+    -- liftIO $ hPrint stderr $ bagToList $ unionManyBags $ lefts emss
 
     it label $ cnd (rights emss)
 
diff --git a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr
index 9e5f6d83dc77dd63c0c685250a974fce5b49d8c5..14c1b6c19a8ca0398ef7296c888f7f14c18dfe93 100644
--- a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr
+++ b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr
@@ -13,3 +13,4 @@ B.hs:2:0: error:
      error: #elif without #if
      #elif <- cpp error here
      
+== Import error