| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 import time |
| 6 import unittest | 7 import unittest |
| 7 | 8 |
| 8 import pyauto_functional # Must be imported before pyauto | 9 import pyauto_functional # Must be imported before pyauto |
| 9 import pyauto | 10 import pyauto |
| 10 import pyauto_errors | 11 import pyauto_errors |
| 11 | 12 |
| 12 | 13 |
| 13 class PyAutoTest(pyauto.PyUITest): | 14 class PyAutoTest(pyauto.PyUITest): |
| 14 """Test functionality of the PyAuto framework.""" | 15 """Test functionality of the PyAuto framework.""" |
| 15 | 16 |
| (...skipping 27 matching lines...) Expand all Loading... |
| 43 lambda: self.FindInPage('some text', windex=1)) # invalid window | 44 lambda: self.FindInPage('some text', windex=1)) # invalid window |
| 44 | 45 |
| 45 def testJSONInterfaceTimeout(self): | 46 def testJSONInterfaceTimeout(self): |
| 46 """Verify that an exception is raised when the JSON interface times out.""" | 47 """Verify that an exception is raised when the JSON interface times out.""" |
| 47 self.ClearEventQueue() | 48 self.ClearEventQueue() |
| 48 self.AddDomEventObserver('foo') | 49 self.AddDomEventObserver('foo') |
| 49 self.assertRaises( | 50 self.assertRaises( |
| 50 pyauto_errors.JSONInterfaceError, | 51 pyauto_errors.JSONInterfaceError, |
| 51 lambda: self.GetNextEvent(timeout=2000)) # event queue is empty | 52 lambda: self.GetNextEvent(timeout=2000)) # event queue is empty |
| 52 | 53 |
| 54 def testActionTimeoutChanger(self): |
| 55 """Verify that ActionTimeoutChanger works.""" |
| 56 new_timeout = 1000 # 1 sec |
| 57 changer = pyauto.PyUITest.ActionTimeoutChanger(self, new_timeout) |
| 58 self.assertEqual(self.action_timeout_ms(), new_timeout) |
| 59 |
| 60 # Verify the amount of time taken for automation timeout |
| 61 then = time.time() |
| 62 self.assertRaises( |
| 63 pyauto_errors.JSONInterfaceError, |
| 64 lambda: self.ExecuteJavascript('invalid js should timeout')) |
| 65 elapsed = time.time() - then |
| 66 self.assertTrue(elapsed < new_timeout / 1000.0 + 2, # margin of 2 secs |
| 67 msg='ActionTimeoutChanger did not work. ' |
| 68 'Automation timeout took %f secs' % elapsed) |
| 53 | 69 |
| 54 | 70 |
| 55 if __name__ == '__main__': | 71 if __name__ == '__main__': |
| 56 pyauto_functional.Main() | 72 pyauto_functional.Main() |
| OLD | NEW |