Index: appengine/findit/common/test/rietveld_test.py |
diff --git a/appengine/findit/common/test/rietveld_test.py b/appengine/findit/common/test/rietveld_test.py |
deleted file mode 100644 |
index 50fb15e1f64333cfc39cf8a5b96834e509a37455..0000000000000000000000000000000000000000 |
--- a/appengine/findit/common/test/rietveld_test.py |
+++ /dev/null |
@@ -1,110 +0,0 @@ |
-# Copyright 2016 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. |
- |
-import textwrap |
- |
-from testing_utils import testing |
- |
-from common import retry_http_client |
-from common.rietveld import Rietveld |
- |
- |
-class DummyHttpClient(retry_http_client.RetryHttpClient): |
- |
- def __init__(self): |
- super(DummyHttpClient, self).__init__() |
- self.responses = {} |
- self.requests = [] |
- |
- def SetResponse(self, url, result): |
- self.responses[url] = result |
- |
- def GetBackoff(self, *_): # pragma: no cover |
- """Override to avoid sleep.""" |
- return 0 |
- |
- def _Get(self, *_): # pragma: no cover |
- pass |
- |
- def _Post(self, url, data, _, headers): |
- self.requests.append((url, data, headers)) |
- return self.responses.get(url, (404, 'Not Found')) |
- |
- def _Put(self, *_): # pragma: no cover |
- pass |
- |
- |
-class RietveldTest(testing.AppengineTestCase): |
- |
- def setUp(self): |
- super(RietveldTest, self).setUp() |
- self.http_client = DummyHttpClient() |
- self.rietveld = Rietveld() |
- self.rietveld.HTTP_CLIENT = self.http_client |
- |
- def testGetXsrfTokenSuccess(self): |
- rietveld_url = 'https://test' |
- self.http_client.SetResponse('%s/xsrf_token' % rietveld_url, (200, 'abc')) |
- self.assertEqual('abc', self.rietveld._GetXsrfToken(rietveld_url)) |
- self.assertEqual(1, len(self.http_client.requests)) |
- _, _, headers = self.http_client.requests[0] |
- self.assertTrue('X-Requesting-XSRF-Token' in headers) |
- |
- def testGetXsrfTokenFailure(self): |
- rietveld_url = 'https://test' |
- self.http_client.SetResponse('%s/xsrf_token' % rietveld_url, (302, 'login')) |
- self.assertIsNone(self.rietveld._GetXsrfToken(rietveld_url)) |
- |
- def testGetRietveldUrlAndIssueNumber(self): |
- cases = { |
- 'http://abc/123': '123', |
- 'https://abc/456/': '456', |
- 'http://abc/789/diff': '789', |
- } |
- for issue_url, expected_issue_number in cases.iteritems(): |
- rietveld_url, issue_number = self.rietveld._GetRietveldUrlAndIssueNumber( |
- issue_url) |
- self.assertEqual('https://abc', rietveld_url) |
- self.assertEqual(expected_issue_number, issue_number) |
- |
- def testEncodeMultipartFormData(self): |
- content_type, body = self.rietveld._EncodeMultipartFormData({'a':'b'}) |
- expected_content_type = ( |
- 'multipart/form-data; boundary=-F-I-N-D-I-T-M-E-S-S-A-G-E-') |
- expected_body = textwrap.dedent(""" |
- ---F-I-N-D-I-T-M-E-S-S-A-G-E-\r |
- Content-Disposition: form-data; name="a"\r |
- \r |
- b\r |
- ---F-I-N-D-I-T-M-E-S-S-A-G-E---\r |
- """)[1:] |
- self.assertEqual(expected_content_type, content_type) |
- self.assertEqual(expected_body, body) |
- |
- def testPostMessageSuccess(self): |
- rietveld_url = 'https://test' |
- issue_url = '%s/123' % rietveld_url |
- message_publish_url = '%s/publish' % issue_url |
- self.http_client.SetResponse('%s/xsrf_token' % rietveld_url, (200, 'abc')) |
- self.http_client.SetResponse(message_publish_url, (200, 'OK')) |
- self.assertTrue(self.rietveld.PostMessage(issue_url, 'message')) |
- self.assertEqual(2, len(self.http_client.requests)) |
- |
- def testPostMessageFailOnXsrfToken(self): |
- rietveld_url = 'https://test' |
- issue_url = '%s/123' % rietveld_url |
- message_publish_url = '%s/publish' % issue_url |
- self.http_client.SetResponse('%s/xsrf_token' % rietveld_url, (302, 'login')) |
- self.http_client.SetResponse(message_publish_url, (200, 'OK')) |
- self.assertFalse(self.rietveld.PostMessage(issue_url, 'message')) |
- self.assertEqual(1, len(self.http_client.requests)) |
- |
- def testPostMessageFailOnPublish(self): |
- rietveld_url = 'https://test' |
- issue_url = '%s/123' % rietveld_url |
- message_publish_url = '%s/publish' % issue_url |
- self.http_client.SetResponse('%s/xsrf_token' % rietveld_url, (302, 'login')) |
- self.http_client.SetResponse(message_publish_url, (429, 'Error')) |
- self.assertFalse(self.rietveld.PostMessage(issue_url, 'message')) |
- self.assertEqual(1, len(self.http_client.requests)) |