Source code for ewoksid22.tests.test_roitools

import numpy
import random
from .. import roitools


[docs] def test_unscramble_roi_collection(): x = [1, 2, 3] y = [4, 5, 6, 7] n = len(x) * len(y) mot = numpy.random.random(n) motfixed = numpy.random.random(n + 1) mca = numpy.random.random((3, n)) mcafixed = numpy.random.random((3, n + 1)) scalarfixed = 10 data1 = { "x": numpy.repeat(x, len(y)), "y": numpy.tile(y, len(x)), "mot": mot, "motfixed": motfixed, "mca": mca, "mcafixed": mcafixed, "scalarfixed": scalarfixed, } idx = list(range(n)) random.shuffle(idx) data2 = {k: v[..., idx] if "fixed" not in k else v for k, v in data1.items()} data3 = roitools.unscramble_roi_collection(data2, ["x", "y"]) data1 = {k: v.tolist() if "scalar" not in k else v for k, v in data1.items()} data3 = {k: v.tolist() if "scalar" not in k else v for k, v in data3.items()} assert data1 == data3