Index: tests/breakpad_unittest.py |
diff --git a/tests/breakpad_unittest.py b/tests/breakpad_unittest.py |
deleted file mode 100755 |
index 72a7c11ca39295c96557578eac02eefcc24a7faa..0000000000000000000000000000000000000000 |
--- a/tests/breakpad_unittest.py |
+++ /dev/null |
@@ -1,123 +0,0 @@ |
-#!/usr/bin/env python |
-# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-"""Unit tests for breakpad.py.""" |
- |
-import os |
-import sys |
- |
-sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) |
- |
-from testing_support.super_mox import SuperMoxTestBase |
- |
-import breakpad |
- |
- |
-class Breakpad(SuperMoxTestBase): |
- """Setups and tear downs the mocks but doesn't test anything as-is.""" |
- def setUp(self): |
- super(Breakpad, self).setUp() |
- self.mox.StubOutWithMock(breakpad.atexit, 'register') |
- self.mox.StubOutWithMock(breakpad.getpass, 'getuser') |
- self.mox.StubOutWithMock(breakpad.urllib2, 'urlopen') |
- breakpad._HOST_NAME = 'bozo' |
- self.assertEquals(False, breakpad.IS_ENABLED) |
- breakpad.IS_ENABLED = True |
- self._old_sys_argv = breakpad.sys.argv |
- breakpad.sys.argv = ['my_test'] |
- self._old_sys_version = breakpad.sys.version |
- breakpad.sys.version = 'random python' |
- |
- def tearDown(self): |
- breakpad.IS_ENABLED = False |
- breakpad.sys.version = self._old_sys_version |
- breakpad.sys.argv = self._old_sys_argv |
- super(Breakpad, self).tearDown() |
- |
- def testMembersChanged(self): |
- members = [ |
- 'CheckForException', 'DEFAULT_URL', 'FormatException', 'IS_ENABLED', |
- 'Register', 'SendProfiling', 'SendStack', |
- 'atexit', 'getpass', 'os', 'post', 'socket', 'sys', 'time', 'traceback', |
- 'urllib', 'urllib2', |
- ] |
- # If this test fails, you should add the relevant test. |
- self.compareMembers(breakpad, members) |
- |
- def _part_1_setup_mocks(self, exception): |
- breakpad.os.getcwd().AndReturn('/tmp/asdf') |
- breakpad.getpass.getuser().AndReturn('georges') |
- obj = self.mox.CreateMockAnything() |
- kwargs = {} |
- if (breakpad.sys.version_info[0] * 10 + breakpad.sys.version_info[1]) >= 26: |
- kwargs['timeout'] = 4 |
- breakpad.urllib2.urlopen( |
- 'https://chromium-status.appspot.com/breakpad', |
- breakpad.urllib.urlencode([('exception', exception)]) + ( |
- '&args=%5B%27my_test%27%5D' |
- '&stack=bar' |
- '&host=bozo' |
- '&version=random+python' |
- '&user=georges' |
- '&cwd=%2Ftmp%2Fasdf'), |
- **kwargs).AndReturn(obj) |
- obj.read().AndReturn('ok') |
- obj.close() |
- |
- def _part_2_verify_stdout(self, exception): |
- self.checkstdout( |
- ( "Sending crash report ...\n" |
- " args: ['my_test']\n" |
- " cwd: /tmp/asdf\n" |
- " exception: %s\n" |
- " host: bozo\n" |
- " stack: bar\n" |
- " user: georges\n" |
- " version: random python\n" |
- "ok\n") % exception) |
- |
- def _check(self, obj, result): |
- self._part_1_setup_mocks(result) |
- self.mox.ReplayAll() |
- breakpad.SendStack(obj, 'bar') |
- self._part_2_verify_stdout(result) |
- |
- def testSendBase(self): |
- self._check('foo', 'foo') |
- |
- def testSendReprThrows(self): |
- class Throws(object): |
- def __repr__(self): |
- raise NotImplementedError() |
- def __str__(self): |
- return '[foo]' |
- self._check(Throws(), '[foo]') |
- |
- def testSendStrThrows(self): |
- class Throws(object): |
- def __repr__(self): |
- return '[foo]' |
- def __str__(self): |
- raise NotImplementedError() |
- self._check(Throws(), '[foo]') |
- |
- def testSendBoth(self): |
- class Both(object): |
- def __repr__(self): |
- return '[foo]' |
- def __str__(self): |
- return '[bar]' |
- self._check(Both(), '[bar]') |
- |
- def testSendException(self): |
- obj = Exception('foo') |
- obj.msg = 'a message' |
- self._check(obj, 'foo\nMsg: a message') |
- |
- |
- |
-if __name__ == '__main__': |
- import unittest |
- unittest.main() |