def test_run_apt_update(self, warning_mock):
"""
The L{PackageReporter.run_apt_update} method should run apt-update.
"""
self.reporter.sources_list_filename = "/I/Dont/Exist"
self.reporter.sources_list_directory = "/I/Dont/Exist"
self._make_fake_apt_update()
debug_patcher = mock.patch.object(reporter.logging, "debug")
debug_mock = debug_patcher.start()
self.addCleanup(debug_patcher.stop)
deferred = Deferred()
def do_test():
result = self.reporter.run_apt_update()
def callback(args):
out, err, code = args
self.assertEqual("output", out)
self.assertEqual("error", err)
self.assertEqual(0, code)
self.assertFalse(warning_mock.called)
debug_mock.assert_has_calls([
mock.call(
"Checking if ubuntu-release-upgrader is running."),
mock.call(
"'%s' exited with status 0 (out='output', err='error')"
% self.reporter.apt_update_filename)
])
result.addCallback(callback)
self.reactor.advance(0)
result.chainDeferred(deferred)
reactor.callWhenRunning(do_test)
return deferred
评论列表
文章目录