#11132: pass optimize parameter to recursive call in compileall.compile_dir().  Reviewed by Eric A.
diff --git a/Lib/test/test_compileall.py b/Lib/test/test_compileall.py
index 295dc40..250d31b 100644
--- a/Lib/test/test_compileall.py
+++ b/Lib/test/test_compileall.py
@@ -24,6 +24,10 @@
         self.source_path2 = os.path.join(self.directory, '_test2.py')
         self.bc_path2 = imp.cache_from_source(self.source_path2)
         shutil.copyfile(self.source_path, self.source_path2)
+        self.subdirectory = os.path.join(self.directory, '_subdir')
+        os.mkdir(self.subdirectory)
+        self.source_path3 = os.path.join(self.subdirectory, '_test3.py')
+        shutil.copyfile(self.source_path, self.source_path3)
 
     def tearDown(self):
         shutil.rmtree(self.directory)
@@ -96,6 +100,12 @@
         cached = imp.cache_from_source(self.source_path,
                                        debug_override=not optimize)
         self.assertTrue(os.path.isfile(cached))
+        cached2 = imp.cache_from_source(self.source_path2,
+                                       debug_override=not optimize)
+        self.assertTrue(os.path.isfile(cached2))
+        cached3 = imp.cache_from_source(self.source_path3,
+                                       debug_override=not optimize)
+        self.assertTrue(os.path.isfile(cached3))
 
 
 class EncodingTest(unittest.TestCase):