test_AAAΒΆ

wield.control.AAA.test.test_AAA

This is a pytest module needing documentation

pytest-html report

Functions

test_AAA_mod(tpath_preclear)

This is a pytest needing documentation

test_AAA_rand6_lin(test_trigger, ...)

This is a pytest needing documentation

test_AAA_rand6_log(test_trigger, ...)

This is a pytest needing documentation

Details

test_AAA_mod(tpath_preclear)[source][github]ΒΆ

This is a pytest needing documentation

code
 1def test_AAA_mod(tpath_preclear):
 2    from wield.iirrational.representations import asZPKTF
 3    ZPK1 = asZPKTF(
 4        (
 5            (
 6                -0.1 + 0.5j,
 7                -0.1 - 0.5j,
 8                -0.1 + 5j,
 9                -0.1 - 5j,
10                -0.1 + 50j,
11                -0.1 - 50j,
12                -4,
13            ),
14            (
15                -1,
16                -2,
17                -10,
18                -2 + 10j,
19                -2 - 10j,
20            ),
21            0.001,
22        )
23    )
24    F_Hz = np.linspace(0, 60, 200)
25    TF1 = ZPK1.xfer_eval(F_Hz=F_Hz)
26    TF1 = 1 / (1 - TF1)
27
28    results = tfAAA(
29        F_Hz=F_Hz,
30        xfer=TF1,
31        # lf_eager = True,
32        # degree_max = 20,
33        # nconv = 1,
34        # nrel = 10,
35        # rtype = 'log',
36        # supports = (1e-2, 1e-1, 4.2e-1, 5.5e-1, 1.5, 2.8, 1, 5e-1, 2),
37    )
38    dprint("weights", results.wvals)
39    dprint("poles", results.poles)
40    dprint("zeros", results.zeros)
41    dprint("gain", results.gain)
42
43    TF2 = results(F_Hz)
44    axB = mplfigB(Nrows=2)
45    axB.ax0.loglog(F_Hz, abs(TF1))
46    axB.ax0.semilogy(F_Hz, abs(TF2))
47    axB.ax1.semilogx(F_Hz, np.angle(TF1, deg=True))
48    axB.ax1.semilogx(F_Hz, np.angle(TF2, deg=True))
49    for z in results.supports:
50        axB.ax0.axvline(z)
51    axB.save(tjoin("test"))
52    return
pytest information

This code is wrapped in a pytest function using conventions detailed in Pytest Conventions. The full name of this test, as known by the documentation, is:

wield.control.AAA.test.test_AAA.test_AAA_mod

The full name is useful when building documentation, to link a reference to this page using :func:`name`, or directly include it with an autofunction directive. The collapse nodes below show every instance of the test run. There may only be one, but if the test was run multiple times through pytest parametrizations, the list can be longer.

test_AAA_mod
output
status: failed
duration: 0.001s
captured errors:
tpath_preclear = None

    def test_AAA_mod(tpath_preclear):
>       from wield.iirrational.representations import asZPKTF
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:28: ModuleNotFoundError
test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num)[source][github]ΒΆ

This is a pytest needing documentation

