From 2a66c2f6bf4604a1d5f6281d67475a1d12306393 Mon Sep 17 00:00:00 2001 From: Trevor Highland Date: Mon, 28 Jan 2019 18:09:17 +0000 Subject: [PATCH] Skip tests based on python version. --- test/test_large_read.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/test/test_large_read.py b/test/test_large_read.py index 82bb925..bb1129e 100644 --- a/test/test_large_read.py +++ b/test/test_large_read.py @@ -1,4 +1,5 @@ import pytest +import platform import capnp import os import tempfile @@ -41,17 +42,28 @@ def test_large_read_multiple(test_capnp): for m in test_capnp.Msg.read_multiple(f): pass - -def test_large_read_multiple_bytes(test_capnp): +def get_two_adjacent_messages(test_capnp): msg1 = test_capnp.Msg.new_message() msg1.data = [0x41] * 8192 m1 = msg1.to_bytes() msg2 = test_capnp.Msg.new_message() m2 = msg2.to_bytes() - data = m1 + m2 + return m1 + m2 + +def test_large_read_multiple_bytes(test_capnp): + data = get_two_adjacent_messages(test_capnp) for m in test_capnp.Msg.read_multiple_bytes(data): pass +@pytest.mark.skipif(platform.python_implementation() == 'PyPy', reason="PyPy memoryview support is limited") +def test_large_read_mutltiple_bytes_memoryview(test_capnp): + data = get_two_adjacent_messages(test_capnp) for m in test_capnp.Msg.read_multiple_bytes(memoryview(data)): pass + +@pytest.mark.skipif(sys.version_info[0] == 3, reason="Legacy buffer support only for python 2.7") +def test_large_read_mutltiple_bytes_buffer(test_capnp): + data = get_two_adjacent_messages(test_capnp) + for m in test_capnp.Msg.read_multiple_bytes(buffer(data)): + pass