1"""Tests for distutils.command.bdist."""
2import unittest
3import sys
4import os
5import tempfile
6import shutil
7
8from test.test_support import run_unittest
9
10from distutils.core import Distribution
11from distutils.command.bdist import bdist
12from distutils.tests import support
13from distutils.spawn import find_executable
14from distutils import spawn
15from distutils.errors import DistutilsExecError
16
17class BuildTestCase(support.TempdirManager,
18                    unittest.TestCase):
19
20    def test_formats(self):
21
22        # let's create a command and make sure
23        # we can fix the format
24        pkg_pth, dist = self.create_dist()
25        cmd = bdist(dist)
26        cmd.formats = ['msi']
27        cmd.ensure_finalized()
28        self.assertEqual(cmd.formats, ['msi'])
29
30        # what format bdist offers ?
31        # XXX an explicit list in bdist is
32        # not the best way to  bdist_* commands
33        # we should add a registry
34        formats = ['rpm', 'zip', 'gztar', 'bztar', 'ztar',
35                   'tar', 'wininst', 'msi']
36        formats.sort()
37        founded = cmd.format_command.keys()
38        founded.sort()
39        self.assertEqual(founded, formats)
40
41def test_suite():
42    return unittest.makeSuite(BuildTestCase)
43
44if __name__ == '__main__':
45    run_unittest(test_suite())
46