17db96d56Sopenharmony_ci"""Tests for scripts in the Tools directory. 27db96d56Sopenharmony_ci 37db96d56Sopenharmony_ciThis file contains regression tests for some of the scripts found in the 47db96d56Sopenharmony_ciTools directory of a Python checkout or tarball, such as reindent.py. 57db96d56Sopenharmony_ci""" 67db96d56Sopenharmony_ci 77db96d56Sopenharmony_ciimport os 87db96d56Sopenharmony_ciimport unittest 97db96d56Sopenharmony_cifrom test.support.script_helper import assert_python_ok 107db96d56Sopenharmony_cifrom test.support import findfile 117db96d56Sopenharmony_ci 127db96d56Sopenharmony_cifrom test.test_tools import scriptsdir, skip_if_missing 137db96d56Sopenharmony_ci 147db96d56Sopenharmony_ciskip_if_missing() 157db96d56Sopenharmony_ci 167db96d56Sopenharmony_ciclass ReindentTests(unittest.TestCase): 177db96d56Sopenharmony_ci script = os.path.join(scriptsdir, 'reindent.py') 187db96d56Sopenharmony_ci 197db96d56Sopenharmony_ci def test_noargs(self): 207db96d56Sopenharmony_ci assert_python_ok(self.script) 217db96d56Sopenharmony_ci 227db96d56Sopenharmony_ci def test_help(self): 237db96d56Sopenharmony_ci rc, out, err = assert_python_ok(self.script, '-h') 247db96d56Sopenharmony_ci self.assertEqual(out, b'') 257db96d56Sopenharmony_ci self.assertGreater(err, b'') 267db96d56Sopenharmony_ci 277db96d56Sopenharmony_ci def test_reindent_file_with_bad_encoding(self): 287db96d56Sopenharmony_ci bad_coding_path = findfile('bad_coding.py') 297db96d56Sopenharmony_ci rc, out, err = assert_python_ok(self.script, '-r', bad_coding_path) 307db96d56Sopenharmony_ci self.assertEqual(out, b'') 317db96d56Sopenharmony_ci self.assertNotEqual(err, b'') 327db96d56Sopenharmony_ci 337db96d56Sopenharmony_ci 347db96d56Sopenharmony_ciif __name__ == '__main__': 357db96d56Sopenharmony_ci unittest.main() 36