OXIESEC PANEL
- Current Dir:
/
/
opt
/
gsutil
/
third_party
/
apitools
/
apitools
/
gen
Server IP: 2a02:4780:11:1594:0:ef5:22d7:a
Upload:
Create Dir:
Name
Size
Modified
Perms
π
..
-
02/11/2025 08:19:48 AM
rwxr-xr-x
π
__init__.py
715 bytes
10/23/2024 10:32:22 PM
rw-r--r--
π
client_generation_test.py
2.1 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
extended_descriptor.py
21.15 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
gen_client.py
11.42 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
gen_client_lib.py
10.29 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
gen_client_test.py
6.09 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
message_registry.py
21 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
service_registry.py
22.51 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
test_utils.py
1.41 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
testdata
-
10/23/2024 10:32:22 PM
rwxr-xr-x
π
util.py
14.93 KB
10/23/2024 10:32:22 PM
rw-r--r--
π
util_test.py
2.91 KB
10/23/2024 10:32:22 PM
rw-r--r--
Editing: util_test.py
Close
#!/usr/bin/env python # -*- coding: utf-8 -*- # # Copyright 2015 Google Inc. # # 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. """Tests for util.""" import codecs import gzip import os import six.moves.urllib.request as urllib_request import tempfile import unittest from apitools.gen import util from mock import patch class NormalizeVersionTest(unittest.TestCase): def testVersions(self): already_valid = 'v1' self.assertEqual(already_valid, util.NormalizeVersion(already_valid)) to_clean = 'v0.1' self.assertEqual('v0_1', util.NormalizeVersion(to_clean)) class NamesTest(unittest.TestCase): def testKeywords(self): names = util.Names(['']) self.assertEqual('in_', names.CleanName('in')) def testNormalizeEnumName(self): names = util.Names(['']) self.assertEqual('_0', names.NormalizeEnumName('0')) class MockRequestResponse(): """Mocks the behavior of urllib.response.""" class MockRequestEncoding(): def __init__(self, encoding): self.encoding = encoding def get(self, _): return self.encoding def __init__(self, content, encoding): self.content = content self.encoding = MockRequestResponse.MockRequestEncoding(encoding) def info(self): return self.encoding def read(self): return self.content def _Gzip(raw_content): """Returns gzipped content from any content.""" f = tempfile.NamedTemporaryFile(suffix='gz', mode='wb', delete=False) f.close() try: with gzip.open(f.name, 'wb') as h: h.write(raw_content) with open(f.name, 'rb') as h: return h.read() finally: os.unlink(f.name) class GetURLContentTest(unittest.TestCase): def testUnspecifiedContentEncoding(self): data = 'regular non-gzipped content' with patch.object(urllib_request, 'urlopen', return_value=MockRequestResponse(data, '')): self.assertEqual(data, util._GetURLContent('unused_url_parameter')) def testGZippedContent(self): data = u'ΒΏHola quΓ© tal?' compressed_data = _Gzip(data.encode('utf-8')) with patch.object(urllib_request, 'urlopen', return_value=MockRequestResponse( compressed_data, 'gzip')): self.assertEqual(data, util._GetURLContent( 'unused_url_parameter').decode('utf-8'))