def test_contains(self): vr = VersionRange((2171, 0), (2179, 0)) self.assertNotIn(('2170', '9'), vr) self.assertNotIn((2170, 9, 2, 718, 28, 18284, 590, 4523, 536), vr) self.assertIn((2171, 0, 0), vr) self.assertIn([2171, 1], vr) self.assertIn(('2175', ), vr) self.assertIn((2178, 3, 1, 4, 1, 59, 26535, 89793), vr) self.assertNotIn([2179], vr) self.assertNotIn((2179, 1), vr)
def old_sysnode_processor(node_info_rows): def old_transform(node_is_active): return 'active' if node_is_active else 'inactive' return get_sysnode_info_from(node_info_rows, old_transform) def new_sysnode_processor(node_info_rows): return get_sysnode_info_from(node_info_rows, lambda x: x) NODE_INFO_PER_URI_SQL = VersionRangeList( VersionRange( (0, 0), (0, 128), ('select http_uri, node_version, active from ' 'system.runtime.nodes where ' 'url_extract_host(http_uri) = \'%s\'', old_sysnode_processor)), VersionRange( (0, 128), (sys.maxsize, ), ('select http_uri, node_version, state from ' 'system.runtime.nodes where ' 'url_extract_host(http_uri) = \'%s\'', new_sysnode_processor))) EXTERNAL_IP_SQL = 'select url_extract_host(http_uri) from ' \ 'system.runtime.nodes WHERE node_id = \'%s\'' CATALOG_INFO_SQL = 'select catalog_name from system.metadata.catalogs' _LOGGER = logging.getLogger(__name__) DOWNLOAD_DIRECTORY = '/tmp' DEFAULT_RPM_NAME = 'presto-server-rpm.rpm'
def test_strip_td(self): self.assertEquals((0, 123), VersionRange.strip_td_suffix((0, '123t')))
def test_pad_tuple(self): self.assertEquals((1, 2, 0, 0), VersionRange.pad_tuple((1, 2), 4, 0))
def test_overlapping_2_length_list(self): self.assertRaises(AssertionError, VersionRangeList, VersionRange((0, ), (1, 0)), VersionRange((0, 9), (2, 0)))
def test_bad_order_2_length_list(self): self.assertRaises(AssertionError, VersionRangeList, VersionRange((1, 0), (2, 0)), VersionRange((0, ), (1, 0)))
def test_discontinuous_2_length_list(self): self.assertRaises(AssertionError, VersionRangeList, VersionRange((0, ), (1, 0)), VersionRange((1, 1), (2, 0)))
def test_valid_2_length_list(self): vl = VersionRangeList(VersionRange((0, ), (1, 0), '0'), VersionRange((1, 0), (2, 0), '1')) self.assertEqual('0', vl.for_version((0, 5))) self.assertEqual('1', vl.for_version((1, 5)))
def test_1_length_list(self): vl = VersionRangeList(VersionRange((0, ), (1, 0))) self.assertIsNone(vl.for_version((0, 5)))
def test_contains_teradata(self): vr = VersionRange((0, ), (0, 128)) self.assertIn((0, '115t'), vr) self.assertIn(('0', '115t'), vr) self.assertIn((0, 125, 't', 0, 1), vr)
def test_strip_td(self): self.assertEquals((0, 123), VersionRange.strip_td_suffix((0, '123t'))) self.assertEquals((0, 123, 1, 0), VersionRange.strip_td_suffix((0, 123, 't', 1, 0)))