# run: # python python_pybuf_runme3.py benchmark # for the benchmark, other wise the test case will be run import python_pybuf import sys if len(sys.argv) >= 2 and sys.argv[1] == "benchmark": # run the benchmark import time k = 1000000 # number of times to excute the functions t = time.time() a = bytearray(b'hello world') for i in range(k): pybuf.title1(a) print("Time used by bytearray:", time.time() - t) t = time.time() b = 'hello world' for i in range(k): pybuf.title2(b) print("Time used by string:", time.time() - t) else: # run the test case buf1 = bytearray(10) buf2 = bytearray(50) pybuf.func1(buf1) assert buf1 == b'a' * 10 pybuf.func2(buf2) assert buf2.startswith(b"Hello world!\x00") count = pybuf.func3(buf2) assert count == 10 # number of alpha and number in 'Hello world!' length = pybuf.func4(buf2) assert length == 12 buf3 = bytearray(b"hello") pybuf.title1(buf3) assert buf3 == b'Hello'