1234567891011121314151617181920212223242526272829303132333435363738394041 |
- import io
- from os.path import join as pjoin
- import shutil
- import tempfile
- import unittest
- from .utils import assert_is_file, test_dir
- from nsist import InstallerBuilder, DEFAULT_ICON
- sample_preamble = pjoin(test_dir, u'sample_preamble.py')
- class TestInstallerBuilder(unittest.TestCase):
- def setUp(self):
- self.target = tempfile.mkdtemp()
-
- def tearDown(self):
- shutil.rmtree(self.target)
-
- def test_prepare_shortcuts(self):
- shortcuts = {'sc1': {'entry_point': 'norwegian.blue:parrot',
- 'icon': DEFAULT_ICON,
- 'console': False,
- 'extra_preamble': sample_preamble,
- }
- }
- ib = InstallerBuilder("Test App", "1.0", shortcuts, build_dir=self.target)
- ib.prepare_shortcuts()
-
- scfile = pjoin(self.target, 'sc1.launch.pyw')
- assert_is_file(scfile)
-
- with io.open(scfile, 'r', encoding='utf-8') as f:
- contents = f.read()
-
- last2lines = [l.strip() for l in contents.rstrip().splitlines()[-2:]]
- assert last2lines == ['from norwegian.blue import parrot', 'parrot()']
-
- with io.open(sample_preamble, 'r', encoding='utf-8') as f:
- preamble_contents = f.read().strip()
-
- assert preamble_contents in contents
|