Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(672)

Side by Side Diff: appengine/findit/waterfall/test/swarming_util_test.py

Issue 2547713002: [Findit] Using ts_mon to track swarming/isolated server outages (Closed)
Patch Set: Fixing nit Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « appengine/findit/waterfall/swarming_util.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import collections 5 import collections
6 import json 6 import json
7 import mock 7 import mock
8 import os 8 import os
9 import urllib 9 import urllib
10 import zlib 10 import zlib
(...skipping 626 matching lines...) Expand 10 before | Expand all | Expand 10 after
637 def testGenerateIsolatedDataOutputsrefNone(self): 637 def testGenerateIsolatedDataOutputsrefNone(self):
638 self.assertEqual({}, swarming_util._GenerateIsolatedData(None)) 638 self.assertEqual({}, swarming_util._GenerateIsolatedData(None))
639 639
640 def testFetchOutputJsonInfoFromIsolatedServerReturnNone(self): 640 def testFetchOutputJsonInfoFromIsolatedServerReturnNone(self):
641 self.assertIsNone(swarming_util._FetchOutputJsonInfoFromIsolatedServer( 641 self.assertIsNone(swarming_util._FetchOutputJsonInfoFromIsolatedServer(
642 None, self.http_client)) 642 None, self.http_client))
643 643
644 @mock.patch.object( 644 @mock.patch.object(
645 RetryHttpClient, 'Get', side_effect=ConnectionClosedError()) 645 RetryHttpClient, 'Get', side_effect=ConnectionClosedError())
646 def testSendRequestToServerConnectionClosedError(self, _): 646 def testSendRequestToServerConnectionClosedError(self, _):
647 content, error = swarming_util._SendRequestToServer('url', HttpClient()) 647 content, error = swarming_util._SendRequestToServer(
648 'http://www.someurl.url', HttpClient())
648 self.assertIsNone(content) 649 self.assertIsNone(content)
649 self.assertEqual( 650 self.assertEqual(
650 error['code'], swarming_util.URLFETCH_CONNECTION_CLOSED_ERROR) 651 error['code'], swarming_util.URLFETCH_CONNECTION_CLOSED_ERROR)
651 652
652 @mock.patch.object( 653 @mock.patch.object(
653 RetryHttpClient, 'Get', side_effect=DeadlineExceededError()) 654 RetryHttpClient, 'Get', side_effect=DeadlineExceededError())
654 def testSendRequestToServerDeadlineExceededError(self, _): 655 def testSendRequestToServerDeadlineExceededError(self, _):
655 content, error = swarming_util._SendRequestToServer('url', HttpClient()) 656 content, error = swarming_util._SendRequestToServer(
657 'http://www.someurl.com', HttpClient())
656 self.assertIsNone(content) 658 self.assertIsNone(content)
657 self.assertEqual( 659 self.assertEqual(
658 error['code'], swarming_util.URLFETCH_DEADLINE_EXCEEDED_ERROR) 660 error['code'], swarming_util.URLFETCH_DEADLINE_EXCEEDED_ERROR)
659 661
660 @mock.patch.object(RetryHttpClient, 'Get', side_effect=DownloadError()) 662 @mock.patch.object(RetryHttpClient, 'Get', side_effect=DownloadError())
661 def testSendRequestToServerDownloadError(self, _): 663 def testSendRequestToServerDownloadError(self, _):
662 content, error = swarming_util._SendRequestToServer('url', HttpClient()) 664 content, error = swarming_util._SendRequestToServer(
665 'http://www.someurl.com', HttpClient())
663 self.assertIsNone(content) 666 self.assertIsNone(content)
664 self.assertEqual(error['code'], swarming_util.URLFETCH_DOWNLOAD_ERROR) 667 self.assertEqual(error['code'], swarming_util.URLFETCH_DOWNLOAD_ERROR)
665 668
666 def testGetBackoffSeconds(self): 669 def testGetBackoffSeconds(self):
667 self.assertEqual(1, swarming_util._GetBackoffSeconds(1, 1, 1)) 670 self.assertEqual(1, swarming_util._GetBackoffSeconds(1, 1, 1))
668 self.assertEqual(2, swarming_util._GetBackoffSeconds(1, 2, 100)) 671 self.assertEqual(2, swarming_util._GetBackoffSeconds(1, 2, 100))
669 self.assertEqual(100, swarming_util._GetBackoffSeconds(1, 8, 100)) 672 self.assertEqual(100, swarming_util._GetBackoffSeconds(1, 8, 100))
670 673
671 @mock.patch.object( 674 @mock.patch.object(
672 RetryHttpClient, 'Get', side_effect=ConnectionClosedError()) 675 RetryHttpClient, 'Get', side_effect=ConnectionClosedError())
673 def testSendRequestToServerRetryTimeout(self, _): 676 def testSendRequestToServerRetryTimeout(self, _):
674 override_swarming_settings = { 677 override_swarming_settings = {
675 'should_retry_server': True, 678 'should_retry_server': True,
676 'server_retry_timeout_hours': -1 679 'server_retry_timeout_hours': -1
677 } 680 }
678 self.UpdateUnitTestConfigSettings( 681 self.UpdateUnitTestConfigSettings(
679 'swarming_settings', override_swarming_settings) 682 'swarming_settings', override_swarming_settings)
680 content, error = swarming_util._SendRequestToServer('url', HttpClient()) 683 content, error = swarming_util._SendRequestToServer(
684 'http://www.someurl.com', HttpClient())
681 self.assertIsNone(content) 685 self.assertIsNone(content)
682 self.assertEqual( 686 self.assertEqual(
683 error['code'], swarming_util.URLFETCH_CONNECTION_CLOSED_ERROR) 687 error['code'], swarming_util.URLFETCH_CONNECTION_CLOSED_ERROR)
684 self.assertTrue(error['retry_timeout']) 688 self.assertTrue(error['retry_timeout'])
OLDNEW
« no previous file with comments | « appengine/findit/waterfall/swarming_util.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698