def encode(to_encode): """Return a 4 character hex string from a 14-bit integer value.""" try: click.echo(alpc.encode(to_encode)) except ValueError as e: click.secho('Encoding error: {0}'.format(e), fg='red') sys.exit(1)
def test_FRED(self): self.assertEqual(alpc.encode('FRED'), 251792692)
def test_A(self): self.assertEqual(alpc.encode('A'), 16777217)
def test_no(self): self.assertEqual(alpc.encode('no'), 53490482)
def test_Woot(self): self.assertEqual(alpc.encode('Woot'), 266956663)
def test_special_chars_2(self): self.assertEqual(alpc.encode('^^^^'), 252706800)
def test_dotdotdotdot(self): self.assertEqual(alpc.encode('....'), 15794160)
def test_BIRD(self): self.assertEqual(alpc.encode('BIRD'), 251930706)
def test_foot(self): self.assertEqual(alpc.encode('foot'), 267939702)
def test_spacefoo(self): self.assertEqual(alpc.encode(' foo'), 250662636)
def test_foo(self): self.assertEqual(alpc.encode('foo'), 124807030)
def test_special_chars(self): self.assertEqual(alpc.encode(' :^)'), 79094888)
import random import time import alpc import alpc2 printable_chars = [ chr(byte) for byte in range(0, 128) if chr(byte).isprintable() ] data = [] for i in range(0, 10000): s = '' for j in range(0, 3): s += random.choice(printable_chars) data.append(s) print('starting speed test\n') t0 = time.time() for s in data: result = alpc.encode(s) print('alpc: ' + str(time.time() - t0)) t0 = time.time() for s in data: result = alpc2.encode(s) print('alpc2: ' + str(time.time() - t0))
def test_encode(self): assert alpc.encode(0) == '4000' assert alpc.encode(8191) == '7F7F' assert alpc.encode(2048) == '5000' assert alpc.encode(-8192) == '0000' assert alpc.encode(-4096) == '2000'