@@ -1158,6 +1158,28 @@ def test_cpu_count_default(self):
11581158res = assert_python_ok ('-c' ,code ,PYTHON_CPU_COUNT = 'default' )
11591159self .assertEqual (self .res2int (res ), (os .cpu_count (),os .process_cpu_count ()))
11601160
1161+ def test_import_time (self ):
1162+ code = "import os"
1163+ res = assert_python_ok ('-X' ,'importtime' ,'-c' ,code )
1164+ res_err = res .err .decode ("utf-8" )
1165+ self .assertRegex (res_err ,r"import time: \s*\d+ \| \s*\d+ \| \s*os" )
1166+ self .assertNotRegex (res_err ,r"import time: cached\s* \| cached\s* \| os" )
1167+
1168+ code = "import os"
1169+ res = assert_python_ok ('-X' ,'importtime=true' ,'-c' ,code )
1170+ res_err = res .err .decode ("utf-8" )
1171+ self .assertRegex (res_err ,r"import time: \s*\d+ \| \s*\d+ \| \s*os" )
1172+ self .assertNotRegex (res_err ,r"import time: cached\s* \| cached\s* \| os" )
1173+
1174+ code = "import os; import os"
1175+ res = assert_python_ok ('-X' ,'importtime=2' ,'-c' ,code )
1176+ res_err = res .err .decode ("utf-8" )
1177+ self .assertRegex (res_err ,r"import time: \s*\d+ \| \s*\d+ \| \s*os" )
1178+ self .assertRegex (res_err ,r"import time: cached\s* \| cached\s* \| os" )
1179+
1180+ assert_python_failure ('-X' ,'importtime=-1' ,'-c' ,code )
1181+ assert_python_failure ('-X' ,'importtime=3' ,'-c' ,code )
1182+
11611183def res2int (self ,res ):
11621184out = res .out .strip ().decode ("utf-8" )
11631185return tuple (int (i )for i in out .split ())