31 lines
1.1 KiB
Python
31 lines
1.1 KiB
Python
import pytest
|
|
import os, sys
|
|
from creader import RawFileReader
|
|
from fixtures import data_path
|
|
import numpy as np
|
|
|
|
def test_references_on_read(data_path):
|
|
fname= data_path/'test_d0_f0_0.raw'
|
|
r = RawFileReader(fname)
|
|
frames = r.read(10)
|
|
assert sys.getrefcount(frames) == 2 #Over counts by one due to call by reference
|
|
|
|
def test_references_on_read_with_header(data_path):
|
|
fname= data_path/'test_d0_f0_0.raw'
|
|
r = RawFileReader(fname, header = True)
|
|
frames, header = r.read(100)
|
|
assert sys.getrefcount(frames) == 2 #Over counts by one due to call by reference
|
|
assert sys.getrefcount(header) == 2
|
|
|
|
def test_reading_frame_numbers(data_path):
|
|
fname= data_path/'test_d0_f0_0.raw'
|
|
r = RawFileReader(fname, header = True)
|
|
frames, header = r.read(1000)
|
|
assert (header['Frame Number'] == np.arange(201,1201, dtype = np.uint64)).all()
|
|
|
|
def test_reading_more_files_than_available(data_path):
|
|
fname= data_path/'test_d0_f0_0.raw'
|
|
r = RawFileReader(fname, header = True)
|
|
frames, header = r.read(1500)
|
|
assert frames.shape == (1000,400, 400)
|
|
assert header.size == 1000 |