code
 1@pytest.mark.parametrize(
 2    "set_num",
 3    [
 4        0,
 5        1,
 6        2,
 7        3,
 8        4,
 9        5,
10        6,
11        7,
12        8,
13        9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
14        10,
15    ],
16)
17def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
18    from wield.iirrational.testing import IIRrational_data
19    data = IIRrational_data("rand6_lin100E", set_num=set_num)
20    F_Hz = data.F_Hz
21    TF1 = data.rep_s.data
22
23    results = tfAAA(
24        F_Hz=F_Hz,
25        xfer=TF1,
26        lf_eager=True,
27        degree_max=20,
28        nconv=1,
29        nrel=10,
30        rtype="log",
31        # supports = (1e-2, 1e-1, 4.2e-1, 5.5e-1, 1.5, 2.8, 1, 5e-1, 2),
32    )
33    dprint("weights", results.wvals)
34    dprint("supports", results.supports)
35    dprint("poles", results.poles)
36    dprint("zeros", results.zeros)
37    dprint("gain", results.gain)
38
39    _, TF3 = scipy.signal.freqs_zpk(
40        results.zeros, results.poles, results.gain, worN=F_Hz
41    )
42
43    TF2 = results(F_Hz)
44
45    def trigger(fail, plot):
46        axB = mplfigB(Nrows=2)
47        axB.ax0.semilogy(F_Hz, abs(TF1))
48        axB.ax0.semilogy(F_Hz, abs(TF2))
49        axB.ax0.semilogy(F_Hz, abs(TF3))
50        axB.ax1.semilogx(F_Hz, np.angle(TF1, deg=True))
51        axB.ax1.semilogx(F_Hz, np.angle(TF2, deg=True))
52        axB.ax1.semilogx(F_Hz, np.angle(TF3, deg=True))
53        for z in results.supports:
54            axB.ax0.axvline(z)
55        axB.save(tjoin("test"))
56
57        axB = mplfigB(Nrows=2)
58        axB.ax0.semilogy(F_Hz, abs(TF2 / TF1))
59        axB.ax0.semilogy(F_Hz, abs(TF3 / TF1))
60        axB.ax1.semilogx(F_Hz, np.angle(TF2 / TF1, deg=True))
61        axB.ax1.semilogx(F_Hz, np.angle(TF3 / TF1, deg=True))
62        if fail:
63            axB.save(tjoin("test_fail"))
64
65    with test_trigger(trigger, plot=plot):
66        dprint(TF2 / TF1)
67        dprint(TF3 / TF1)
68        np.testing.assert_allclose(TF2 / TF1, 1, rtol=1e-3)
69        np.testing.assert_allclose(
70            np.quantile(abs(TF3 / TF1 - 1), 0.95), 0, rtol=0, atol=1e-4
71        )
72    return
pytest information

This code is wrapped in a pytest function using conventions detailed in Pytest Conventions. The full name of this test, as known by the documentation, is:

wield.control.AAA.test.test_AAA.test_AAA_rand6_lin

The full name is useful when building documentation, to link a reference to this page using :func:`name`, or directly include it with an autofunction directive. The collapse nodes below show every instance of the test run. There may only be one, but if the test was run multiple times through pytest parametrizations, the list can be longer.

test_AAA_rand6_lin[5]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5f1a0>
tpath_preclear = None, plot = False, set_num = 5

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[4]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5c5e0>
tpath_preclear = None, plot = False, set_num = 4

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[3]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5e3e0>
tpath_preclear = None, plot = False, set_num = 3

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[8]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd4220>
tpath_preclear = None, plot = False, set_num = 8

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[2]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5ed40>
tpath_preclear = None, plot = False, set_num = 2

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[0]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5e340>
tpath_preclear = None, plot = False, set_num = 0

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[7]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5fce0>
tpath_preclear = None, plot = False, set_num = 7

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[10]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd4c20>
tpath_preclear = None, plot = False, set_num = 10

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[6]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5f7e0>
tpath_preclear = None, plot = False, set_num = 6

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[1]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5e980>
tpath_preclear = None, plot = False, set_num = 1

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_lin[9]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd4720>
tpath_preclear = None, plot = False, set_num = 9

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,  # pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_lin(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:98: ModuleNotFoundError
test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num)[source][github]ΒΆ

This is a pytest needing documentation

