15 from typing
import Tuple
17 from absl
import flags
18 from absl.testing
import absltest
20 from framework
import xds_url_map_testcase
25 HostRule = xds_url_map_testcase.HostRule
26 PathMatcher = xds_url_map_testcase.PathMatcher
27 GcpResourceManager = xds_url_map_testcase.GcpResourceManager
28 DumpedXdsConfig = xds_url_map_testcase.DumpedXdsConfig
29 RpcTypeUnaryCall = xds_url_map_testcase.RpcTypeUnaryCall
30 RpcTypeEmptyCall = xds_url_map_testcase.RpcTypeEmptyCall
31 XdsTestClient = client_app.XdsTestClient
34 logger = logging.getLogger(__name__)
35 flags.adopt_module_key_flags(xds_url_map_testcase)
44 if config.client_lang == _Lang.NODE:
45 return config.version_gte(
'v1.5.x')
51 path_matcher: PathMatcher) -> Tuple[HostRule, PathMatcher]:
52 return host_rule, path_matcher
56 self.assertNumEndpoints(xds_config, 1)
58 self.assertEqual(self.test_client.ip,
59 xds_config[
'node'][
'metadata'][
'INSTANCE_IP'])
61 self.assertIsNotNone(xds_config.lds)
62 self.assertEqual(self.hostname(), xds_config.lds[
'name'])
64 self.assertTrue(xds_config.rds[
'virtualHosts'])
66 self.assertEqual(1,
len(xds_config.cds))
67 self.assertEqual(
'EDS', xds_config.cds[0][
'type'])
70 rpc_distribution = self.configure_and_send(
72 rpc_types=[RpcTypeUnaryCall, RpcTypeEmptyCall],
74 self.assertEqual(_NUM_RPCS, rpc_distribution.num_oks)
77 if __name__ ==
'__main__':