17db96d56Sopenharmony_ci"""Tests for distutils.command.install_headers."""
27db96d56Sopenharmony_ciimport os
37db96d56Sopenharmony_ciimport unittest
47db96d56Sopenharmony_ci
57db96d56Sopenharmony_cifrom distutils.command.install_headers import install_headers
67db96d56Sopenharmony_cifrom distutils.tests import support
77db96d56Sopenharmony_cifrom test.support import run_unittest
87db96d56Sopenharmony_ci
97db96d56Sopenharmony_ciclass InstallHeadersTestCase(support.TempdirManager,
107db96d56Sopenharmony_ci                             support.LoggingSilencer,
117db96d56Sopenharmony_ci                             support.EnvironGuard,
127db96d56Sopenharmony_ci                             unittest.TestCase):
137db96d56Sopenharmony_ci
147db96d56Sopenharmony_ci    def test_simple_run(self):
157db96d56Sopenharmony_ci        # we have two headers
167db96d56Sopenharmony_ci        header_list = self.mkdtemp()
177db96d56Sopenharmony_ci        header1 = os.path.join(header_list, 'header1')
187db96d56Sopenharmony_ci        header2 = os.path.join(header_list, 'header2')
197db96d56Sopenharmony_ci        self.write_file(header1)
207db96d56Sopenharmony_ci        self.write_file(header2)
217db96d56Sopenharmony_ci        headers = [header1, header2]
227db96d56Sopenharmony_ci
237db96d56Sopenharmony_ci        pkg_dir, dist = self.create_dist(headers=headers)
247db96d56Sopenharmony_ci        cmd = install_headers(dist)
257db96d56Sopenharmony_ci        self.assertEqual(cmd.get_inputs(), headers)
267db96d56Sopenharmony_ci
277db96d56Sopenharmony_ci        # let's run the command
287db96d56Sopenharmony_ci        cmd.install_dir = os.path.join(pkg_dir, 'inst')
297db96d56Sopenharmony_ci        cmd.ensure_finalized()
307db96d56Sopenharmony_ci        cmd.run()
317db96d56Sopenharmony_ci
327db96d56Sopenharmony_ci        # let's check the results
337db96d56Sopenharmony_ci        self.assertEqual(len(cmd.get_outputs()), 2)
347db96d56Sopenharmony_ci
357db96d56Sopenharmony_cidef test_suite():
367db96d56Sopenharmony_ci    return unittest.TestLoader().loadTestsFromTestCase(InstallHeadersTestCase)
377db96d56Sopenharmony_ci
387db96d56Sopenharmony_ciif __name__ == "__main__":
397db96d56Sopenharmony_ci    run_unittest(test_suite())
40