def test_notification_v2_with_config(self): config = '%s\n%s\n%s\n%s' % ( 'server.0=10.0.0.1:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.2:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.3:2889:3888:participant;0.0.0.0:2181', 'version=deadbeef' ) payload = ''.join(( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00\x20\x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\x0a', # election epoch '\x00\x00\x00\x00\x00\x00\x00\x0a', # peer epoch '\x00\x00\x00\x02', # version '\x00\x00\x00\xaf', # config length config, )) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(10, notif.peer_epoch) self.assertEqual(2, notif.version) self.assertEqual(config, notif.config)
def test_notification_v2_with_config(self): config = '%s\n%s\n%s\n%s' % ( 'server.0=10.0.0.1:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.2:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.3:2889:3888:participant;0.0.0.0:2181', 'version=deadbeef' ) payload = b''.join(( b'\x00\x00\x00\x01', # state b'\x00\x00\x00\x00\x00\x00\x00\x03', # leader b'\x00\x00\x00\x00\x00\x00\x20\x00', # zxid b'\x00\x00\x00\x00\x00\x00\x00\x0a', # election epoch b'\x00\x00\x00\x00\x00\x00\x00\x0a', # peer epoch b'\x00\x00\x00\x02', # version b'\x00\x00\x00\xaf', # config length to_bytes(config), )) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(10, notif.peer_epoch) self.assertEqual(2, notif.version) self.assertEqual(config, notif.config)
def test_initial_message(self): payload = b''.join(( b'\xff\xff\xff\xff\xff\xff\x00\x00', # proto version: -65536L b'\x00\x00\x00\x00\x00\x00\x00\x06', # server id b'\x00\x00\x00\x0e', # addr len b'127.0.0.1:3888', # addr )) init = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(6, init.server_id) self.assertEqual('127.0.0.1:3888', init.election_addr)
def test_initial_message(self): payload = ''.join(( '\xff\xff\xff\xff\xff\xff\x00\x00', # proto version: -65536L '\x00\x00\x00\x00\x00\x00\x00\x06', # server id '\x00\x00\x00\x0e', # addr len '127.0.0.1:3888', # addr )) init = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(6, init.server_id) self.assertEqual('127.0.0.1:3888', init.election_addr)
def test_notification_28(self): payload = '%s%s%s%s' % ( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00 \x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\n', # election epoch ) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(-1, notif.peer_epoch) self.assertEqual('', notif.config)
def test_notification_28(self): payload = ''.join(( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00\x20\x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\x0a', # election epoch )) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(-1, notif.peer_epoch) self.assertEqual(0, notif.version) self.assertEqual('', notif.config)
def test_notification_36(self): payload = ''.join(( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00\x20\x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\x0a', # election epoch '\x00\x00\x00\x00\x00\x00\x00\x0a', # peer epoch )) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(10, notif.peer_epoch) self.assertEqual(0, notif.version) self.assertEqual('', notif.config)
def test_notification_36(self): payload = '%s%s%s%s%s' % ( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00 \x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\n', # election epoch '\x00\x00\x00\x00\x00\x00\x00\n', # peer epoch ) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(10, notif.peer_epoch) self.assertEqual('', notif.config)
def test_notification_with_config(self): config = '%s\n%s\n%s\n%s' % ( 'server.0=10.0.0.1:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.2:2889:3888:participant;0.0.0.0:2181', 'server.0=10.0.0.3:2889:3888:participant;0.0.0.0:2181', 'version=deadbeef') payload = '%s%s%s%s%s%s' % ( '\x00\x00\x00\x01', # state '\x00\x00\x00\x00\x00\x00\x00\x03', # leader '\x00\x00\x00\x00\x00\x00 \x00', # zxid '\x00\x00\x00\x00\x00\x00\x00\n', # election epoch '\x00\x00\x00\x00\x00\x00\x00\n', # peer epoch config, ) notif = Message.from_payload(payload, '127.0.0.1:3888', '127.0.0.1:9000', 0) self.assertEqual(1, notif.state) self.assertEqual(3, notif.leader) self.assertEqual(0x2000, notif.zxid) self.assertEqual(10, notif.election_epoch) self.assertEqual(10, notif.peer_epoch) self.assertEqual(config, notif.config)