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

Unified Diff: third_party/google-endpoints/test/test_label_descriptor.py

Issue 2666783008: Add google-endpoints to third_party/. (Closed)
Patch Set: Created 3 years, 11 months 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 side-by-side diff with in-line comments
Download patch
Index: third_party/google-endpoints/test/test_label_descriptor.py
diff --git a/third_party/google-endpoints/test/test_label_descriptor.py b/third_party/google-endpoints/test/test_label_descriptor.py
new file mode 100644
index 0000000000000000000000000000000000000000..9985356c082c60ae5328850d203825faaf5ef28b
--- /dev/null
+++ b/third_party/google-endpoints/test/test_label_descriptor.py
@@ -0,0 +1,252 @@
+# Copyright 2016 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from __future__ import absolute_import
+
+import base64
+import datetime
+import unittest2
+from expects import be_none, be_true, expect, equal, raise_error
+
+from google.api.control import label_descriptor, messages, report_request
+
+_KNOWN = label_descriptor.KnownLabels
+ValueType = label_descriptor.ValueType
+
+class KnownLabelsBase(object):
+ SUBJECT = None
+ GIVEN_INFO = report_request.Info(
+ api_method = 'dummy_method',
+ api_version = 'dummy_version',
+ location = 'dummy_location',
+ referer = 'dummy_referer'
+ )
+ WANTED_LABEL_DICT = {}
+
+ def _matching_descriptor(self, hide_default=False):
+ res = messages.LabelDescriptor(
+ key=self.SUBJECT.label_name,
+ valueType=self.SUBJECT.value_type)
+ if res.valueType == ValueType.STRING and hide_default:
+ res.valueType = None
+ return res
+
+ def _not_matched(self):
+ d = self._matching_descriptor()
+ d.valueType = ValueType.INT64 # no known labels have this type
+ return d
+
+ def test_should_be_supported(self):
+ expect(_KNOWN.is_supported(self._matching_descriptor())).to(be_true)
+ expect(_KNOWN.is_supported(
+ self._matching_descriptor(hide_default=True))).to(be_true)
+ expect(_KNOWN.is_supported(self._not_matched())).not_to(be_true)
+
+ def test_should_be_matched_correctly(self):
+ expect(self.SUBJECT.matches(self._matching_descriptor())).to(be_true)
+ expect(self.SUBJECT.matches(
+ self._matching_descriptor(hide_default=True))).to(be_true)
+ expect(self.SUBJECT.matches(self._not_matched())).not_to(be_true)
+
+ def test_should_update_request_info(self):
+ given_dict = {}
+ self.SUBJECT.do_labels_update(self.GIVEN_INFO, given_dict)
+ expect(given_dict).to(equal(self.WANTED_LABEL_DICT))
+
+
+class TestCredentialIdWithNoCreds(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.CREDENTIAL_ID
+
+
+class TestCredentialIdWithApiKey(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.CREDENTIAL_ID
+ GIVEN_INFO = report_request.Info(
+ api_key = 'dummy_api_key',
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: 'apiKey:dummy_api_key'}
+
+
+class TestCredentialIdWithAuthIssuer(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.CREDENTIAL_ID
+ GIVEN_INFO = report_request.Info(
+ auth_issuer = 'dummy_issuer',
+ auth_audience = 'dummy_audience'
+ )
+ WANTED_VALUE = 'jwtAuth:issuer=' + base64.urlsafe_b64encode('dummy_issuer')
+ WANTED_VALUE += '&audience=' + base64.urlsafe_b64encode('dummy_audience')
+ WANTED_LABEL_DICT = {SUBJECT.label_name: WANTED_VALUE}
+
+
+class EndUser(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.END_USER
+
+
+class EndUserCountry(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.END_USER_COUNTRY
+
+
+class ErrorType(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.ERROR_TYPE
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '2xx'}
+
+
+class Protocol(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.PROTOCOL
+ WANTED_LABEL_DICT = {
+ SUBJECT.label_name: report_request.ReportedProtocols.UNKNOWN.name
+ }
+
+
+class Referer(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.REFERER
+ WANTED_LABEL_DICT = {SUBJECT.label_name: 'dummy_referer'}
+
+
+class ResponseCode(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.RESPONSE_CODE
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '200'}
+
+
+class ResponseCodeClass(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.RESPONSE_CODE_CLASS
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '2xx'}
+
+
+class StatusCodeWithOkStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '0'}
+
+
+class StatusCodeWithKnown4XXStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ GIVEN_INFO = report_request.Info(
+ response_code = 401,
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '16'}
+
+
+class StatusCodeWithUnknown4XXStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ GIVEN_INFO = report_request.Info(
+ response_code = 477,
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '9'}
+
+
+class StatusCodeWithKnown5XXStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ GIVEN_INFO = report_request.Info(
+ response_code = 501,
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '12'}
+
+
+class StatusCodeWithUnknown5XXStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ GIVEN_INFO = report_request.Info(
+ response_code = 577,
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '13'}
+
+
+class StatusCodeWithUnknownStatus(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.STATUS_CODE
+ GIVEN_INFO = report_request.Info(
+ response_code = 777,
+ )
+ WANTED_LABEL_DICT = {SUBJECT.label_name: '2'}
+
+
+class GaeCloneId(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GAE_CLONE_ID
+
+
+class GaeModuleId(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GAE_MODULE_ID
+
+
+class GaeReplicaIndex(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GAE_REPLICA_INDEX
+
+
+class GaeVersionId(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GAE_VERSION_ID
+
+
+class GcpLocation(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_LOCATION
+ WANTED_LABEL_DICT = {SUBJECT.label_name: 'dummy_location'}
+
+
+class GcpProject(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_PROJECT
+
+
+class GcpRegion(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_REGION
+
+
+class GcpResourceId(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_RESOURCE_ID
+
+
+class GcpResourceType(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_RESOURCE_TYPE
+
+
+class GcpService(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_SERVICE
+
+
+class GcpZone(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_ZONE
+
+
+class GcpUid(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_UID
+
+
+class GcpApiMethod(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_API_METHOD
+ WANTED_LABEL_DICT = {SUBJECT.label_name: 'dummy_method'}
+
+
+class GcpApiVersion(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.GCP_API_VERSION
+ WANTED_LABEL_DICT = {SUBJECT.label_name: 'dummy_version'}
+
+
+class SccCallerIp(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.SCC_CALLER_IP
+
+
+class SccPlatform(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.SCC_PLATFORM
+ WANTED_LABEL_DICT = {
+ SUBJECT.label_name: report_request.ReportedPlatforms.UNKNOWN.name
+ }
+
+
+class SccReferer(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.SCC_REFERER
+
+
+class SccServiceAgent(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.SCC_SERVICE_AGENT
+ WANTED_LABEL_DICT = {SUBJECT.label_name: label_descriptor.SERVICE_AGENT}
+
+
+class SccUserAgent(KnownLabelsBase, unittest2.TestCase):
+ SUBJECT = _KNOWN.SCC_USER_AGENT
+ WANTED_LABEL_DICT = {SUBJECT.label_name: label_descriptor.USER_AGENT}
« no previous file with comments | « third_party/google-endpoints/test/test_distribution.py ('k') | third_party/google-endpoints/test/test_metric_descriptor.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698