/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test_import_tariff.py

  • Committer: Jelmer Vernooij
  • Date: 2019-05-29 03:22:34 UTC
  • mfrom: (7303 work)
  • mto: This revision was merged to the branch mainline in revision 7306.
  • Revision ID: jelmer@jelmer.uk-20190529032234-mt3fuws8gq03tapi
Merge trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
100
100
        """
101
101
        err = err.decode('utf-8')
102
102
        self.addDetail('subprocess_stderr',
103
 
            content.text_content(err))
 
103
                       content.text_content(err))
104
104
 
105
105
        bad_modules = []
106
106
        for module_name in forbidden_imports:
113
113
 
114
114
        if bad_modules:
115
115
            self.fail("command loaded forbidden modules %r"
116
 
                % (bad_modules,))
 
116
                      % (bad_modules,))
117
117
 
118
118
    def finish_bzr_subprocess_with_import_check(self, process,
119
 
            args, forbidden_imports):
 
119
                                                args, forbidden_imports):
120
120
        """Finish subprocess and check specific modules have not been
121
121
        imported.
122
122
 
124
124
            that should not be loaded while running this command.
125
125
        """
126
126
        (out, err) = self.finish_bzr_subprocess(process,
127
 
            universal_newlines=False, process_args=args)
 
127
                                                universal_newlines=False, process_args=args)
128
128
        self.check_forbidden_modules(err, forbidden_imports)
129
129
        return out, err
130
130
 
139
139
        """
140
140
        process = self.start_bzr_subprocess_with_import_check(args)
141
141
        self.finish_bzr_subprocess_with_import_check(process, args,
142
 
            forbidden_imports)
 
142
                                                     forbidden_imports)
143
143
 
144
144
 
145
145
class TestImportTariffs(ImportTariffTestCase):
150
150
        # measuring correctly
151
151
        self.make_branch_and_tree('.')
152
152
        self.run_command_check_imports(['st'],
153
 
            ['nonexistentmodulename', 'anothernonexistentmodule'])
 
153
                                       ['nonexistentmodulename', 'anothernonexistentmodule'])
154
154
        self.assertRaises(AssertionError,
155
 
            self.run_command_check_imports,
156
 
            ['st'],
157
 
            ['breezy.tree'])
 
155
                          self.run_command_check_imports,
 
156
                          ['st'],
 
157
                          ['breezy.tree'])
158
158
 
159
159
    def test_simple_local(self):
160
160
        # 'st' in a default format working tree shouldn't need many modules
168
168
            'breezy.externalcommand',
169
169
            'breezy.filters',
170
170
            'breezy.hashcache',
171
 
            # foreign branch plugins import the foreign_vcs_registry from 
 
171
            # foreign branch plugins import the foreign_vcs_registry from
172
172
            # breezy.foreign so it can't be blacklisted
173
173
            'breezy.gpg',
174
174
            'breezy.info',
176
176
            'breezy.merge3',
177
177
            'breezy.merge_directive',
178
178
            'breezy.msgeditor',
179
 
            'breezy.patiencediff',
180
179
            'breezy.bzr.remote',
181
180
            'breezy.rules',
182
181
            'breezy.sign_my_commits',
217
216
        # while the smart client interacts with it.
218
217
        stderr_file = open('bzr-serve.stderr', 'w')
219
218
        process = self.start_bzr_subprocess_with_import_check(['serve',
220
 
            '--inet', '-d', tree.basedir], stderr_file=stderr_file)
 
219
                                                               '--inet', '-d', tree.basedir], stderr_file=stderr_file)
221
220
        url = 'bzr://localhost/'
222
221
        self.permit_url(url)
223
222
        client_medium = medium.SmartSimplePipesClientMedium(
228
227
        # Hide stdin from the subprocess module, so it won't fail to close it.
229
228
        process.stdin = None
230
229
        (out, err) = self.finish_bzr_subprocess(process,
231
 
            universal_newlines=False)
 
230
                                                universal_newlines=False)
232
231
        stderr_file.close()
233
232
        with open('bzr-serve.stderr', 'rb') as stderr_file:
234
233
            err = stderr_file.read()
235
234
        self.check_forbidden_modules(err,
236
 
            ['breezy.annotate',
237
 
            'breezy.atomicfile',
238
 
            'breezy.bugtracker',
239
 
            'breezy.bundle.commands',
240
 
            'breezy.cmd_version_info',
241
 
            'breezy.bzr.dirstate',
242
 
            'breezy.bzr._dirstate_helpers_py',
243
 
            'breezy.bzr._dirstate_helpers_pyx',
244
 
            'breezy.externalcommand',
245
 
            'breezy.filters',
246
 
            'breezy.hashcache',
247
 
            # foreign branch plugins import the foreign_vcs_registry from 
248
 
            # breezy.foreign so it can't be blacklisted
249
 
            'breezy.gpg',
250
 
            'breezy.info',
251
 
            'breezy.bzr.knit',
252
 
            'breezy.merge3',
253
 
            'breezy.merge_directive',
254
 
            'breezy.msgeditor',
255
 
            'breezy.patiencediff',
256
 
            'breezy.bzr.remote',
257
 
            'breezy.rules',
258
 
            'breezy.sign_my_commits',
259
 
            'breezy.bzr.smart.client',
260
 
            'breezy.transform',
261
 
            'breezy.version_info_formats.format_rio',
262
 
            'breezy.bzr.workingtree_4',
263
 
            'breezy.bzr.xml_serializer',
264
 
            'breezy.bzr.xml8',
265
 
            'getpass',
266
 
            'kerberos',
267
 
            'smtplib',
268
 
            'tarfile',
269
 
            'tempfile',
270
 
            'termios',
271
 
            'tty',
272
 
            ] + old_format_modules)
 
235
                                     ['breezy.annotate',
 
236
                                      'breezy.atomicfile',
 
237
                                      'breezy.bugtracker',
 
238
                                      'breezy.bundle.commands',
 
239
                                      'breezy.cmd_version_info',
 
240
                                      'breezy.bzr.dirstate',
 
241
                                      'breezy.bzr._dirstate_helpers_py',
 
242
                                      'breezy.bzr._dirstate_helpers_pyx',
 
243
                                      'breezy.externalcommand',
 
244
                                      'breezy.filters',
 
245
                                      'breezy.hashcache',
 
246
                                      # foreign branch plugins import the foreign_vcs_registry from
 
247
                                      # breezy.foreign so it can't be blacklisted
 
248
                                      'breezy.gpg',
 
249
                                      'breezy.info',
 
250
                                      'breezy.bzr.knit',
 
251
                                      'breezy.merge3',
 
252
                                      'breezy.merge_directive',
 
253
                                      'breezy.msgeditor',
 
254
                                      'breezy.bzr.remote',
 
255
                                      'breezy.rules',
 
256
                                      'breezy.sign_my_commits',
 
257
                                      'breezy.bzr.smart.client',
 
258
                                      'breezy.transform',
 
259
                                      'breezy.version_info_formats.format_rio',
 
260
                                      'breezy.bzr.workingtree_4',
 
261
                                      'breezy.bzr.xml_serializer',
 
262
                                      'breezy.bzr.xml8',
 
263
                                      'getpass',
 
264
                                      'kerberos',
 
265
                                      'smtplib',
 
266
                                      'tarfile',
 
267
                                      'tempfile',
 
268
                                      'termios',
 
269
                                      'tty',
 
270
                                      ] + old_format_modules)