aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/cpp/naming/gen_build_yaml.py
diff options
context:
space:
mode:
authorGravatar Alexander Polcyn <apolcyn@google.com>2018-05-25 11:53:24 -0700
committerGravatar Alexander Polcyn <apolcyn@google.com>2018-05-25 11:53:34 -0700
commitfd1a6604ab91cd05b4dcc5d886239c9e779482e1 (patch)
treec092f1eb9a5440d2016cf8bc68b2a1e1b08fbc59 /test/cpp/naming/gen_build_yaml.py
parent869f8779ad8f8f902eb24f838b3db2879c95a9da (diff)
Remove a test
Diffstat (limited to 'test/cpp/naming/gen_build_yaml.py')
-rwxr-xr-xtest/cpp/naming/gen_build_yaml.py91
1 files changed, 2 insertions, 89 deletions
diff --git a/test/cpp/naming/gen_build_yaml.py b/test/cpp/naming/gen_build_yaml.py
index 493713ff0e..a0767b21cf 100755
--- a/test/cpp/naming/gen_build_yaml.py
+++ b/test/cpp/naming/gen_build_yaml.py
@@ -24,12 +24,6 @@ import json
_LOCAL_DNS_SERVER_ADDRESS = '127.0.0.1:15353'
-_TARGET_RECORDS_TO_SKIP_AGAINST_GCE = [
- # TODO: enable this once able to upload the very large TXT record
- # in this group to GCE DNS.
- 'ipv4-config-causing-fallback-to-tcp',
-]
-
def _append_zone_name(name, zone_name):
return '%s.%s' % (name, zone_name)
@@ -39,86 +33,9 @@ def _build_expected_addrs_cmd_arg(expected_addrs):
out.append('%s,%s' % (addr['address'], str(addr['is_balancer'])))
return ';'.join(out)
-def _data_for_type(r_type, r_data, common_zone_name):
- if r_type in ['A', 'AAAA']:
- return ' '.join(map(lambda x: '\"%s\"' % x, r_data))
- if r_type == 'SRV':
- assert len(r_data) == 1
- target = r_data[0].split(' ')[3]
- uploadable_target = '%s.%s' % (target, common_zone_name)
- uploadable = r_data[0].split(' ')
- uploadable[3] = uploadable_target
- return '\"%s\"' % ' '.join(uploadable)
- if r_type == 'TXT':
- assert len(r_data) == 1
- chunks = []
- all_data = r_data[0]
- cur = 0
- # Split TXT records that span more than 255 characters (the single
- # string length-limit in DNS) into multiple strings. Each string
- # needs to be wrapped with double-quotes, and all inner double-quotes
- # are escaped. The wrapping double-quotes and inner backslashes can be
- # counted towards the 255 character length limit (as observed with gcloud),
- # so make sure all strings fit within that limit.
- while len(all_data[cur:]) > 0:
- next_chunk = '\"'
- while len(next_chunk) < 254 and len(all_data[cur:]) > 0:
- if all_data[cur] == '\"':
- if len(next_chunk) < 253:
- next_chunk += '\\\"'
- else:
- break
- else:
- next_chunk += all_data[cur]
- cur += 1
- next_chunk += '\"'
- if len(next_chunk) > 255:
- raise Exception('Bug: next chunk is too long.')
- chunks.append(next_chunk)
- # Wrap the whole record in single quotes to make sure all strings
- # are associated with the same TXT record (to make it one bash token for
- # gcloud)
- return '\'%s\'' % ' '.join(chunks)
-
-# Convert DNS records from their "within a test group" format
-# of the yaml file to an easier form for the templates to use.
-def _gcloud_uploadable_form(test_cases, common_zone_name):
- out = []
- for group in test_cases:
- if group['record_to_resolve'] in _TARGET_RECORDS_TO_SKIP_AGAINST_GCE:
- continue
- for record_name in group['records'].keys():
- r_ttl = None
- all_r_data = {}
- for r_data in group['records'][record_name]:
- # enforce records have the same TTL only for simplicity
- if r_ttl is None:
- r_ttl = r_data['TTL']
- assert r_ttl == r_data['TTL'], '%s and %s differ' % (r_ttl, r_data['TTL'])
- r_type = r_data['type']
- if all_r_data.get(r_type) is None:
- all_r_data[r_type] = []
- all_r_data[r_type].append(r_data['data'])
- for r_type in all_r_data.keys():
- for r in out:
- assert r['name'] != record_name or r['type'] != r_type, 'attempt to add a duplicate record'
- out.append({
- 'name': record_name,
- 'ttl': r_ttl,
- 'type': r_type,
- 'data': _data_for_type(r_type, all_r_data[r_type], common_zone_name)
- })
- return out
-
-def _gce_dns_zone_id(resolver_component_data):
- dns_name = resolver_component_data['resolver_tests_common_zone_name']
- return dns_name.replace('.', '-') + 'zone-id'
-
-def _resolver_test_cases(resolver_component_data, records_to_skip):
+def _resolver_test_cases(resolver_component_data):
out = []
for test_case in resolver_component_data['resolver_component_tests']:
- if test_case['record_to_resolve'] in records_to_skip:
- continue
target_name = _append_zone_name(
test_case['record_to_resolve'],
resolver_component_data['resolver_tests_common_zone_name'])
@@ -142,11 +59,7 @@ def main():
json = {
'resolver_tests_common_zone_name': resolver_component_data['resolver_tests_common_zone_name'],
- 'resolver_gce_integration_tests_zone_id': _gce_dns_zone_id(resolver_component_data),
- 'all_integration_test_records': _gcloud_uploadable_form(resolver_component_data['resolver_component_tests'],
- resolver_component_data['resolver_tests_common_zone_name']),
- 'resolver_gce_integration_test_cases': _resolver_test_cases(resolver_component_data, _TARGET_RECORDS_TO_SKIP_AGAINST_GCE),
- 'resolver_component_test_cases': _resolver_test_cases(resolver_component_data, []),
+ 'resolver_component_test_cases': _resolver_test_cases(resolver_component_data),
'targets': [
{
'name': 'resolver_component_test' + unsecure_build_config_suffix,