code
 1@pytest.mark.parametrize(
 2    "set_num",
 3    [
 4        0,
 5        1,
 6        2,
 7        3,
 8        4,
 9        5,
10        6,
11        7,
12        8,
13        pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
14        10,
15    ],
16)
17def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
18    from wield.iirrational.testing import IIRrational_data
19    data = IIRrational_data("rand6_log100E", set_num=set_num)
20    F_Hz = data.F_Hz
21    TF1 = data.rep_s.data
22
23    results = tfAAA(
24        F_Hz=F_Hz,
25        xfer=TF1,
26        lf_eager=True,
27        degree_max=20,
28        nconv=2,
29        nrel=10,
30        s_tol=0,
31        rtype="log",
32        # supports = (1e-2, 1e-1, 4.2e-1, 5.5e-1, 1.5, 2.8, 1, 5e-1, 2),
33    )
34    dprint("weights", results.wvals)
35    dprint("supports", results.supports)
36
37    dprint("poles true", data.rep_s.poles.fullplane)
38    dprint("zeros true", data.rep_s.zeros.fullplane)
39    dprint("gain true", data.rep_s.gain)
40
41    dprint("poles fit", results.poles)
42    dprint("zeros fit", results.zeros)
43    dprint("gain fit", results.gain)
44
45    # assert(len(data.rep_s.poles.fullplane) == len(results.poles))
46    # assert(len(data.rep_s.zeros.fullplane) == len(results.zeros))
47
48    _, TF3 = scipy.signal.freqs_zpk(
49        results.zeros, results.poles, results.gain, worN=F_Hz
50    )
51
52    TF2 = results(F_Hz)
53
54    def trigger(fail, plot):
55        axB = mplfigB(Nrows=2)
56        axB.ax0.loglog(F_Hz, abs(TF1))
57        axB.ax0.semilogy(F_Hz, abs(TF2))
58        axB.ax0.semilogy(F_Hz, abs(TF3))
59        axB.ax1.semilogx(F_Hz, np.angle(TF1, deg=True))
60        axB.ax1.semilogx(F_Hz, np.angle(TF2, deg=True))
61        axB.ax1.semilogx(F_Hz, np.angle(TF3, deg=True))
62        for z in results.supports:
63            axB.ax0.axvline(z)
64        axB.save(tjoin("test"))
65
66        axB = mplfigB(Nrows=2)
67        axB.ax0.loglog(F_Hz, abs(TF2 / TF1))
68        axB.ax0.semilogy(F_Hz, abs(TF3 / TF1))
69        axB.ax1.semilogx(F_Hz, np.angle(TF2 / TF1, deg=True))
70        axB.ax1.semilogx(F_Hz, np.angle(TF3 / TF1, deg=True))
71        if fail:
72            axB.save(tjoin("test_fail"))
73
74    with test_trigger(trigger, plot=plot):
75        dprint("TF2/TF1 - 1", TF2 / TF1 - 1)
76        dprint("TF3/TF1 - 1", TF3 / TF1 - 1)
77        np.testing.assert_allclose(
78            np.quantile(abs(TF2 / TF1 - 1), 0.95), 0, rtol=0, atol=1e-3
79        )
80        np.testing.assert_allclose(
81            np.quantile(abs(TF3 / TF1 - 1), 0.95), 0, rtol=0, atol=1e-3
82        )
83    return
pytest information

This code is wrapped in a pytest function using conventions detailed in Pytest Conventions. The full name of this test, as known by the documentation, is:

wield.control.AAA.test.test_AAA.test_AAA_rand6_log

The full name is useful when building documentation, to link a reference to this page using :func:`name`, or directly include it with an autofunction directive. The collapse nodes below show every instance of the test run. There may only be one, but if the test was run multiple times through pytest parametrizations, the list can be longer.

test_AAA_rand6_log[9]
output
status: skipped
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd45e0>
tpath_preclear = None, plot = False, set_num = 9

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[10]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd4720>
tpath_preclear = None, plot = False, set_num = 10

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[1]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd5940>
tpath_preclear = None, plot = False, set_num = 1

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[3]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd6660>
tpath_preclear = None, plot = False, set_num = 3

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[0]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd5120>
tpath_preclear = None, plot = False, set_num = 0

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[2]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd6160>
tpath_preclear = None, plot = False, set_num = 2

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[7]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd5b20>
tpath_preclear = None, plot = False, set_num = 7

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[8]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fcd5760>
tpath_preclear = None, plot = False, set_num = 8

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[4]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5fa60>
tpath_preclear = None, plot = False, set_num = 4

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[6]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5c5e0>
tpath_preclear = None, plot = False, set_num = 6

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError
test_AAA_rand6_log[5]
output
status: failed
duration: 0.001s
captured errors:
test_trigger = <function test_trigger.<locals>.fail at 0x7f445fc5f740>
tpath_preclear = None, plot = False, set_num = 5

    @pytest.mark.parametrize(
        "set_num",
        [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            pytest.param(9, marks=pytest.mark.xfail(reason="dynamic range")),
            10,
        ],
    )
    def test_AAA_rand6_log(test_trigger, tpath_preclear, plot, set_num):
>       from wield.iirrational.testing import IIRrational_data
E       ModuleNotFoundError: No module named 'wield.iirrational'

../../src/wield/control/AAA/test/test_AAA.py:172: ModuleNotFoundError