def test_incorrect_ping(self, subprocess): """ test for incorrect ping """ #HRP.set_log_level_debug() subprocess.call.return_value = 1 conn = HRP('192.168.1.116') self.assertRaisesRegex(HRPNetworkError, "can't reach reader", conn.connect)
def test_correct_ping(self, subprocess, socket): """ test for correct ping, but missing tcp connection """ #HRP.set_log_level_debug() subprocess.call.return_value = 0 socket.return_value.connect_ex.return_value = 1 conn = HRP('192.168.1.116') self.assertRaisesRegex(HRPNetworkError, "can't connect tcp reader", conn.connect)
def test_correct_tcp(self, subprocess, socket): """ Test for correct tcp connection """ #HRP.set_log_level_debug() subprocess.call.return_value = 0 socket.return_value.connect_ex.return_value = 0 socket.return_value.recv.side_effect = BASIC_CONNECT conn = HRP('192.168.1.116') conn.connect() subprocess.call.assert_called() socket.return_value.connect_ex.assert_called_with(('192.168.1.116', 9090))
def test_command_send(self, subprocess, socket): """ test send packets """ #HRP.set_log_level_debug() subprocess.call.return_value = 0 socket.return_value.connect_ex.return_value = 0 socket.return_value.recv.side_effect = BASIC_CONNECT conn = HRP('192.168.1.116') conn.connect() conn._send_packet(5, 5) # TEST,swr detect,"" socket.return_value.send.assert_called_with(codecs.decode("AA050500004444",'hex')) conn._send_packet(2, 255) # OP, stop command socket.return_value.send.assert_called_with(codecs.decode("AA02FF0000A40F",'hex'))
def test_correct_connect(self, subprocess, socket): """ test for correct tco and initial data reading """ #HRP.set_log_level_debug() subprocess.call.return_value = 0 socket.return_value.connect_ex.return_value = 0 socket.return_value.recv.side_effect = BASIC_CONNECT conn = HRP('192.168.1.116') conn.connect() # parsed reader_info & reader_ability self.assertEqual(conn.name, "CL7206B2_20170606", "incorrect name %s" % conn.name) self.assertEqual(conn.version, "1.1.16", "incorrect version %s" % conn.version) self.assertEqual(conn.deltalive, datetime.timedelta(seconds=90178), "incorrect live %s" % conn.deltalive) self.assertEqual(conn.min_power, 0, "incorrect min_pow %s" % conn.min_power) self.assertEqual(conn.max_power, 36, "incorrect max_pow %s" % conn.max_power) self.assertEqual(conn.antennas, 4, "incorrect antennas %s" % conn.antennas)
def __init__(self, request, client_address, server): self.request = request self.client_address = client_address self.server = server # for partial data transfers self.expectingRemainingBytes = 0 self.partialData = '' # set up HRP connection if not FAKE_MODE: self.hrp = HRP(ip=HRP_HOST, port=HRP_PORT, ommit_ping=False, timeout=10) # self.hrp.set_log_level_debug() logger.info('Connecting to HRP reader...') if HAVE_LCD: display.lcd_display_string('Connecting:HRP', 2) connected = False while not connected: try: self.hrp.connect() self.hrp_filter_time, self.hrp_rssi_threshold = self.hrp.tag_filter( ) self.hrp.tag_filter(HRP_TAG_FILTER_MS, HRP_TAG_FILTER_RSSI) connected = True except HRPFrameError: logger.warning( 'Connect didn\'t work, disconnecting and trying again ...' ) self.hrp.disconnect() except HRPNetworkError: logger.warning( 'Could not connect to reader, waiting and trying again ...' ) self.hrp.disconnect() time.sleep(BACKOFF_TIME) self.setup() try: self.handle() finally: self.finish()
""" import sys import os import traceback import codecs #fix path to use local module sys.path.insert(1, os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) from hrp import HRP, const, exception from hrp.tag import TidReadParameter, TagAddress, MatchParameter try: conn = HRP(ip='192.168.1.116', port=9090, ommit_ping=False, timeout=10) #conn.set_log_level_debug() # enable for debug information print("Connecting") conn.connect() filter_time, RSSI_threshold = conn.tag_filter() conn.stop() #always before reading tag! conn.tag_filter(100, 0) print("Connected! press Ctrl+C to break") # tid=TidReadParameter(0, 6), #test read 6 word tid (12 bytes 24 chars) # edata=TagAddress(0x02, 8), #test read exendend EPC with 8 words # edata=TagAddress(0x02, 8), #test read exendend EPC with 8 words counter = 0 for tag in conn.read_tag(antennas=const.ANTENNA_1 | const.ANTENNA_2, tid=TidReadParameter(0, 6), udata=TagAddress(0x28, 40),
from hrp import HRP portfolio_1 = HRP() portfolio_1.main()