Clone
1
run 1545 TEST commit 9b2f6c3
ci-bot edited this page 2025-08-03 20:07:24 +00:00

Test Report

View CI Run 1545 | Commit 9b2f6c3

🧪 Test Report

Generated on 2025-08-03 22:07:19 CEST

🧾 General Info

  • duration: 11.433375597000122
  • root: /workspace/tligui_y/slic
  • environment: {}

📋 Summary

  • Passed: 372
  • Failed: 23
  • Total: 395
  • Collected: 395

🔎 Tests

Passed (372)
  • 📄 test_utils_argfwd.py

    Function: test_split_at

    • Test 1
      params: lst=["a", "b", "c", "d"], index=2, expected="a", "b"], ["c", "d"

      📌 Runtime Parameters

      params:
        lst:
          - a
          - b
          - c
          - d
        index: 2
        expected:
          -       - a
            - b
          -       - c
            - d
      id: lst0-2-expected0
      

      📌 Setup phase

      duration:

      0.0006841151043772697
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018561212345957756
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002592252567410469
      

      outcome:

      passed
      
    • Test 2
      params: lst=["x", "y"], index=1, expected="x"], ["y"

      📌 Runtime Parameters

      params:
        lst:
          - x
          - y
        index: 1
        expected:
          -       - x
          -       - y
      id: lst1-1-expected1
      

      📌 Setup phase

      duration:

      0.00029988307505846024
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001456690952181816
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000156463123857975
      

      outcome:

      passed
      
    • Test 3
      params: lst=[], index=0, expected=], [

      📌 Runtime Parameters

      params:
        lst:
      []
        index: 0
        expected:
          - (vide)
          - (vide)
      id: lst2-0-expected2
      

      📌 Setup phase

      duration:

      0.00027111126109957695
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014159409329295158
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016390765085816383
      

      outcome:

      passed
      

    Function: test_merge_lists_unique

    • Test 4
      params: a=["a", "b"], b=["b", "c"], expected=["a", "b", "c"]

      📌 Runtime Parameters

      params:
        a:
          - a
          - b
        b:
          - b
          - c
        expected:
          - a
          - b
          - c
      id: a0-b0-expected0
      

      📌 Setup phase

      duration:

      0.00025389809161424637
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013674795627593994
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017821462824940681
      

      outcome:

      passed
      
    • Test 5
      params: a=[], b=["x"], expected=["x"]

      📌 Runtime Parameters

      params:
        a:
      []
        b:
          - x
        expected:
          - x
      id: a1-b1-expected1
      

      📌 Setup phase

      duration:

      0.0002628113143146038
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013701105490326881
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016409903764724731
      

      outcome:

      passed
      
    • Test 6
      params: a=["x", "y"], b=["x", "y"], expected=["x", "y"]

      📌 Runtime Parameters

      params:
        a:
          - x
          - y
        b:
          - x
          - y
        expected:
          - x
          - y
      id: a2-b2-expected2
      

      📌 Setup phase

      duration:

      0.00025659799575805664
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014203181490302086
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001537906937301159
      

      outcome:

      passed
      

    Function: test_merge_dicts_unique

    • Test 7
      params: a={"a": 1}, b={"b": 2}, expected={"a": 1, "b": 2}

      📌 Runtime Parameters

      params:
        a:
          a: 1
        b:
          b: 2
        expected:
          a: 1
          b: 2
      id: a0-b0-expected0
      

      📌 Setup phase

      duration:

      0.0002675633877515793
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013837404549121857
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015577999874949455
      

      outcome:

      passed
      
    • Test 8
      params: a={"x": 1}, b={"x": 9, "y": 3}, expected={"x": 1, "y": 3}

      📌 Runtime Parameters

      params:
        a:
          x: 1
        b:
          x: 9
          y: 3
        expected:
          x: 1
          y: 3
      id: a1-b1-expected1
      

      📌 Setup phase

      duration:

      0.0002713007852435112
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001361616887152195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014590099453926086
      

      outcome:

      passed
      
    • Test 9
      params: a={}, b={"k": 4}, expected={"k": 4}

      📌 Runtime Parameters

      params:
        a:
      {}
        b:
          k: 4
        expected:
          k: 4
      id: a2-b2-expected2
      

      📌 Setup phase

      duration:

      0.00026340316981077194
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013833492994308472
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001496998593211174
      

      outcome:

      passed
      

    Function: test_make_params_pos_basic

    • Test 10
      params: pos=["a", "b"], expected_names=["a", "b"]

      📌 Runtime Parameters

      params:
        pos:
          - a
          - b
        expected_names:
          - a
          - b
      id: pos0-expected_names0
      

      📌 Setup phase

      duration:

      0.00020739994943141937
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016026105731725693
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015167193487286568
      

      outcome:

      passed
      
    • Test 11
      params: pos=["param1", "value_2", "Z"], expected_names=["param1", "value_2", "Z"]

      📌 Runtime Parameters

      params:
        pos:
          - param1
          - value_2
          - Z
        expected_names:
          - param1
          - value_2
          - Z
      id: pos1-expected_names1
      

      📌 Setup phase

      duration:

      0.0002172389067709446
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015297112986445427
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014889473095536232
      

      outcome:

      passed
      
    • Test 12
      params: pos=[], expected_names=[]

      📌 Runtime Parameters

      params:
        pos:
      []
        expected_names:
      []
      id: pos2-expected_names2
      

      📌 Setup phase

      duration:

      0.00022473791614174843
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013716798275709152
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013596098870038986
      

      outcome:

      passed
      

    Function: test_make_params_kw_basic

    • Test 13
      params: kw={"a": 1, "b": 2}, expected_keys=["a", "b"], expected_defaults=[1, 2]

      📌 Runtime Parameters

      params:
        kw:
          a: 1
          b: 2
        expected_keys:
          - a
          - b
        expected_defaults:
          - 1
          - 2
      id: kw0-expected_keys0-expected_defaults0
      

      📌 Setup phase

      duration:

      0.00025789719074964523
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016950024291872978
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015299487859010696
      

      outcome:

      passed
      
    • Test 14
      params: kw={"param_x": 0}, expected_keys=["param_x"], expected_defaults=[0]

      📌 Runtime Parameters

      params:
        kw:
          param_x: 0
        expected_keys:
          - param_x
        expected_defaults:
          - (vide)
      id: kw1-expected_keys1-expected_defaults1
      

      📌 Setup phase

      duration:

      0.00026188185438513756
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014553172513842583
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015717372298240662
      

      outcome:

      passed
      
    • Test 15
      params: kw={}, expected_keys=[], expected_defaults=[]

      📌 Runtime Parameters

      params:
        kw:
      {}
        expected_keys:
      []
        expected_defaults:
      []
      id: kw2-expected_keys2-expected_defaults2
      

      📌 Setup phase

      duration:

      0.0002728360705077648
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001383638009428978
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014687282964587212
      

      outcome:

      passed
      

    Function: test_make_signature_parametrized

    • Test 16
      params: pos=["x", "y"], kw={"z": 3}, expected_signature="(x, y, z=3)"

      📌 Runtime Parameters

      params:
        pos:
          - x
          - y
        kw:
          z: 3
        expected_signature: (x, y, z=3)
      id: pos0-kw0-(x, y, z=3)
      

      📌 Setup phase

      duration:

      0.00028440961614251137
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018443679437041283
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015417393296957016
      

      outcome:

      passed
      
    • Test 17
      params: pos=["a"], kw={"b": 1, "c": 2}, expected_signature="(a, b=1, c=2)"

      📌 Runtime Parameters

      params:
        pos:
          - a
        kw:
          b: 1
          c: 2
        expected_signature: (a, b=1, c=2)
      id: pos1-kw1-(a, b=1, c=2)
      

      📌 Setup phase

      duration:

      0.0002682977356016636
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017528701573610306
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001626848243176937
      

      outcome:

      passed
      
    • Test 18
      params: pos=[], kw={"flag": false}, expected_signature="(flag=False)"

      📌 Runtime Parameters

      params:
        pos:
      []
        kw:
          flag: False
        expected_signature: (flag=False)
      id: pos2-kw2-(flag=False)
      

      📌 Setup phase

      duration:

      0.00026633916422724724
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015970272943377495
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016088876873254776
      

      outcome:

      passed
      

    Function: test_get_args_parametrized

    • Test 19
      params: func=" at 0x7f84de8c5c10>", expected_pos=["a", "b"], expected_kw={"c": 3, "d": 4}

      📌 Runtime Parameters

      params:
        func: <function <lambda> at 0x7f84de8c5c10>
        expected_pos:
          - a
          - b
        expected_kw:
          c: 3
          d: 4
      id: <lambda>-expected_pos0-expected_kw0
      

      📌 Setup phase

      duration:

      0.0002634110860526562
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021562306210398674
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0003639198839664459
      

      outcome:

      passed
      
    • Test 20
      params: func=" at 0x7f84de8c9b80>", expected_pos=[], expected_kw="{'x': 1, 'y': , 'z': 0}"

      📌 Runtime Parameters

      params:
        func: <function <lambda> at 0x7f84de8c9b80>
        expected_pos:
      []
        expected_kw: {'x': 1, 'y': <class 'inspect._empty'>, 'z': 0}
      id: <lambda>-expected_pos1-expected_kw1
      

      📌 Setup phase

      duration:

      0.0002875290811061859
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020412588492035866
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017051491886377335
      

      outcome:

      passed
      
    • Test 21
      params: func=" at 0x7f84de8c9ca0>", expected_pos=[], expected_kw={}

      📌 Runtime Parameters

      params:
        func: <function <lambda> at 0x7f84de8c9ca0>
        expected_pos:
      []
        expected_kw:
      {}
      id: <lambda>-expected_pos2-expected_kw2
      

      📌 Setup phase

      duration:

      0.0002787197008728981
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001884843222796917
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015567103400826454
      

      outcome:

      passed
      

    Function: test_signature_visible

    • Test 22
      params: func="", expected_sig="(a, b, d=30, c=10)"

      📌 Runtime Parameters

      params:
        func: <function wrap_all at 0x7f84de8c9ee0>
        expected_sig: (a, b, d=30, c=10)
      id: wrap_all-(a, b, d=30, c=10)
      

      📌 Setup phase

      duration:

      0.00022717192769050598
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016324175521731377
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014169607311487198
      

      outcome:

      passed
      
    • Test 23
      params: func="", expected_sig="(a, b, c=10, d=20)"

      📌 Runtime Parameters

      params:
        func: <function wrap_skip at 0x7f84de8c9f70>
        expected_sig: (a, b, c=10, d=20)
      id: wrap_skip-(a, b, c=10, d=20)
      

      📌 Setup phase

      duration:

      0.00022311275824904442
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001532020978629589
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014234893023967743
      

      outcome:

      passed
      
    • Test 24
      params: func="", expected_sig="(x, y, c=10, d=20)"

      📌 Runtime Parameters

      params:
        func: <function wrap_ignore_all at 0x7f84de8d4040>
        expected_sig: (x, y, c=10, d=20)
      id: wrap_ignore_all-(x, y, c=10, d=20)
      

      📌 Setup phase

      duration:

      0.0002465592697262764
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001511070877313614
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013516098260879517
      

      outcome:

      passed
      

    Function: test_wrapper_behavior

    • Test 25
      params: func="", args=[1, 2, 3], kwargs={}, expected_result=36

      📌 Runtime Parameters

      params:
        func: <function wrap_all at 0x7f84de8c9ee0>
        args:
          - 1
          - 2
          - 3
        kwargs:
      {}
        expected_result: 36
      id: wrap_all-args0-kwargs0-36
      

      📌 Setup phase

      duration:

      0.000310530886054039
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013467296957969666
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001744837500154972
      

      outcome:

      passed
      
    • Test 26
      params: func="", args=[1, 2, 3], kwargs={"d": 5}, expected_result=11

      📌 Runtime Parameters

      params:
        func: <function wrap_all at 0x7f84de8c9ee0>
        args:
          - 1
          - 2
          - 3
        kwargs:
          d: 5
        expected_result: 11
      id: wrap_all-args1-kwargs1-11
      

      📌 Setup phase

      duration:

      0.00029568420723080635
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001314510591328144
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001711319200694561
      

      outcome:

      passed
      
    • Test 27
      params: func="", args=[0, 0], kwargs={"c": 3, "d": 4}, expected_result=10

      📌 Runtime Parameters

      params:
        func: <function wrap_skip at 0x7f84de8c9f70>
        args:
          - (vide)
          - (vide)
        kwargs:
          c: 3
          d: 4
        expected_result: 10
      id: wrap_skip-args2-kwargs2-10
      

      📌 Setup phase

      duration:

      0.0003100913017988205
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014921929687261581
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001648501493036747
      

      outcome:

      passed
      
    • Test 28
      params: func="", args=[0, 0], kwargs={}, expected_result=10

      📌 Runtime Parameters

      params:
        func: <function wrap_ignore_all at 0x7f84de8d4040>
        args:
          - (vide)
          - (vide)
        kwargs:
      {}
        expected_result: 10
      id: wrap_ignore_all-args3-kwargs3-10
      

      📌 Setup phase

      duration:

      0.0003188271075487137
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014176173135638237
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016723526641726494
      

      outcome:

      passed
      
  • 📄 test_utils_ask_yes_no.py

    Function: test_ask_yes_no

    • Test 29
      params: default=null, user_input="y", expected_output=true, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input: y
        expected_output: True
        expected_prompt: Question? [y/n] 
      id: None-y-True-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.0003257640637457371
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008369311690330505
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020271306857466698
      

      outcome:

      passed
      
    • Test 30
      params: default=null, user_input="yes", expected_output=true, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input: yes
        expected_output: True
        expected_prompt: Question? [y/n] 
      id: None-yes-True-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.00032285135239362717
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006355280056595802
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018352502956986427
      

      outcome:

      passed
      
    • Test 31
      params: default=null, user_input="n", expected_output=false, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input: n
        expected_output: False
        expected_prompt: Question? [y/n] 
      id: None-n-False-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.0003275959752500057
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005148109048604965
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017963536083698273
      

      outcome:

      passed
      
    • Test 32
      params: default=null, user_input="no", expected_output=false, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input: no
        expected_output: False
        expected_prompt: Question? [y/n] 
      id: None-no-False-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.0003145490773022175
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000496267806738615
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001763789914548397
      

      outcome:

      passed
      
    • Test 33
      params: default=null, user_input=["maybe", "y"], expected_output=true, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input:
          - maybe
          - y
        expected_output: True
        expected_prompt: Question? [y/n] 
      id: None-user_input4-True-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.00030755018815398216
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005185198970139027
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017660902813076973
      

      outcome:

      passed
      
    • Test 34
      params: default=null, user_input=["", "no"], expected_output=false, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input:
          - (vide)
          - no
        expected_output: False
        expected_prompt: Question? [y/n] 
      id: None-user_input5-False-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.000325729139149189
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006117266602814198
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017754081636667252
      

      outcome:

      passed
      
    • Test 35
      params: default=null, user_input=["invalid", "", "invalid", "yes"], expected_output=true, expected_prompt="Question? [y/n] "

      📌 Runtime Parameters

      params:
        default: None
        user_input:
          - invalid
          - (vide)
          - invalid
          - yes
        expected_output: True
        expected_prompt: Question? [y/n] 
      id: None-user_input6-True-Question? [y/n] 
      

      📌 Setup phase

      duration:

      0.000312920194119215
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005269837565720081
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019655516371130943
      

      outcome:

      passed
      
    • Test 36
      params: default="y", user_input="y", expected_output=true, expected_prompt="Question? [Y/n] "

      📌 Runtime Parameters

      params:
        default: y
        user_input: y
        expected_output: True
        expected_prompt: Question? [Y/n] 
      id: y-y-True-Question? [Y/n] 
      

      📌 Setup phase

      duration:

      0.0003122147172689438
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004990147426724434
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019639311358332634
      

      outcome:

      passed
      
    • Test 37
      params: default="y", user_input="n", expected_output=false, expected_prompt="Question? [Y/n] "

      📌 Runtime Parameters

      params:
        default: y
        user_input: n
        expected_output: False
        expected_prompt: Question? [Y/n] 
      id: y-n-False-Question? [Y/n] 
      

      📌 Setup phase

      duration:

      0.00035551516339182854
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004946310073137283
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017795991152524948
      

      outcome:

      passed
      
    • Test 38
      params: default="y", user_input="", expected_output=true, expected_prompt="Question? [Y/n] "

      📌 Runtime Parameters

      params:
        default: y
        user_input: None
        expected_output: True
        expected_prompt: Question? [Y/n] 
      id: y--True-Question? [Y/n] 
      

      📌 Setup phase

      duration:

      0.00031638890504837036
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006400560960173607
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019880710169672966
      

      outcome:

      passed
      
    • Test 39
      params: default="n", user_input="y", expected_output=true, expected_prompt="Question? [y/N] "

      📌 Runtime Parameters

      params:
        default: n
        user_input: y
        expected_output: True
        expected_prompt: Question? [y/N] 
      id: n-y-True-Question? [y/N] 
      

      📌 Setup phase

      duration:

      0.0003134012222290039
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005029020830988884
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019048899412155151
      

      outcome:

      passed
      
    • Test 40
      params: default="n", user_input="n", expected_output=false, expected_prompt="Question? [y/N] "

      📌 Runtime Parameters

      params:
        default: n
        user_input: n
        expected_output: False
        expected_prompt: Question? [y/N] 
      id: n-n-False-Question? [y/N] 
      

      📌 Setup phase

      duration:

      0.00032560108229517937
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005124271847307682
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018313806504011154
      

      outcome:

      passed
      
    • Test 41
      params: default="n", user_input="", expected_output=false, expected_prompt="Question? [y/N] "

      📌 Runtime Parameters

      params:
        default: n
        user_input: None
        expected_output: False
        expected_prompt: Question? [y/N] 
      id: n--False-Question? [y/N] 
      

      📌 Setup phase

      duration:

      0.0003240378573536873
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005095042288303375
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00028849299997091293
      

      outcome:

      passed
      

    Function: test_ask_yes_no_ctrl_c

    • Test 42
      params: default=null, user_input="", expected_output=false, ctrl_c="n"

      📌 Runtime Parameters

      params:
        default: None
        user_input: <class 'KeyboardInterrupt'>
        expected_output: False
        ctrl_c: n
      id: None-KeyboardInterrupt-False-n
      

      📌 Setup phase

      duration:

      0.00032449234277009964
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004989332519471645
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001781107857823372
      

      outcome:

      passed
      
    • Test 43
      params: default=null, user_input="", expected_output=true, ctrl_c="y"

      📌 Runtime Parameters

      params:
        default: None
        user_input: <class 'KeyboardInterrupt'>
        expected_output: True
        ctrl_c: y
      id: None-KeyboardInterrupt-True-y
      

      📌 Setup phase

      duration:

      0.00031344685703516006
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005090720951557159
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019126804545521736
      

      outcome:

      passed
      
    • Test 44
      params: default="y", user_input="", expected_output=false, ctrl_c="n"

      📌 Runtime Parameters

      params:
        default: y
        user_input: <class 'KeyboardInterrupt'>
        expected_output: False
        ctrl_c: n
      id: y-KeyboardInterrupt-False-n
      

      📌 Setup phase

      duration:

      0.00033510196954011917
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004923748783767223
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001849583350121975
      

      outcome:

      passed
      
    • Test 45
      params: default="y", user_input="", expected_output=true, ctrl_c="y"

      📌 Runtime Parameters

      params:
        default: y
        user_input: <class 'KeyboardInterrupt'>
        expected_output: True
        ctrl_c: y
      id: y-KeyboardInterrupt-True-y
      

      📌 Setup phase

      duration:

      0.0003126594237983227
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005929712206125259
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020422087982296944
      

      outcome:

      passed
      
    • Test 46
      params: default="n", user_input="", expected_output=false, ctrl_c="n"

      📌 Runtime Parameters

      params:
        default: n
        user_input: <class 'KeyboardInterrupt'>
        expected_output: False
        ctrl_c: n
      id: n-KeyboardInterrupt-False-n
      

      📌 Setup phase

      duration:

      0.00032846303656697273
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005084099248051643
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018201908096671104
      

      outcome:

      passed
      
    • Test 47
      params: default=null, user_input="['invalid', '', 'invalid', ]", expected_output=false, ctrl_c="n"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['invalid', '', 'invalid', <class 'KeyboardInterrupt'>]
        expected_output: False
        ctrl_c: n
      id: None-user_input5-False-n
      

      📌 Setup phase

      duration:

      0.00031342683359980583
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000613274984061718
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018302397802472115
      

      outcome:

      passed
      
    • Test 48
      params: default=null, user_input="['invalid', '', 'invalid', ]", expected_output=true, ctrl_c="y"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['invalid', '', 'invalid', <class 'KeyboardInterrupt'>]
        expected_output: True
        ctrl_c: y
      id: None-user_input6-True-y
      

      📌 Setup phase

      duration:

      0.00032717594876885414
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005271732807159424
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020332681015133858
      

      outcome:

      passed
      
    • Test 49
      params: default=null, user_input="['foo', '', , '', 'invalid', , 'no']", expected_output=false, ctrl_c=null

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['foo', '', <class 'KeyboardInterrupt'>, '', 'invalid', <class 'KeyboardInterrupt'>, 'no']
        expected_output: False
        ctrl_c: None
      id: None-user_input7-False-None
      

      📌 Setup phase

      duration:

      0.0003271237947046757
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006492119282484055
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019775331020355225
      

      outcome:

      passed
      
    • Test 50
      params: default="n", user_input="[, , , '']", expected_output=false, ctrl_c=null

      📌 Runtime Parameters

      params:
        default: n
        user_input: [<class 'KeyboardInterrupt'>, <class 'KeyboardInterrupt'>, <class 'KeyboardInterrupt'>, '']
        expected_output: False
        ctrl_c: None
      id: n-user_input8-False-None
      

      📌 Setup phase

      duration:

      0.0003132312558591366
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000546491239219904
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020262086763978004
      

      outcome:

      passed
      
    • Test 51
      params: default="n", user_input="[, , , '']", expected_output=false, ctrl_c="Invalid"

      📌 Runtime Parameters

      params:
        default: n
        user_input: [<class 'KeyboardInterrupt'>, <class 'KeyboardInterrupt'>, <class 'KeyboardInterrupt'>, '']
        expected_output: False
        ctrl_c: Invalid
      id: n-user_input9-False-Invalid
      

      📌 Setup phase

      duration:

      0.0003300001844763756
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005635279230773449
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020043598487973213
      

      outcome:

      passed
      

    Function: test_ask_yes_no_ctrl_d

    • Test 52
      params: default=null, user_input="", expected_output=false, ctrl_d="n"

      📌 Runtime Parameters

      params:
        default: None
        user_input: <class 'EOFError'>
        expected_output: False
        ctrl_d: n
      id: None-EOFError-False-n
      

      📌 Setup phase

      duration:

      0.00033309217542409897
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0011327452957630157
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019457237794995308
      

      outcome:

      passed
      
    • Test 53
      params: default=null, user_input="", expected_output=true, ctrl_d="y"

      📌 Runtime Parameters

      params:
        default: None
        user_input: <class 'EOFError'>
        expected_output: True
        ctrl_d: y
      id: None-EOFError-True-y
      

      📌 Setup phase

      duration:

      0.00034572090953588486
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005085053853690624
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019218027591705322
      

      outcome:

      passed
      
    • Test 54
      params: default="y", user_input="", expected_output=true, ctrl_d="y"

      📌 Runtime Parameters

      params:
        default: y
        user_input: <class 'EOFError'>
        expected_output: True
        ctrl_d: y
      id: y-EOFError-True-y
      

      📌 Setup phase

      duration:

      0.0003194417804479599
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005514901131391525
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018386170268058777
      

      outcome:

      passed
      
    • Test 55
      params: default="n", user_input="", expected_output=true, ctrl_d="y"

      📌 Runtime Parameters

      params:
        default: n
        user_input: <class 'EOFError'>
        expected_output: True
        ctrl_d: y
      id: n-EOFError-True-y
      

      📌 Setup phase

      duration:

      0.0003401869907975197
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000511733815073967
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018585193902254105
      

      outcome:

      passed
      
    • Test 56
      params: default="n", user_input="", expected_output=false, ctrl_d="n"

      📌 Runtime Parameters

      params:
        default: n
        user_input: <class 'EOFError'>
        expected_output: False
        ctrl_d: n
      id: n-EOFError-False-n
      

      📌 Setup phase

      duration:

      0.0004037809558212757
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006239120848476887
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020877690985798836
      

      outcome:

      passed
      
    • Test 57
      params: default=null, user_input="['foo', ]", expected_output=true, ctrl_d="y"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['foo', <class 'EOFError'>]
        expected_output: True
        ctrl_d: y
      id: None-user_input5-True-y
      

      📌 Setup phase

      duration:

      0.00031770719215273857
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005307812243700027
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018895510584115982
      

      outcome:

      passed
      
    • Test 58
      params: default=null, user_input="['foo', ]", expected_output=false, ctrl_d="n"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['foo', <class 'EOFError'>]
        expected_output: False
        ctrl_d: n
      id: None-user_input6-False-n
      

      📌 Setup phase

      duration:

      0.00031801825389266014
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005590678192675114
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018074503168463707
      

      outcome:

      passed
      
    • Test 59
      params: default="y", user_input="", expected_output=true, ctrl_d=null

      📌 Runtime Parameters

      params:
        default: y
        user_input: <class 'EOFError'>
        expected_output: True
        ctrl_d: None
      id: y-EOFError-True-None
      

      📌 Setup phase

      duration:

      0.00032547302544116974
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004991400055587292
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002030511386692524
      

      outcome:

      passed
      
    • Test 60
      params: default="n", user_input="", expected_output=false, ctrl_d=null

      📌 Runtime Parameters

      params:
        default: n
        user_input: <class 'EOFError'>
        expected_output: False
        ctrl_d: None
      id: n-EOFError-False-None
      

      📌 Setup phase

      duration:

      0.0003156089223921299
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006101191975176334
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019970303401350975
      

      outcome:

      passed
      
    • Test 61
      params: default=null, user_input="['invalid', 'ok', '', , 'ok', 'y']", expected_output=true, ctrl_d=null

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['invalid', 'ok', '', <class 'EOFError'>, 'ok', 'y']
        expected_output: True
        ctrl_d: None
      id: None-user_input9-True-None
      

      📌 Setup phase

      duration:

      0.00032147718593478203
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005711512640118599
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018087588250637054
      

      outcome:

      passed
      
    • Test 62
      params: default="n", user_input="['no', ]", expected_output=false, ctrl_d=null

      📌 Runtime Parameters

      params:
        default: n
        user_input: ['no', <class 'EOFError'>]
        expected_output: False
        ctrl_d: None
      id: n-user_input10-False-None
      

      📌 Setup phase

      duration:

      0.00033663399517536163
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005065700970590115
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019850395619869232
      

      outcome:

      passed
      
    • Test 63
      params: default=null, user_input="[, , , 'y']", expected_output=true, ctrl_d=null

      📌 Runtime Parameters

      params:
        default: None
        user_input: [<class 'EOFError'>, <class 'EOFError'>, <class 'EOFError'>, 'y']
        expected_output: True
        ctrl_d: None
      id: None-user_input11-True-None
      

      📌 Setup phase

      duration:

      0.0003897971473634243
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007073511369526386
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018977327272295952
      

      outcome:

      passed
      
    • Test 64
      params: default=null, user_input="['invalid', '', 'nope', ]", expected_output=false, ctrl_d="n"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['invalid', '', 'nope', <class 'EOFError'>]
        expected_output: False
        ctrl_d: n
      id: None-user_input12-False-n
      

      📌 Setup phase

      duration:

      0.00034500379115343094
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005486146546900272
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00028609205037355423
      

      outcome:

      passed
      
    • Test 65
      params: default=null, user_input="['nope', 'nope', ]", expected_output=true, ctrl_d="y"

      📌 Runtime Parameters

      params:
        default: None
        user_input: ['nope', 'nope', <class 'EOFError'>]
        expected_output: True
        ctrl_d: y
      id: None-user_input13-True-y
      

      📌 Setup phase

      duration:

      0.0005141398869454861
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008467282168567181
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00030941981822252274
      

      outcome:

      passed
      

    Function: test_ask_yes_no_mixed_sequences

    • Test 66
      params: default=null, ctrl_c="invalid", ctrl_d=null, user_input="['what', '', 'nope', , 'ok', , 'no']", expected_output=false

      📌 Runtime Parameters

      params:
        default: None
        ctrl_c: invalid
        ctrl_d: None
        user_input: ['what', '', 'nope', <class 'KeyboardInterrupt'>, 'ok', <class 'EOFError'>, 'no']
        expected_output: False
      id: None-invalid-None-user_input0-False
      

      📌 Setup phase

      duration:

      0.0006089559756219387
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007397029548883438
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002559470012784004
      

      outcome:

      passed
      
    • Test 67
      params: default=null, ctrl_c=null, ctrl_d="notananswer", user_input="['maybe', , 'nop', 'yep', , 'yes']", expected_output=true

      📌 Runtime Parameters

      params:
        default: None
        ctrl_c: None
        ctrl_d: notananswer
        user_input: ['maybe', <class 'KeyboardInterrupt'>, 'nop', 'yep', <class 'EOFError'>, 'yes']
        expected_output: True
      id: None-None-notananswer-user_input1-True
      

      📌 Setup phase

      duration:

      0.0005903379060328007
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009765070863068104
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002785800024867058
      

      outcome:

      passed
      
    • Test 68
      params: default=null, ctrl_c="n", ctrl_d="nop", user_input="['ok', , , 'maybe', , 'nah', ]", expected_output=false

      📌 Runtime Parameters

      params:
        default: None
        ctrl_c: n
        ctrl_d: nop
        user_input: ['ok', <class 'EOFError'>, <class 'EOFError'>, 'maybe', <class 'EOFError'>, 'nah', <class 'KeyboardInterrupt'>]
        expected_output: False
      id: None-n-nop-user_input2-False
      

      📌 Setup phase

      duration:

      0.000536611769348383
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008624102920293808
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002911556512117386
      

      outcome:

      passed
      
  • 📄 test_utils_channels.py

    Function: test_load_channels_and_channels_class_with_professional_names

    • Test 69

      📌 Setup phase

      duration:

      0.00016706623136997223
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.001351840328425169
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019757868722081184
      

      outcome:

      passed
      
  • 📄 test_utils_config.py

    Function: test_config_with_nested_and_list_data

    • Test 70

      📌 Setup phase

      duration:

      0.000200783833861351
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007295180112123489
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001692250370979309
      

      outcome:

      passed
      

    Function: test_config_with_strange_and_edge_keys

    • Test 71

      📌 Setup phase

      duration:

      0.00019233860075473785
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009560380131006241
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018789386376738548
      

      outcome:

      passed
      
  • 📄 test_utils_cpint.py

    Function: test_load_color_variants_all_keys_and_types

    • Test 72
      params: base_color="red"

      📌 Runtime Parameters

      params:
        base_color: red
      id: red
      

      📌 Setup phase

      duration:

      0.0003012293018400669
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00025561498478055
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002135019749403
      

      outcome:

      passed
      
    • Test 73
      params: base_color="blue"

      📌 Runtime Parameters

      params:
        base_color: blue
      id: blue
      

      📌 Setup phase

      duration:

      0.00026853708550333977
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003054579719901085
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021378137171268463
      

      outcome:

      passed
      
    • Test 74
      params: base_color="yellow"

      📌 Runtime Parameters

      params:
        base_color: yellow
      id: yellow
      

      📌 Setup phase

      duration:

      0.00022583827376365662
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019965693354606628
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001715836115181446
      

      outcome:

      passed
      
    • Test 75
      params: base_color="green"

      📌 Runtime Parameters

      params:
        base_color: green
      id: green
      

      📌 Setup phase

      duration:

      0.0002520298585295677
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023076683282852173
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015187682583928108
      

      outcome:

      passed
      
    • Test 76
      params: base_color="cyan"

      📌 Runtime Parameters

      params:
        base_color: cyan
      id: cyan
      

      📌 Setup phase

      duration:

      0.00029898714274168015
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00024752505123615265
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022985972464084625
      

      outcome:

      passed
      
    • Test 77
      params: base_color="magenta"

      📌 Runtime Parameters

      params:
        base_color: magenta
      id: magenta
      

      📌 Setup phase

      duration:

      0.0003308858722448349
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00025783712044358253
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0004136841744184494
      

      outcome:

      passed
      
    • Test 78
      params: base_color="white"

      📌 Runtime Parameters

      params:
        base_color: white
      id: white
      

      📌 Setup phase

      duration:

      0.0003290800377726555
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000287806149572134
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023553892970085144
      

      outcome:

      passed
      
    • Test 79
      params: base_color="black"

      📌 Runtime Parameters

      params:
        base_color: black
      id: black
      

      📌 Setup phase

      duration:

      0.0003149169497191906
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002575707621872425
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002300250343978405
      

      outcome:

      passed
      

    Function: test_cprint_all_cases_fancy

    • Test 80
      params: objects=[["Fancy", "list"], {"a": 7}, null], color_spec=["red", "+"], sep=" | ", expected_flatten="['Fancy', 'list'] | {'a': 7} | None", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - Fancy
            - list
          -       a: 7
          - (vide)
        color_spec:
          - red
          - +
        sep:  | 
        expected_flatten: ['Fancy', 'list'] | {'a': 7} | None
        expected_error: None
      id: objects0-color_spec0- | -['Fancy', 'list'] | {'a': 7} | None-None
      

      📌 Setup phase

      duration:

      0.0006534801796078682
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00026210397481918335
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00026949401944875717
      

      outcome:

      passed
      
    • Test 81
      params: objects=[{"k": [1, 2]}, 99, ["X", ["Y"]]], color_spec=["blue", "++"], sep=" - ", expected_flatten="{'k': [1, 2]} - 99 - ['X', ['Y']]", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       k:
              - 1
              - 2
          - 99
          -       - X
            -         - Y
        color_spec:
          - blue
          - ++
        sep:  - 
        expected_flatten: {'k': [1, 2]} - 99 - ['X', ['Y']]
        expected_error: None
      id: objects1-color_spec1- - -{'k': [1, 2]} - 99 - ['X', ['Y']]-None
      

      📌 Setup phase

      duration:

      0.00047121383249759674
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002881856635212898
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00031147291883826256
      

      outcome:

      passed
      
    • Test 82
      params: objects=[[], {}, "End"], color_spec=["magenta", "--"], sep=" / ", expected_flatten="[] / {} / End", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          - (vide)
          - (vide)
          - End
        color_spec:
          - magenta
          - --
        sep:  / 
        expected_flatten: [] / {} / End
        expected_error: None
      id: objects2-color_spec2- / -[] / {} / End-None
      

      📌 Setup phase

      duration:

      0.0007305527105927467
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00035007670521736145
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00037685269489884377
      

      outcome:

      passed
      
    • Test 83
      params: objects="", [3, 4, "done", 0], color_spec=["green", ""], sep=";", expected_flatten="['', [3, 4]];done;0", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - (vide)
            -         - 3
              - 4
          - done
          - (vide)
        color_spec:
          - green
          - (vide)
        sep: ;
        expected_flatten: ['', [3, 4]];done;0
        expected_error: None
      id: objects3-color_spec3-;-['', [3, 4]];done;0-None
      

      📌 Setup phase

      duration:

      0.00047877803444862366
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022815819829702377
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024023698642849922
      

      outcome:

      passed
      
    • Test 84
      params: objects=[["alpha", null], ["beta", {}], "stop"], color_spec=["yellow", ""], sep="::", expected_flatten="['alpha', None]::['beta', {}]::stop", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - alpha
            - (vide)
          -       - beta
            - (vide)
          - stop
        color_spec:
          - yellow
          - (vide)
        sep: ::
        expected_flatten: ['alpha', None]::['beta', {}]::stop
        expected_error: None
      id: objects4-color_spec4-::-['alpha', None]::['beta', {}]::stop-None
      

      📌 Setup phase

      duration:

      0.0004741651937365532
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022536329925060272
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024617044255137444
      

      outcome:

      passed
      
    • Test 85
      params: objects="deep", ["deeper", ["deepest"], "X"], color_spec=["cyan", "+"], sep=" ... ", expected_flatten="['deep', ['deeper', ['deepest']]] ... X", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - deep
            -         - deeper
              -           - deepest
          - X
        color_spec:
          - cyan
          - +
        sep:  ... 
        expected_flatten: ['deep', ['deeper', ['deepest']]] ... X
        expected_error: None
      id: objects5-color_spec5- ... -['deep', ['deeper', ['deepest']]] ... X-None
      

      📌 Setup phase

      duration:

      0.0004771202802658081
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022383825853466988
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00027250684797763824
      

      outcome:

      passed
      
    • Test 86
      params: objects=[{"dict": {"nested": [4, 5]}}, [true, false], 6.28], color_spec=["white", "++"], sep=" // ", expected_flatten="{'dict': {'nested': [4, 5]}} // [True, False] // 6.28", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       dict:
              nested:
                - 4
                - 5
          -       - True
            - (vide)
          - 6.28
        color_spec:
          - white
          - ++
        sep:  // 
        expected_flatten: {'dict': {'nested': [4, 5]}} // [True, False] // 6.28
        expected_error: None
      id: objects6-color_spec6- // -{'dict': {'nested': [4, 5]}} // [True, False] // 6.28-None
      

      📌 Setup phase

      duration:

      0.0004541762173175812
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023688096553087234
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002490850165486336
      

      outcome:

      passed
      
    • Test 87
      params: objects="A", ["B", "string", "C"], color_spec=["red", "--"], sep="==", expected_flatten="['A', ['B']]==string==C", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - A
            -         - B
          - string
          - C
        color_spec:
          - red
          - --
        sep: ==
        expected_flatten: ['A', ['B']]==string==C
        expected_error: None
      id: objects7-color_spec7-==-['A', ['B']]==string==C-None
      

      📌 Setup phase

      duration:

      0.0004826202057301998
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022174092009663582
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025635911151766777
      

      outcome:

      passed
      
    • Test 88
      params: objects="Test", null, [, {"v": 0}], color_spec=["green", "++"], sep=" ++ ", expected_flatten="['Test', None, []] ++ {'v': 0}", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - Test
            - (vide)
            - (vide)
          -       v: 0
        color_spec:
          - green
          - ++
        sep:  ++ 
        expected_flatten: ['Test', None, []] ++ {'v': 0}
        expected_error: None
      id: objects8-color_spec8- ++ -['Test', None, []] ++ {'v': 0}-None
      

      📌 Setup phase

      duration:

      0.0004584901034832001
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021434994414448738
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023676175624132156
      

      outcome:

      passed
      
    • Test 89
      params: objects=[["no", "color"], "plain"], color_spec=null, sep=";", expected_flatten="['no', 'color'];plain", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - no
            - color
          - plain
        color_spec: None
        sep: ;
        expected_flatten: ['no', 'color'];plain
        expected_error: None
      id: objects9-None-;-['no', 'color'];plain-None
      

      📌 Setup phase

      duration:

      0.000459183007478714
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020506884902715683
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002413187175989151
      

      outcome:

      passed
      
    • Test 90
      params: objects=[["simple"], "", 12], color_spec=null, sep=" | ", expected_flatten="['simple'] | | 12", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       - simple
          - (vide)
          - 12
        color_spec: None
        sep:  | 
        expected_flatten: ['simple'] |  | 12
        expected_error: None
      id: objects10-None- | -['simple'] |  | 12-None
      

      📌 Setup phase

      duration:

      0.00048826541751623154
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002100556157529354
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002368120476603508
      

      outcome:

      passed
      
    • Test 91
      params: objects=["very", "deep", {"ok": true}], color_spec=null, sep=" : ", expected_flatten="'very', 'deep' : {'ok': True}", expected_error=null

      📌 Runtime Parameters

      params:
        objects:
          -       -         - very
              - deep
          -       ok: True
        color_spec: None
        sep:  : 
        expected_flatten: [['very', 'deep']] : {'ok': True}
        expected_error: None
      id: objects11-None- : -[['very', 'deep']] : {'ok': True}-None
      

      📌 Setup phase

      duration:

      0.00045897020027041435
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002356269396841526
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002499832771718502
      

      outcome:

      passed
      
    • Test 92
      params: objects=[["fail", "color"], 123], color_spec=["green", "!!"], sep="|", expected_flatten="['fail', 'color']|123", expected_error=""

      📌 Runtime Parameters

      params:
        objects:
          -       - fail
            - color
          - 123
        color_spec:
          - green
          - !!
        sep: |
        expected_flatten: ['fail', 'color']|123
        expected_error: <class 'ValueError'>
      id: objects12-color_spec12-|-['fail', 'color']|123-ValueError
      

      📌 Setup phase

      duration:

      0.00046646175906062126
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00025641778483986855
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025513628497719765
      

      outcome:

      passed
      
    • Test 93
      params: objects=[["error"], {}], color_spec=["cyan", "xxx"], sep=" * ", expected_flatten="['error'] * {}", expected_error=""

      📌 Runtime Parameters

      params:
        objects:
          -       - error
          - (vide)
        color_spec:
          - cyan
          - xxx
        sep:  * 
        expected_flatten: ['error'] * {}
        expected_error: <class 'ValueError'>
      id: objects13-color_spec13- * -['error'] * {}-ValueError
      

      📌 Setup phase

      duration:

      0.00045244721695780754
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023118499666452408
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002468489110469818
      

      outcome:

      passed
      
    • Test 94
      params: objects="nope"], ["bad", color_spec=["magenta", "invalid"], sep="//", expected_flatten="['nope']//['bad']", expected_error=""

      📌 Runtime Parameters

      params:
        objects:
          -       - nope
          -       - bad
        color_spec:
          - magenta
          - invalid
        sep: //
        expected_flatten: ['nope']//['bad']
        expected_error: <class 'ValueError'>
      id: objects14-color_spec14-//-['nope']//['bad']-ValueError
      

      📌 Setup phase

      duration:

      0.00046352995559573174
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022492604330182076
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023727724328637123
      

      outcome:

      passed
      
    • Test 95
      params: objects=["wrong", "base"], color_spec=["notacolor", ""], sep="--", expected_flatten="wrong--base", expected_error=""

      📌 Runtime Parameters

      params:
        objects:
          - wrong
          - base
        color_spec:
          - notacolor
          - (vide)
        sep: --
        expected_flatten: wrong--base
        expected_error: <class 'ValueError'>
      id: objects15-color_spec15----wrong--base-ValueError
      

      📌 Setup phase

      duration:

      0.0004719211719930172
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022422196343541145
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024436088278889656
      

      outcome:

      passed
      
  • 📄 test_utils_debug.py

    Function: test_traceable

    • Test 96
      params: cls="", entry=[[10, 20], {}], expected="creating: A(10, 20)"

      📌 Runtime Parameters

      params:
        cls: <class 'test_utils_debug.A'>
        entry:
          -       - 10
            - 20
          - (vide)
        expected: creating: A(10, 20)
      id: A-entry0-creating: A(10, 20)
      

      📌 Setup phase

      duration:

      0.00027899397537112236
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.001001620665192604
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024568894878029823
      

      outcome:

      passed
      
    • Test 97
      params: cls="", entry=[[10, 20], {"e": 100}], expected="creating: A(10, 20, e=100)"

      📌 Runtime Parameters

      params:
        cls: <class 'test_utils_debug.A'>
        entry:
          -       - 10
            - 20
          -       e: 100
        expected: creating: A(10, 20, e=100)
      id: A-entry1-creating: A(10, 20, e=100)
      

      📌 Setup phase

      duration:

      0.00047001102939248085
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0013512750156223774
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002639112062752247
      

      outcome:

      passed
      
    • Test 98
      params: cls="", entry="foo", [1, 2, 3, {"flag": true, "data": {"x": 9}}], expected="creating: A('foo', [1, 2, 3], flag=True, data={'x': 9})"

      📌 Runtime Parameters

      params:
        cls: <class 'test_utils_debug.A'>
        entry:
          -       - foo
            -         - 1
              - 2
              - 3
          -       flag: True
            data:
              x: 9
        expected: creating: A('foo', [1, 2, 3], flag=True, data={'x': 9})
      id: A-entry2-creating: A('foo', [1, 2, 3], flag=True, data={'x': 9})
      

      📌 Setup phase

      duration:

      0.0004023010842502117
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00109448516741395
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021167704835534096
      

      outcome:

      passed
      
    • Test 99
      params: cls="", entry="([CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], {'name': 'test', 'meta': 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'})", expected="creating: A(CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], name='test', meta='yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...)"

      📌 Runtime Parameters

      params:
        cls: <class 'test_utils_debug.A'>
        entry: ([CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], {'name': 'test', 'meta': 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'})
        expected: creating: A(CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], name='test', meta='yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...)
      id: A-entry3-creating: A(CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], name='test', meta='yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...)
      

      📌 Setup phase

      duration:

      0.00040045520290732384
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0010873680002987385
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002670781686902046
      

      outcome:

      passed
      
    • Test 100
      params: cls="", entry="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", [0, 0, 0, 0, 0, {}], expected="creating: A('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA..., [0, 0, 0, 0, 0])"

      📌 Runtime Parameters

      params:
        cls: <class 'test_utils_debug.A'>
        entry:
          -       - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
            -         - (vide)
              - (vide)
              - (vide)
              - (vide)
              - (vide)
          - (vide)
        expected: creating: A('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA..., [0, 0, 0, 0, 0])
      id: A-entry4-creating: A('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA..., [0, 0, 0, 0, 0])
      

      📌 Setup phase

      duration:

      0.0004104110412299633
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0011744918301701546
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024761492386460304
      

      outcome:

      passed
      

    Function: test_short_repr

    • Test 101
      params: value="abc", cutoff=10, expected="'abc'"

      📌 Runtime Parameters

      params:
        value: abc
        cutoff: 10
        expected: 'abc'
      id: abc-10-'abc'
      

      📌 Setup phase

      duration:

      0.00037125591188669205
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019113905727863312
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021598022431135178
      

      outcome:

      passed
      
    • Test 103
      params: value=12345, cutoff=10, expected="12345"

      📌 Runtime Parameters

      params:
        value: 12345
        cutoff: 10
        expected: 12345
      id: 12345-10-12345
      

      📌 Setup phase

      duration:

      0.0003345850855112076
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016644317656755447
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015585636720061302
      

      outcome:

      passed
      
    • Test 104
      params: value=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], cutoff=15, expected="[0, 0, 0, 0, 0,..."

      📌 Runtime Parameters

      params:
        value:
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
          - (vide)
        cutoff: 15
        expected: [0, 0, 0, 0, 0,...
      id: value3-15-[0, 0, 0, 0, 0,...
      

      📌 Setup phase

      duration:

      0.00027556484565138817
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015317462384700775
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015189172700047493
      

      outcome:

      passed
      
    • Test 105
      params: value=null, cutoff=10, expected="None"

      📌 Runtime Parameters

      params:
        value: None
        cutoff: 10
        expected: None
      id: None-10-None
      

      📌 Setup phase

      duration:

      0.0002810480073094368
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013953400775790215
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015227915719151497
      

      outcome:

      passed
      
  • 📄 test_utils_dictext.py

    Function: test_attrdict_getattr

    • Test 107
      params: data={"x": 1, "y": 2}, attr="x", expected=1

      📌 Runtime Parameters

      params:
        data:
          x: 1
          y: 2
        attr: x
        expected: 1
      id: data0-x-1
      

      📌 Setup phase

      duration:

      0.000303429551422596
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016302522271871567
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001701577566564083
      

      outcome:

      passed
      
    • Test 108
      params: data={"world": "ok"}, attr="world", expected="ok"

      📌 Runtime Parameters

      params:
        data:
          world: ok
        attr: world
        expected: ok
      id: data1-world-ok
      

      📌 Setup phase

      duration:

      0.00026044296100735664
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014464138075709343
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015354203060269356
      

      outcome:

      passed
      
    • Test 109
      params: data={"outer": {"inner": 42}}, attr="outer", expected={"inner": 42}

      📌 Runtime Parameters

      params:
        data:
          outer:
            inner: 42
        attr: outer
        expected:
          inner: 42
      id: data2-outer-expected2
      

      📌 Setup phase

      duration:

      0.00025429530069231987
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001453971490263939
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014718016609549522
      

      outcome:

      passed
      

    Function: test_attrdict_setattr

    • Test 110
      params: initial={}, attr="nouveau", value=123

      📌 Runtime Parameters

      params:
        initial:
      {}
        attr: nouveau
        value: 123
      id: initial0-nouveau-123
      

      📌 Setup phase

      duration:

      0.00025854120030999184
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001448323018848896
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014932313933968544
      

      outcome:

      passed
      
    • Test 111
      params: initial={"a": 1}, attr="b", value="valeur"

      📌 Runtime Parameters

      params:
        initial:
          a: 1
        attr: b
        value: valeur
      id: initial1-b-valeur
      

      📌 Setup phase

      duration:

      0.00026843464002013206
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013789767399430275
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015245890244841576
      

      outcome:

      passed
      

    Function: test_attrdict_delattr

    • Test 112
      params: initial={"a": 1, "b": 2}, to_del="a", expected_keys=["b"]

      📌 Runtime Parameters

      params:
        initial:
          a: 1
          b: 2
        to_del: a
        expected_keys:
          - b
      id: initial0-a-expected_keys0
      

      📌 Setup phase

      duration:

      0.0002734726294875145
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018700910732150078
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015326403081417084
      

      outcome:

      passed
      
    • Test 113
      params: initial={"k": "v"}, to_del="k", expected_keys=[]

      📌 Runtime Parameters

      params:
        initial:
          k: v
        to_del: k
        expected_keys:
      []
      id: initial1-k-expected_keys1
      

      📌 Setup phase

      duration:

      0.0002620876766741276
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016429321840405464
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015880493447184563
      

      outcome:

      passed
      

    Function: test_attrdict_dir

    • Test 114
      params: data={"alpha": 1, "beta": 2}, expected_keys="{'beta', 'alpha'}"

      📌 Runtime Parameters

      params:
        data:
          alpha: 1
          beta: 2
        expected_keys: {'beta', 'alpha'}
      id: data0-expected_keys0
      

      📌 Setup phase

      duration:

      0.00022180844098329544
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013870606198906898
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014476431533694267
      

      outcome:

      passed
      
    • Test 115
      params: data={}, expected_keys="set()"

      📌 Runtime Parameters

      params:
        data:
      {}
        expected_keys: set()
      id: data1-expected_keys1
      

      📌 Setup phase

      duration:

      0.00022194068878889084
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001685451716184616
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013891560956835747
      

      outcome:

      passed
      

    Function: test_attrdict_getattr_and_missing

    • Test 116
      params: data={"x": 1, "y": 2}, attr="x", expect_value=1, expect_error=null

      📌 Runtime Parameters

      params:
        data:
          x: 1
          y: 2
        attr: x
        expect_value: 1
        expect_error: None
      id: data0-x-1-None
      

      📌 Setup phase

      duration:

      0.0002996949478983879
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014876993373036385
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016942108049988747
      

      outcome:

      passed
      
    • Test 117
      params: data={"number": 42}, attr="missing", expect_value=null, expect_error="'MyDict' object has no attribute 'missing'"

      📌 Runtime Parameters

      params:
        data:
          number: 42
        attr: missing
        expect_value: None
        expect_error: 'MyDict' object has no attribute 'missing'
      id: data1-missing-None-'MyDict' object has no attribute 'missing'
      

      📌 Setup phase

      duration:

      0.00032094214111566544
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016603106632828712
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016764970496296883
      

      outcome:

      passed
      

    Function: test_dictupdatemixin_init_and_update

    • Test 118
      params: init_kwargs={"a": 1, "b": 2}, other=null, kwargs={}, expected={"a": 1, "b": 2}

      📌 Runtime Parameters

      params:
        init_kwargs:
          a: 1
          b: 2
        other: None
        kwargs:
      {}
        expected:
          a: 1
          b: 2
      id: init_kwargs0-None-kwargs0-expected0
      

      📌 Setup phase

      duration:

      0.0003227880224585533
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014606816694140434
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015955790877342224
      

      outcome:

      passed
      
    • Test 119
      params: init_kwargs={}, other={"x": 10, "y": 20}, kwargs={}, expected={"x": 10, "y": 20}

      📌 Runtime Parameters

      params:
        init_kwargs:
      {}
        other:
          x: 10
          y: 20
        kwargs:
      {}
        expected:
          x: 10
          y: 20
      id: init_kwargs1-other1-kwargs1-expected1
      

      📌 Setup phase

      duration:

      0.00029405904933810234
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016270997002720833
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018032314255833626
      

      outcome:

      passed
      
    • Test 120
      params: init_kwargs={"world": "ok"}, other={"number": 42}, kwargs={"num2": 100}, expected={"world": "ok", "number": 42, "num2": 100}

      📌 Runtime Parameters

      params:
        init_kwargs:
          world: ok
        other:
          number: 42
        kwargs:
          num2: 100
        expected:
          world: ok
          number: 42
          num2: 100
      id: init_kwargs2-other2-kwargs2-expected2
      

      📌 Setup phase

      duration:

      0.0003043888136744499
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014466792345046997
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016119470819830894
      

      outcome:

      passed
      
    • Test 121
      params: init_kwargs={}, other=null, kwargs={"alpha": "beta"}, expected={"alpha": "beta"}

      📌 Runtime Parameters

      params:
        init_kwargs:
      {}
        other: None
        kwargs:
          alpha: beta
        expected:
          alpha: beta
      id: init_kwargs3-None-kwargs3-expected3
      

      📌 Setup phase

      duration:

      0.0002998760901391506
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001444770023226738
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001616189256310463
      

      outcome:

      passed
      
    • Test 122
      params: init_kwargs={}, other={"key": "value"}, kwargs={"extra": 1}, expected={"key": "value", "extra": 1}

      📌 Runtime Parameters

      params:
        init_kwargs:
      {}
        other:
          key: value
        kwargs:
          extra: 1
        expected:
          key: value
          extra: 1
      id: init_kwargs4-other4-kwargs4-expected4
      

      📌 Setup phase

      duration:

      0.00030001066625118256
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013720476999878883
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016319798305630684
      

      outcome:

      passed
      
    • Test 123
      params: init_kwargs={}, other="key", "value"], ["list", [5, 6], kwargs={"extra": {"subkey": 123}}, expected={"key": "value", "list": [5, 6], "extra": {"subkey": 123}}

      📌 Runtime Parameters

      params:
        init_kwargs:
      {}
        other:
          -       - key
            - value
          -       - list
            -         - 5
              - 6
        kwargs:
          extra:
            subkey: 123
        expected:
          key: value
          list:
            - 5
            - 6
          extra:
            subkey: 123
      id: init_kwargs5-other5-kwargs5-expected5
      

      📌 Setup phase

      duration:

      0.00030312035232782364
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00027111172676086426
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018677301704883575
      

      outcome:

      passed
      
  • 📄 test_utils_dotdir.py

    Function: test_dotdir_creation_and_base_exists

    • Test 124

      📌 Setup phase

      duration:

      0.001379004679620266
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002570659853518009
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002131960354745388
      

      outcome:

      passed
      

    Function: test_dotdir_repr_returns_path_str

    • Test 125

      📌 Setup phase

      duration:

      0.0006156489253044128
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002345801331102848
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020213983952999115
      

      outcome:

      passed
      

    Function: test_dotdir_call

    • Test 126

      📌 Setup phase

      duration:

      0.0006125583313405514
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023576710373163223
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021656928583979607
      

      outcome:

      passed
      
  • 📄 test_utils_eval.py

    Function: test_arithmetic_eval_valid

    • Test 127
      params: expr="1 + 2", expected=3

      📌 Runtime Parameters

      params:
        expr: 1 + 2
        expected: 3
      id: 1 + 2-3
      

      📌 Setup phase

      duration:

      0.00024379976093769073
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002128290943801403
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001487978734076023
      

      outcome:

      passed
      
    • Test 128
      params: expr="4 - 2", expected=2

      📌 Runtime Parameters

      params:
        expr: 4 - 2
        expected: 2
      id: 4 - 2-2
      

      📌 Setup phase

      duration:

      0.00023543322458863258
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016983598470687866
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001389048993587494
      

      outcome:

      passed
      
    • Test 129
      params: expr="3 * 5", expected=15

      📌 Runtime Parameters

      params:
        expr: 3 * 5
        expected: 15
      id: 3 * 5-15
      

      📌 Setup phase

      duration:

      0.00022573396563529968
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016251206398010254
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014605186879634857
      

      outcome:

      passed
      
    • Test 130
      params: expr="10 / 2", expected=5.0

      📌 Runtime Parameters

      params:
        expr: 10 / 2
        expected: 5.0
      id: 10 / 2-5.0
      

      📌 Setup phase

      duration:

      0.00023606466129422188
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015123141929507256
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013370905071496964
      

      outcome:

      passed
      
    • Test 131
      params: expr="10 % 3", expected=1

      📌 Runtime Parameters

      params:
        expr: 10 % 3
        expected: 1
      id: 10 % 3-1
      

      📌 Setup phase

      duration:

      0.00022848881781101227
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015585403889417648
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013755401596426964
      

      outcome:

      passed
      
    • Test 132
      params: expr="-5", expected=-5

      📌 Runtime Parameters

      params:
        expr: -5
        expected: -5
      id: -5--5
      

      📌 Setup phase

      duration:

      0.00021084491163492203
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015402073040604591
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015789363533258438
      

      outcome:

      passed
      
    • Test 133
      params: expr="+7", expected=7

      📌 Runtime Parameters

      params:
        expr: +7
        expected: 7
      id: +7-7
      

      📌 Setup phase

      duration:

      0.0002188580110669136
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015003187581896782
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013921083882451057
      

      outcome:

      passed
      
    • Test 134
      params: expr="1 + 2 * 3", expected=7

      📌 Runtime Parameters

      params:
        expr: 1 + 2 * 3
        expected: 7
      id: 1 + 2 * 3-7
      

      📌 Setup phase

      duration:

      0.0002186112105846405
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016173208132386208
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013590510934591293
      

      outcome:

      passed
      
    • Test 135
      params: expr="(1 + 2) * 3", expected=9

      📌 Runtime Parameters

      params:
        expr: (1 + 2) * 3
        expected: 9
      id: (1 + 2) * 3-9
      

      📌 Setup phase

      duration:

      0.00021162908524274826
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018133874982595444
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001395619474351406
      

      outcome:

      passed
      
    • Test 136
      params: expr="-(-3)", expected=3

      📌 Runtime Parameters

      params:
        expr: -(-3)
        expected: 3
      id: -(-3)-3
      

      📌 Setup phase

      duration:

      0.00021603424102067947
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016346899792551994
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013718008995056152
      

      outcome:

      passed
      
    • Test 137
      params: expr="-2 + 4 * 2", expected=6

      📌 Runtime Parameters

      params:
        expr: -2 + 4 * 2
        expected: 6
      id: -2 + 4 * 2-6
      

      📌 Setup phase

      duration:

      0.0002210480161011219
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000157930888235569
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014661718159914017
      

      outcome:

      passed
      
    • Test 138
      params: expr="(4 + 5) * (6 - 1)", expected=45

      📌 Runtime Parameters

      params:
        expr: (4 + 5) * (6 - 1)
        expected: 45
      id: (4 + 5) * (6 - 1)-45
      

      📌 Setup phase

      duration:

      0.0002369270659983158
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001688757911324501
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014095939695835114
      

      outcome:

      passed
      
    • Test 139
      params: expr="(((3)))", expected=3

      📌 Runtime Parameters

      params:
        expr: (((3)))
        expected: 3
      id: (((3)))-3
      

      📌 Setup phase

      duration:

      0.00024097086861729622
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015269173309206963
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013389112427830696
      

      outcome:

      passed
      
    • Test 140
      params: expr="-(-(-2))", expected=-2

      📌 Runtime Parameters

      params:
        expr: -(-(-2))
        expected: -2
      id: -(-(-2))--2
      

      📌 Setup phase

      duration:

      0.00021782703697681427
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016482220962643623
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014508608728647232
      

      outcome:

      passed
      
    • Test 141
      params: expr="3 + +4", expected=7

      📌 Runtime Parameters

      params:
        expr: 3 + +4
        expected: 7
      id: 3 + +4-7
      

      📌 Setup phase

      duration:

      0.00021656323224306107
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015813298523426056
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016417913138866425
      

      outcome:

      passed
      
    • Test 142
      params: expr="3 + -4", expected=-1

      📌 Runtime Parameters

      params:
        expr: 3 + -4
        expected: -1
      id: 3 + -4--1
      

      📌 Setup phase

      duration:

      0.00022121611982584
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015929387882351875
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013511674478650093
      

      outcome:

      passed
      
    • Test 143
      params: expr="True + 1", expected=2

      📌 Runtime Parameters

      params:
        expr: True + 1
        expected: 2
      id: True + 1-2
      

      📌 Setup phase

      duration:

      0.00021519837900996208
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015270384028553963
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001357640139758587
      

      outcome:

      passed
      
    • Test 144
      params: expr="'string'", expected="string"

      📌 Runtime Parameters

      params:
        expr: 'string'
        expected: string
      id: 'string'-string
      

      📌 Setup phase

      duration:

      0.000218966044485569
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015012593939900398
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014451192691922188
      

      outcome:

      passed
      
    • Test 145
      params: expr="1e1000 * 1e1000", expected=Infinity

      📌 Runtime Parameters

      params:
        expr: 1e1000 * 1e1000
        expected: inf
      id: 1e1000 * 1e1000-inf
      

      📌 Setup phase

      duration:

      0.00021707499399781227
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001653488725423813
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014227908104658127
      

      outcome:

      passed
      
    • Test 146
      params: expr="'a' + 'b'", expected="ab"

      📌 Runtime Parameters

      params:
        expr: 'a' + 'b'
        expected: ab
      id: 'a' + 'b'-ab
      

      📌 Setup phase

      duration:

      0.00021664798259735107
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015145214274525642
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001307041384279728
      

      outcome:

      passed
      

    Function: test_arithmetic_eval_raises_with_message

    • Test 147
      params: expr="2 ** 3", expected_message="Unsupported BinOp Pow"

      📌 Runtime Parameters

      params:
        expr: 2 ** 3
        expected_message: Unsupported BinOp Pow
      id: 2 ** 3-Unsupported BinOp Pow
      

      📌 Setup phase

      duration:

      0.00021698372438549995
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003832569345831871
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001384187489748001
      

      outcome:

      passed
      
    • Test 148
      params: expr="3 << 1", expected_message="Unsupported BinOp LShift"

      📌 Runtime Parameters

      params:
        expr: 3 << 1
        expected_message: Unsupported BinOp LShift
      id: 3 << 1-Unsupported BinOp LShift
      

      📌 Setup phase

      duration:

      0.0008424287661910057
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00038080476224422455
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014475500211119652
      

      outcome:

      passed
      
    • Test 149
      params: expr="1 < 2", expected_message="Unsupported node type Compare"

      📌 Runtime Parameters

      params:
        expr: 1 < 2
        expected_message: Unsupported node type Compare
      id: 1 < 2-Unsupported node type Compare
      

      📌 Setup phase

      duration:

      0.0002308068796992302
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00036975322291254997
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014263158664107323
      

      outcome:

      passed
      
    • Test 150
      params: expr="abs(3)", expected_message="Unsupported node type Call"

      📌 Runtime Parameters

      params:
        expr: abs(3)
        expected_message: Unsupported node type Call
      id: abs(3)-Unsupported node type Call
      

      📌 Setup phase

      duration:

      0.00021622423082590103
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00034064101055264473
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014790333807468414
      

      outcome:

      passed
      
    • Test 151
      params: expr="a + 2", expected_message="Unsupported node type Name"

      📌 Runtime Parameters

      params:
        expr: a + 2
        expected_message: Unsupported node type Name
      id: a + 2-Unsupported node type Name
      

      📌 Setup phase

      duration:

      0.00023507000878453255
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003333641216158867
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014948099851608276
      

      outcome:

      passed
      
    • Test 152
      params: expr="string", expected_message="Unsupported node type Name"

      📌 Runtime Parameters

      params:
        expr: string
        expected_message: Unsupported node type Name
      id: string-Unsupported node type Name
      

      📌 Setup phase

      duration:

      0.00022721430286765099
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001807836815714836
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015455298125743866
      

      outcome:

      passed
      
    • Test 153
      params: expr="[1, 2] + [3]", expected_message="Unsupported node type List"

      📌 Runtime Parameters

      params:
        expr: [1, 2] + [3]
        expected_message: Unsupported node type List
      id: [1, 2] + [3]-Unsupported node type List
      

      📌 Setup phase

      duration:

      0.00022792303934693336
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00034947600215673447
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014188792556524277
      

      outcome:

      passed
      
    • Test 154
      params: expr="{1: 2}", expected_message="Unsupported node type Dict"

      📌 Runtime Parameters

      params:
        expr: {1: 2}
        expected_message: Unsupported node type Dict
      id: {1: 2}-Unsupported node type Dict
      

      📌 Setup phase

      duration:

      0.00022308062762022018
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003456198610365391
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015096506103873253
      

      outcome:

      passed
      

    Function: test_arithmetic_eval_runtime_errors

    • Test 155
      params: expr="1 / 0", exception=""

      📌 Runtime Parameters

      params:
        expr: 1 / 0
        exception: <class 'ZeroDivisionError'>
      id: 1 / 0-ZeroDivisionError
      

      📌 Setup phase

      duration:

      0.000238051638007164
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017296010628342628
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014876527711749077
      

      outcome:

      passed
      
    • Test 156
      params: expr="10 % 0", exception=""

      📌 Runtime Parameters

      params:
        expr: 10 % 0
        exception: <class 'ZeroDivisionError'>
      id: 10 % 0-ZeroDivisionError
      

      📌 Setup phase

      duration:

      0.00022848183289170265
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001736171543598175
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013626599684357643
      

      outcome:

      passed
      

    Function: test_forgiving_eval

    • Test 157
      params: expr="1 + 2", expected=3

      📌 Runtime Parameters

      params:
        expr: 1 + 2
        expected: 3
      id: 1 + 2-3
      

      📌 Setup phase

      duration:

      0.00021560164168477058
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001573539339005947
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015624472871422768
      

      outcome:

      passed
      
    • Test 158
      params: expr="bad + 2", expected="bad + 2"

      📌 Runtime Parameters

      params:
        expr: bad + 2
        expected: bad + 2
      id: bad + 2-bad + 2
      

      📌 Setup phase

      duration:

      0.00022032205015420914
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015552807599306107
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013450020924210548
      

      outcome:

      passed
      
    • Test 159
      params: expr="1 / 0", expected="1 / 0"

      📌 Runtime Parameters

      params:
        expr: 1 / 0
        expected: 1 / 0
      id: 1 / 0-1 / 0
      

      📌 Setup phase

      duration:

      0.00022014789283275604
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015498697757720947
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013757823035120964
      

      outcome:

      passed
      
    • Test 160
      params: expr="2 ** 10", expected="2 ** 10"

      📌 Runtime Parameters

      params:
        expr: 2 ** 10
        expected: 2 ** 10
      id: 2 ** 10-2 ** 10
      

      📌 Setup phase

      duration:

      0.0002153380773961544
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001629372127354145
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014004111289978027
      

      outcome:

      passed
      

    Function: test_defaulting_eval

    • Test 161
      params: expr="3 * 4", default=0, expected=12

      📌 Runtime Parameters

      params:
        expr: 3 * 4
        default: 0
        expected: 12
      id: 3 * 4-0-12
      

      📌 Setup phase

      duration:

      0.00026063714176416397
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015628477558493614
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001548747532069683
      

      outcome:

      passed
      
    • Test 162
      params: expr="invalid + 1", default=99, expected=99

      📌 Runtime Parameters

      params:
        expr: invalid + 1
        default: 99
        expected: 99
      id: invalid + 1-99-99
      

      📌 Setup phase

      duration:

      0.000273347832262516
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016168784350156784
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017379410564899445
      

      outcome:

      passed
      
    • Test 163
      params: expr="1 / 0", default=-1, expected=-1

      📌 Runtime Parameters

      params:
        expr: 1 / 0
        default: -1
        expected: -1
      id: 1 / 0--1--1
      

      📌 Setup phase

      duration:

      0.0002759532071650028
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015364587306976318
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015542982146143913
      

      outcome:

      passed
      
    • Test 164
      params: expr="2 ** 10", default=42, expected=42

      📌 Runtime Parameters

      params:
        expr: 2 ** 10
        default: 42
        expected: 42
      id: 2 ** 10-42-42
      

      📌 Setup phase

      duration:

      0.00026292819529771805
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016246503219008446
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016802409663796425
      

      outcome:

      passed
      
  • 📄 test_utils_exceptions.py

    Function: test_chained_exception_various

    • Test 165
      params: func="", expected_output="High-level task failed\ncaused by KeyError: 'missing'"

      📌 Runtime Parameters

      params:
        func: <function cause_key_error at 0x7f84def074c0>
        expected_output: High-level task failed
      caused by KeyError: 'missing'
      id: cause_key_error-High-level task failed\ncaused by KeyError: 'missing'
      

      📌 Setup phase

      duration:

      0.00023004226386547089
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015695486217737198
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014190375804901123
      

      outcome:

      passed
      
    • Test 166
      params: func="", expected_output="High-level task failed\ncaused by IndexError: list index out of range"

      📌 Runtime Parameters

      params:
        func: <function cause_index_error at 0x7f84def075e0>
        expected_output: High-level task failed
      caused by IndexError: list index out of range
      id: cause_index_error-High-level task failed\ncaused by IndexError: list index out of range
      

      📌 Setup phase

      duration:

      0.00023080222308635712
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016539078205823898
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013886764645576477
      

      outcome:

      passed
      
    • Test 167
      params: func="", expected_output="High-level task failed\ncaused by ZeroDivisionError: division by zero"

      📌 Runtime Parameters

      params:
        func: <function cause_zero_division at 0x7f84def07670>
        expected_output: High-level task failed
      caused by ZeroDivisionError: division by zero
      id: cause_zero_division-High-level task failed\ncaused by ZeroDivisionError: division by zero
      

      📌 Setup phase

      duration:

      0.00021979305893182755
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014559505507349968
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013954099267721176
      

      outcome:

      passed
      
    • Test 168
      params: func="", expected_output="High-level task failed\ncaused by ValueError: invalid literal for int() with base 10: 'not_a_number'"

      📌 Runtime Parameters

      params:
        func: <function cause_value_error at 0x7f84def07700>
        expected_output: High-level task failed
      caused by ValueError: invalid literal for int() with base 10: 'not_a_number'
      id: cause_value_error-High-level task failed\ncaused by ValueError: invalid literal for int() with base 10: 'not_a_number'
      

      📌 Setup phase

      duration:

      0.0002287612296640873
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015414506196975708
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001372210681438446
      

      outcome:

      passed
      
    • Test 169
      params: func="", expected_output="High-level task failed\ncaused by TypeError: can only concatenate str (not \"int\") to str"

      📌 Runtime Parameters

      params:
        func: <function cause_type_error at 0x7f84def07790>
        expected_output: High-level task failed
      caused by TypeError: can only concatenate str (not "int") to str
      id: cause_type_error-High-level task failed\ncaused by TypeError: can only concatenate str (not "int") to str
      

      📌 Setup phase

      duration:

      0.00022125616669654846
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014632195234298706
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015112385153770447
      

      outcome:

      passed
      

    Function: test_printed_exception

    • Test 170
      params: func="", expected_output="KeyError: 'missing'"

      📌 Runtime Parameters

      params:
        func: <function cause_key_error at 0x7f84def074c0>
        expected_output: KeyError: 'missing'
      id: cause_key_error-KeyError: 'missing'
      

      📌 Setup phase

      duration:

      0.0007014689035713673
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.003857575822621584
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00044149812310934067
      

      outcome:

      passed
      
    • Test 171
      params: func="", expected_output="IndexError: list index out of range"

      📌 Runtime Parameters

      params:
        func: <function cause_index_error at 0x7f84def075e0>
        expected_output: IndexError: list index out of range
      id: cause_index_error-IndexError: list index out of range
      

      📌 Setup phase

      duration:

      0.0005762227810919285
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.003507239744067192
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00043295277282595634
      

      outcome:

      passed
      
    • Test 172
      params: func="", expected_output="ZeroDivisionError: division by zero"

      📌 Runtime Parameters

      params:
        func: <function cause_zero_division at 0x7f84def07670>
        expected_output: ZeroDivisionError: division by zero
      id: cause_zero_division-ZeroDivisionError: division by zero
      

      📌 Setup phase

      duration:

      0.0005448553711175919
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0036600609309971333
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0004637269303202629
      

      outcome:

      passed
      
    • Test 173
      params: func="", expected_output="ValueError: invalid literal for int() with base 10: 'not_a_number'"

      📌 Runtime Parameters

      params:
        func: <function cause_value_error at 0x7f84def07700>
        expected_output: ValueError: invalid literal for int() with base 10: 'not_a_number'
      id: cause_value_error-ValueError: invalid literal for int() with base 10: 'not_a_number'
      

      📌 Setup phase

      duration:

      0.0005749361589550972
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00154503108933568
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000430090818554163
      

      outcome:

      passed
      
    • Test 174
      params: func="", expected_output="TypeError: can only concatenate str (not \"int\") to str"

      📌 Runtime Parameters

      params:
        func: <function cause_type_error at 0x7f84def07790>
        expected_output: TypeError: can only concatenate str (not "int") to str
      id: cause_type_error-TypeError: can only concatenate str (not "int") to str
      

      📌 Setup phase

      duration:

      0.00056488998234272
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0031881961040198803
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00045113498345017433
      

      outcome:

      passed
      
  • 📄 test_utils_get_adj.py

    Function: test_get_adj_success

    • Test 175

      📌 Setup phase

      duration:

      0.00013611791655421257
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006563900969922543
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014752428978681564
      

      outcome:

      passed
      

    Function: test_get_adj_not_found

    • Test 176

      📌 Setup phase

      duration:

      0.0004803570918738842
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009479583241045475
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0003727078437805176
      

      outcome:

      passed
      

    Function: test_ensure_adjs_mixed

    • Test 177

      📌 Setup phase

      duration:

      0.00012313108891248703
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007501472719013691
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011381600052118301
      

      outcome:

      passed
      

    Function: test_get_adjs_filter

    • Test 178

      📌 Setup phase

      duration:

      0.00010902388021349907
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008713221177458763
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011568097397685051
      

      outcome:

      passed
      
  • 📄 test_utils_hastyepics.py

    Function: test_motor_invalid_name_raises

    • Test 181

      📌 Setup phase

      duration:

      0.00013087783008813858
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00026352284476161003
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012301700189709663
      

      outcome:

      passed
      

    Function: test_motor_init_list_has_no_disabled

    • Test 182

      📌 Setup phase

      duration:

      0.00012274831533432007
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001370767131447792
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.829085320234299e-05
      

      outcome:

      passed
      

    Function: test_motor_pv_connection_skipped_by_default

    • Test 184

      📌 Setup phase

      duration:

      0.0001245737075805664
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003711576573550701
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011015404015779495
      

      outcome:

      passed
      

    Function: test_motor_adds_all_extras_pvs

    • Test 185

      📌 Setup phase

      duration:

      0.00011294987052679062
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033706333488225937
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010372558608651161
      

      outcome:

      passed
      

    Function: test_motor_PV_method_exists_and_works

    • Test 186

      📌 Setup phase

      duration:

      0.00011149980127811432
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00036018621176481247
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011605583131313324
      

      outcome:

      passed
      
  • 📄 test_utils_jsonext.py

    Function: test_json_validate_save_load

    • Test 188
      params: input_obj="[1 2 3]", expected=[1, 2, 3]

      📌 Runtime Parameters

      params:
        input_obj: [1 2 3]
        expected:
          - 1
          - 2
          - 3
      id: input_obj0-expected0
      

      📌 Setup phase

      duration:

      0.0008713491261005402
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006310739554464817
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002048569731414318
      

      outcome:

      passed
      
    • Test 189
      params: input_obj="42", expected=42

      📌 Runtime Parameters

      params:
        input_obj: 42
        expected: 42
      id: input_obj1-42
      

      📌 Setup phase

      duration:

      0.0006642192602157593
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00044890493154525757
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017934665083885193
      

      outcome:

      passed
      
    • Test 190
      params: input_obj="(1-1j)", expected={"real": 1.0, "imag": -1.0}

      📌 Runtime Parameters

      params:
        input_obj: (1-1j)
        expected:
          real: 1.0
          imag: -1.0
      id: (1-1j)-expected2
      

      📌 Setup phase

      duration:

      0.0006055878475308418
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004319618456065655
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000173316802829504
      

      outcome:

      passed
      
    • Test 191
      params: input_obj="/tmp/file.txt", expected="/tmp/file.txt"

      📌 Runtime Parameters

      params:
        input_obj: /tmp/file.txt
        expected: /tmp/file.txt
      id: input_obj3-/tmp/file.txt
      

      📌 Setup phase

      duration:

      0.0005835690535604954
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00037277769297361374
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001721242442727089
      

      outcome:

      passed
      
    • Test 192
      params: input_obj="{1, 2, 3}", expected=[1, 2, 3]

      📌 Runtime Parameters

      params:
        input_obj: {1, 2, 3}
        expected:
          - 1
          - 2
          - 3
      id: input_obj4-expected4
      

      📌 Setup phase

      duration:

      0.0006102439947426319
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003546839579939842
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018073711544275284
      

      outcome:

      passed
      
    • Test 193
      params: input_obj="{'a': array([10, 20])}", expected={"a": [10, 20]}

      📌 Runtime Parameters

      params:
        input_obj: {'a': array([10, 20])}
        expected:
          a:
            - 10
            - 20
      id: input_obj5-expected5
      

      📌 Setup phase

      duration:

      0.0006158719770610332
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00037103286013007164
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018455181270837784
      

      outcome:

      passed
      
    • Test 194
      params: input_obj="{'c': (2+3j)}", expected={"c": {"real": 2.0, "imag": 3.0}}

      📌 Runtime Parameters

      params:
        input_obj: {'c': (2+3j)}
        expected:
          c:
            real: 2.0
            imag: 3.0
      id: input_obj6-expected6
      

      📌 Setup phase

      duration:

      0.0006182440556585789
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004108818247914314
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017429282888770103
      

      outcome:

      passed
      
    • Test 195
      params: input_obj="{'nested': {'arr': array(10, 20],\n [30, 40), 'complex_num': (-1+5j), 'files': [PosixPath('/file1'), PosixPath('/file2')], 'set_values': {200, 100}, 'inner': {'num': 7}}}", expected={"nested": {"arr": 10, 20], [30, 40, "complex_num": {"real": -1.0, "imag": 5.0}, "files": ["/file1", "/file2"], "set_values": [100, 200], "inner": {"num": 7}}}

      📌 Runtime Parameters

      params:
        input_obj: {'nested': {'arr': array([[10, 20],
             [30, 40]]), 'complex_num': (-1+5j), 'files': [PosixPath('/file1'), PosixPath('/file2')], 'set_values': {200, 100}, 'inner': {'num': 7}}}
        expected:
          nested:
            arr:
              -           - 10
                - 20
              -           - 30
                - 40
            complex_num:
              real: -1.0
              imag: 5.0
            files:
              - /file1
              - /file2
            set_values:
              - 100
              - 200
            inner:
              num: 7
      id: input_obj7-expected7
      

      📌 Setup phase

      duration:

      0.0005905819125473499
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000573950819671154
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001924922689795494
      

      outcome:

      passed
      
  • 📄 test_utils_lazypv.py

    Function: test_getattr

    • Test 196

      📌 Setup phase

      duration:

      0.000157039612531662
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003121909685432911
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011811079457402229
      

      outcome:

      passed
      
  • 📄 test_utils_logcfg.py

    Function: test_custom_log_outputs

    • Test 197
      params: levelname="LONG", logfunc=" at 0x7f84de69d040>", message="This is a LONG message"

      📌 Runtime Parameters

      params:
        levelname: LONG
        logfunc: <function <lambda> at 0x7f84de69d040>
        message: This is a LONG message
      id: LONG-<lambda>-This is a LONG message
      

      📌 Setup phase

      duration:

      0.0015015890821814537
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007366281934082508
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002392427995800972
      

      outcome:

      passed
      
    • Test 198
      params: levelname="ENLARGE", logfunc=" at 0x7f84de69d0d0>", message="Please ENLARGE this!"

      📌 Runtime Parameters

      params:
        levelname: ENLARGE
        logfunc: <function <lambda> at 0x7f84de69d0d0>
        message: Please ENLARGE this!
      id: ENLARGE-<lambda>-Please ENLARGE this!
      

      📌 Setup phase

      duration:

      0.00038044434040784836
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004104119725525379
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021513225510716438
      

      outcome:

      passed
      
  • 📄 test_utils_logign.py

    Function: test_ignore_log_msg_behavior

    • Test 200
      params: levelname="WARNING", msg_to_ignore="This should be ignored", msg_to_keep="This should appear"

      📌 Runtime Parameters

      params:
        levelname: WARNING
        msg_to_ignore: This should be ignored
        msg_to_keep: This should appear
      id: WARNING-This should be ignored-This should appear
      

      📌 Setup phase

      duration:

      0.0006002169102430344
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008375439792871475
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002688714303076267
      

      outcome:

      passed
      
    • Test 201
      params: levelname="ENLARGE", msg_to_ignore="ENLARGE this", msg_to_keep="Keep this ENLARGE"

      📌 Runtime Parameters

      params:
        levelname: ENLARGE
        msg_to_ignore: ENLARGE this
        msg_to_keep: Keep this ENLARGE
      id: ENLARGE-ENLARGE this-Keep this ENLARGE
      

      📌 Setup phase

      duration:

      0.0004536230117082596
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005263257771730423
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002784379757940769
      

      outcome:

      passed
      

    Function: test_ignore_only_by_level

    • Test 202

      📌 Setup phase

      duration:

      0.00027430104091763496
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00044867582619190216
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020327139645814896
      

      outcome:

      passed
      

    Function: test_ignore_only_by_msg

    • Test 203

      📌 Setup phase

      duration:

      0.0002997592091560364
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00043187476694583893
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017760833725333214
      

      outcome:

      passed
      

    Function: test_filter_removed_after_context

    • Test 204

      📌 Setup phase

      duration:

      0.0002804631367325783
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000601855106651783
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021639373153448105
      

      outcome:

      passed
      
  • 📄 test_utils_metaclasses.py

    Function: test_combine_classes_combines_methods

    • Test 205

      📌 Setup phase

      duration:

      0.00015735207125544548
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002161026932299137
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012733088806271553
      

      outcome:

      passed
      

    Function: test_registryabc_combines_registrymeta_and_abcmeta

    • Test 206

      📌 Setup phase

      duration:

      0.00018382538110017776
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.005099872127175331
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017641671001911163
      

      outcome:

      passed
      
  • 📄 test_utils_npy.py

    Function: test_nice_arange

    • Test 207
      params: start=0, stop=5, step=1, expected="[0. 1. 2. 3. 4. 5.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 1
        expected: [0. 1. 2. 3. 4. 5.]
      id: 0-5-1-expected0
      

      📌 Setup phase

      duration:

      0.000384465791285038
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.018689526710659266
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024547288194298744
      

      outcome:

      passed
      
    • Test 209
      params: start=1, stop=2, step=0.3, expected="[1. 1.33333333 1.66666667 2. ]"

      📌 Runtime Parameters

      params:
        start: 1
        stop: 2
        step: 0.3
        expected: [1.         1.33333333 1.66666667 2.        ]
      id: 1-2-0.3-expected2
      

      📌 Setup phase

      duration:

      0.00037752790376544
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00040724407881498337
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019500264897942543
      

      outcome:

      passed
      

    Function: test_nice_linspace

    • Test 212
      params: start=0, stop=10, num=4, expected="[ 0. 2.5 5. 7.5 10. ]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 10
        num: 4
        expected: [ 0.   2.5  5.   7.5 10. ]
      id: 0-10-4-expected0
      

      📌 Setup phase

      duration:

      0.00038688769564032555
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000421356875449419
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022038165479898453
      

      outcome:

      passed
      
    • Test 213
      params: start=5, stop=15, num=2, expected="[ 5. 10. 15.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 15
        num: 2
        expected: [ 5. 10. 15.]
      id: 5-15-2-expected1
      

      📌 Setup phase

      duration:

      0.0003624279052019119
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00034306617453694344
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019407318904995918
      

      outcome:

      passed
      
    • Test 214
      params: start=-5, stop=5, num=4, expected="[-5. -2.5 0. 2.5 5. ]"

      📌 Runtime Parameters

      params:
        start: -5
        stop: 5
        num: 4
        expected: [-5.  -2.5  0.   2.5  5. ]
      id: -5-5-4-expected2
      

      📌 Setup phase

      duration:

      0.0003333520144224167
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033736927434802055
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002048742026090622
      

      outcome:

      passed
      
    • Test 215
      params: start=0, stop=1, num=3, expected="[0. 0.33333333 0.66666667 1. ]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 1
        num: 3
        expected: [0.         0.33333333 0.66666667 1.        ]
      id: 0-1-3-expected3
      

      📌 Setup phase

      duration:

      0.0003344891592860222
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00034663500264286995
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001820279285311699
      

      outcome:

      passed
      
    • Test 216
      params: start=2, stop=2, num=3, expected="[2. 2. 2. 2.]"

      📌 Runtime Parameters

      params:
        start: 2
        stop: 2
        num: 3
        expected: [2. 2. 2. 2.]
      id: 2-2-3-expected4
      

      📌 Setup phase

      duration:

      0.0003391471691429615
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003366246819496155
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021903309971094131
      

      outcome:

      passed
      
    • Test 217
      params: start=3, stop=0, num=3, expected="[3. 2. 1. 0.]"

      📌 Runtime Parameters

      params:
        start: 3
        stop: 0
        num: 3
        expected: [3. 2. 1. 0.]
      id: 3-0-3-expected5
      

      📌 Setup phase

      duration:

      0.0003326861187815666
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033251894637942314
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018097180873155594
      

      outcome:

      passed
      
    • Test 218
      params: start=0, stop=1, num=0, expected="[0.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 1
        num: 0
        expected: [0.]
      id: 0-1-0-expected6
      

      📌 Setup phase

      duration:

      0.0003460049629211426
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003592120483517647
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001939302310347557
      

      outcome:

      passed
      

    Function: test_nice_steps_centered

    • Test 219
      params: start=-2, stop=2, step=2, endpoint=true, expected="[-2. 0. 2.]"

      📌 Runtime Parameters

      params:
        start: -2
        stop: 2
        step: 2
        endpoint: True
        expected: [-2.  0.  2.]
      id: -2-2-2-True-expected0
      

      📌 Setup phase

      duration:

      0.0004464099183678627
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003858320415019989
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019787810742855072
      

      outcome:

      passed
      
    • Test 220
      params: start=0, stop=5, step=2, endpoint=true, expected="[0. 2. 4.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: True
        expected: [0. 2. 4.]
      id: 0-5-2-True-expected1
      

      📌 Setup phase

      duration:

      0.0004016500897705555
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003292798064649105
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021683890372514725
      

      outcome:

      passed
      
    • Test 221
      params: start=0, stop=5, step=2, endpoint=false, expected="[0. 2.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: False
        expected: [0. 2.]
      id: 0-5-2-False-expected2
      

      📌 Setup phase

      duration:

      0.0003794482909142971
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033594900742173195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019875913858413696
      

      outcome:

      passed
      
    • Test 222
      params: start=-1, stop=2, step=1.5, endpoint=true, expected="[-1.5 0. 1.5]"

      📌 Runtime Parameters

      params:
        start: -1
        stop: 2
        step: 1.5
        endpoint: True
        expected: [-1.5  0.   1.5]
      id: -1-2-1.5-True-expected3
      

      📌 Setup phase

      duration:

      0.0003690030425786972
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003249668516218662
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002017579972743988
      

      outcome:

      passed
      

    Function: test_nice_steps_left_aligned

    • Test 225
      params: start=-1, stop=2, step=1.5, endpoint=true, expected="[-1. 0.5 2. ]"

      📌 Runtime Parameters

      params:
        start: -1
        stop: 2
        step: 1.5
        endpoint: True
        expected: [-1.   0.5  2. ]
      id: -1-2-1.5-True-expected2
      

      📌 Setup phase

      duration:

      0.00037669017910957336
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00035508396103978157
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019505294039845467
      

      outcome:

      passed
      
    • Test 226
      params: start=-1, stop=2, step=1.5, endpoint=false, expected="[-1. 0.5]"

      📌 Runtime Parameters

      params:
        start: -1
        stop: 2
        step: 1.5
        endpoint: False
        expected: [-1.   0.5]
      id: -1-2-1.5-False-expected3
      

      📌 Setup phase

      duration:

      0.0003911689855158329
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003252588212490082
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019381800666451454
      

      outcome:

      passed
      

    Function: test_within_scalar

    • Test 237
      params: val=5, vmin=0, vmax=10, expected=true

      📌 Runtime Parameters

      params:
        val: 5
        vmin: 0
        vmax: 10
        expected: True
      id: 5-0-10-True
      

      📌 Setup phase

      duration:

      0.0003533107228577137
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001632128842175007
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001720879226922989
      

      outcome:

      passed
      
    • Test 238
      params: val=5, vmin=6, vmax=10, expected=false

      📌 Runtime Parameters

      params:
        val: 5
        vmin: 6
        vmax: 10
        expected: False
      id: 5-6-10-False
      

      📌 Setup phase

      duration:

      0.0003090151585638523
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001459331251680851
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016610417515039444
      

      outcome:

      passed
      
    • Test 239
      params: val=5, vmin=null, vmax=10, expected=true

      📌 Runtime Parameters

      params:
        val: 5
        vmin: None
        vmax: 10
        expected: True
      id: 5-None-10-True
      

      📌 Setup phase

      duration:

      0.0003142189234495163
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013333698734641075
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001618899405002594
      

      outcome:

      passed
      
    • Test 240
      params: val=5, vmin=0, vmax=null, expected=true

      📌 Runtime Parameters

      params:
        val: 5
        vmin: 0
        vmax: None
        expected: True
      id: 5-0-None-True
      

      📌 Setup phase

      duration:

      0.00033231964334845543
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014009000733494759
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017796596512198448
      

      outcome:

      passed
      
    • Test 241
      params: val=5, vmin=null, vmax=null, expected=true

      📌 Runtime Parameters

      params:
        val: 5
        vmin: None
        vmax: None
        expected: True
      id: 5-None-None-True
      

      📌 Setup phase

      duration:

      0.00030214013531804085
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014889705926179886
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016561802476644516
      

      outcome:

      passed
      

    Function: test_within_fraction

    • Test 242
      params: data=[1, 2, 3, 4, 5], vmin=2, vmax=5, expected=0.6

      📌 Runtime Parameters

      params:
        data:
          - 1
          - 2
          - 3
          - 4
          - 5
        vmin: 2
        vmax: 5
        expected: 0.6
      id: data0-2-5-0.6
      

      📌 Setup phase

      duration:

      0.00030158180743455887
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00029034586623311043
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001859329640865326
      

      outcome:

      passed
      
    • Test 243
      params: data=[10, 20, 30], vmin=5, vmax=25, expected=0.6666666666666666

      📌 Runtime Parameters

      params:
        data:
          - 10
          - 20
          - 30
        vmin: 5
        vmax: 25
        expected: 0.6666666666666666
      id: data1-5-25-0.6666666666666666
      

      📌 Setup phase

      duration:

      0.000333624891936779
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023705791682004929
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017113424837589264
      

      outcome:

      passed
      
    • Test 244
      params: data=[1, 2, 3], vmin=null, vmax=2, expected=0.3333333333333333

      📌 Runtime Parameters

      params:
        data:
          - 1
          - 2
          - 3
        vmin: None
        vmax: 2
        expected: 0.3333333333333333
      id: data2-None-2-0.3333333333333333
      

      📌 Setup phase

      duration:

      0.0003297622315585613
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023611588403582573
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016756681725382805
      

      outcome:

      passed
      
    • Test 245
      params: data=[], vmin=0, vmax=1, expected=0

      📌 Runtime Parameters

      params:
        data:
      []
        vmin: 0
        vmax: 1
        expected: 0
      id: data3-0-1-0
      

      📌 Setup phase

      duration:

      0.0003401217982172966
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002300543710589409
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016998639330267906
      

      outcome:

      passed
      

    Function: test_fraction_to_percentage

    • Test 246
      params: fraction=0.456, ndigits=1, expected=45.6

      📌 Runtime Parameters

      params:
        fraction: 0.456
        ndigits: 1
        expected: 45.6
      id: 0.456-1-45.6
      

      📌 Setup phase

      duration:

      0.0002859579399228096
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014643510803580284
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001676059328019619
      

      outcome:

      passed
      
    • Test 247
      params: fraction=0.12345, ndigits=2, expected=12.35

      📌 Runtime Parameters

      params:
        fraction: 0.12345
        ndigits: 2
        expected: 12.35
      id: 0.12345-2-12.35
      

      📌 Setup phase

      duration:

      0.000258471816778183
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014479225501418114
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015301676467061043
      

      outcome:

      passed
      
    • Test 248
      params: fraction=0.9999, ndigits=0, expected=100.0

      📌 Runtime Parameters

      params:
        fraction: 0.9999
        ndigits: 0
        expected: 100.0
      id: 0.9999-0-100.0
      

      📌 Setup phase

      duration:

      0.0002584010362625122
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014557503163814545
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014621810987591743
      

      outcome:

      passed
      

    Function: test_get_dtype

    • Test 249
      params: val="[1 2 3]", expected=""

      📌 Runtime Parameters

      params:
        val: [1 2 3]
        expected: <class 'numpy.ndarray'>
      id: val0-ndarray
      

      📌 Setup phase

      duration:

      0.00022431183606386185
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001410529948771
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014410726726055145
      

      outcome:

      passed
      
    • Test 250
      params: val=[1, 2, 3], expected=""

      📌 Runtime Parameters

      params:
        val:
          - 1
          - 2
          - 3
        expected: <class 'list'>
      id: val1-list
      

      📌 Setup phase

      duration:

      0.00023506302386522293
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001452900469303131
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013741105794906616
      

      outcome:

      passed
      
    • Test 251
      params: val=3.14, expected=""

      📌 Runtime Parameters

      params:
        val: 3.14
        expected: <class 'float'>
      id: 3.14-float
      

      📌 Setup phase

      duration:

      0.00021022092550992966
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013201404362916946
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013274513185024261
      

      outcome:

      passed
      

    Function: test_get_shape

    • Test 252
      params: val="1 2]\n [3 4", expected=[2, 2]

      📌 Runtime Parameters

      params:
        val: [[1 2]
       [3 4]]
        expected:
          - 2
          - 2
      id: val0-expected0
      

      📌 Setup phase

      duration:

      0.0002244468778371811
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013843458145856857
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015447381883859634
      

      outcome:

      passed
      
    • Test 253
      params: val=[1, 2, 3], expected=[]

      📌 Runtime Parameters

      params:
        val:
          - 1
          - 2
          - 3
        expected:
      []
      id: val1-expected1
      

      📌 Setup phase

      duration:

      0.00022506201639771461
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001441100612282753
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001376480795443058
      

      outcome:

      passed
      
    • Test 254
      params: val=42, expected=[]

      📌 Runtime Parameters

      params:
        val: 42
        expected:
      []
      id: 42-expected2
      

      📌 Setup phase

      duration:

      0.0002176119014620781
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013865390792489052
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013328902423381805
      

      outcome:

      passed
      

    Function: test_is_array

    • Test 255
      params: val="[1 2 3]", expected=true

      📌 Runtime Parameters

      params:
        val: [1 2 3]
        expected: True
      id: val0-True
      

      📌 Setup phase

      duration:

      0.0002185213379561901
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014634523540735245
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014365091919898987
      

      outcome:

      passed
      
    • Test 256
      params: val=[1, 2, 3], expected=false

      📌 Runtime Parameters

      params:
        val:
          - 1
          - 2
          - 3
        expected: False
      id: val1-False
      

      📌 Setup phase

      duration:

      0.0002391459420323372
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001455601304769516
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013946695253252983
      

      outcome:

      passed
      
    • Test 257
      params: val=42, expected=false

      📌 Runtime Parameters

      params:
        val: 42
        expected: False
      id: 42-False
      

      📌 Setup phase

      duration:

      0.0002268240787088871
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013087783008813858
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013540871441364288
      

      outcome:

      passed
      
  • 📄 test_utils_path.py

    Function: test_can_create_all_files_user_says_yes

    • Test 258

      📌 Setup phase

      duration:

      0.00013095606118440628
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005819858051836491
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011364603415131569
      

      outcome:

      passed
      

    Function: test_can_create_all_files_user_says_no

    • Test 259

      📌 Setup phase

      duration:

      0.0001162397675216198
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004554698243737221
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010705599561333656
      

      outcome:

      passed
      

    Function: test_make_missing_dir_creates_folder

    • Test 260

      📌 Setup phase

      duration:

      0.00010652095079421997
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004580640234053135
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011552730575203896
      

      outcome:

      passed
      

    Function: test_glob_files_returns_matching_files_only

    • Test 261

      📌 Setup phase

      duration:

      0.00012446707114577293
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009619668126106262
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001188809983432293
      

      outcome:

      passed
      

    Function: test_filter_files_excludes_directories

    • Test 262

      📌 Setup phase

      duration:

      0.00011376384645700455
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006713578477501869
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013360707089304924
      

      outcome:

      passed
      
  • 📄 test_utils_picklio.py

    Function: test_pickle_and_unpickle

    • Test 263
      params: test_obj={"a": 1, "b": [2, 3], "c": {"world": "ok"}}

      📌 Runtime Parameters

      params:
        test_obj:
          a: 1
          b:
            - 2
            - 3
          c:
            world: ok
      id: test_obj0
      

      📌 Setup phase

      duration:

      0.0006531728431582451
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003496119752526283
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017402926459908485
      

      outcome:

      passed
      
    • Test 264
      params: test_obj=[1, 2, 3, 4, 5]

      📌 Runtime Parameters

      params:
        test_obj:
          - 1
          - 2
          - 3
          - 4
          - 5
      id: test_obj1
      

      📌 Setup phase

      duration:

      0.00053027318790555
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00028804363682866096
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001584119163453579
      

      outcome:

      passed
      
    • Test 265
      params: test_obj="simple string"

      📌 Runtime Parameters

      params:
        test_obj: simple string
      id: simple string
      

      📌 Setup phase

      duration:

      0.0005355472676455975
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002926960587501526
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015941401943564415
      

      outcome:

      passed
      
    • Test 266
      params: test_obj=42

      📌 Runtime Parameters

      params:
        test_obj: 42
      id: 42
      

      📌 Setup phase

      duration:

      0.0005870568566024303
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00028129201382398605
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001556267961859703
      

      outcome:

      passed
      
    • Test 267
      params: test_obj=3.14159

      📌 Runtime Parameters

      params:
        test_obj: 3.14159
      id: 3.14159
      

      📌 Setup phase

      duration:

      0.0005150758661329746
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003150319680571556
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001625511795282364
      

      outcome:

      passed
      
    • Test 268
      params: test_obj=[true, false, null]

      📌 Runtime Parameters

      params:
        test_obj:
          - True
          - (vide)
          - (vide)
      id: test_obj5
      

      📌 Setup phase

      duration:

      0.0005375118926167488
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002796528860926628
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016006501391530037
      

      outcome:

      passed
      
    • Test 269
      params: test_obj={"complex": [{"list": [1, 2]}, {"dict": {"x": 10}}]}

      📌 Runtime Parameters

      params:
        test_obj:
          complex:
            -         list:
                - 1
                - 2
            -         dict:
                x: 10
      id: test_obj6
      

      📌 Setup phase

      duration:

      0.0005878130905330181
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002943449653685093
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017467793077230453
      

      outcome:

      passed
      
  • 📄 test_utils_printing.py

    Function: test_maxlen_valid

    • Test 270
      params: seq=["a", "abc", ""], expected=3

      📌 Runtime Parameters

      params:
        seq:
          - a
          - abc
          - (vide)
        expected: 3
      id: seq0-3
      

      📌 Setup phase

      duration:

      0.00023644417524337769
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020446814596652985
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015242910012602806
      

      outcome:

      passed
      
    • Test 271
      params: seq=[], expected=0

      📌 Runtime Parameters

      params:
        seq:
      []
        expected: 0
      id: seq1-0
      

      📌 Setup phase

      duration:

      0.00024267472326755524
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014503486454486847
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001577748917043209
      

      outcome:

      passed
      
    • Test 272
      params: seq=1, 2], [3], [4, 5, 6, expected=3

      📌 Runtime Parameters

      params:
        seq:
          -       - 1
            - 2
          -       - 3
          -       - 4
            - 5
            - 6
        expected: 3
      id: seq2-3
      

      📌 Setup phase

      duration:

      0.00023958412930369377
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001419917680323124
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001449170522391796
      

      outcome:

      passed
      
    • Test 273
      params: seq=[{"a": 2, "b": 3}, {}, {"c": 4}], expected=2

      📌 Runtime Parameters

      params:
        seq:
          -       a: 2
            b: 3
          - (vide)
          -       c: 4
        expected: 2
      id: seq3-2
      

      📌 Setup phase

      duration:

      0.00023071002215147018
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014601927250623703
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014767702668905258
      

      outcome:

      passed
      

    Function: test_strlen

    • Test 274
      params: value=42, expected=2

      📌 Runtime Parameters

      params:
        value: 42
        expected: 2
      id: 42-2
      

      📌 Setup phase

      duration:

      0.00021861493587493896
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014471402391791344
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000151089858263731
      

      outcome:

      passed
      
    • Test 275
      params: value="hello", expected=5

      📌 Runtime Parameters

      params:
        value: hello
        expected: 5
      id: hello-5
      

      📌 Setup phase

      duration:

      0.00023674778640270233
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001526111736893654
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014242203906178474
      

      outcome:

      passed
      
    • Test 276
      params: value=false, expected=5

      📌 Runtime Parameters

      params:
        value: False
        expected: 5
      id: False-5
      

      📌 Setup phase

      duration:

      0.00022572604939341545
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015164213255047798
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013954192399978638
      

      outcome:

      passed
      
    • Test 277
      params: value=null, expected=4

      📌 Runtime Parameters

      params:
        value: None
        expected: 4
      id: None-4
      

      📌 Setup phase

      duration:

      0.0002244841307401657
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013820314779877663
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014027301222085953
      

      outcome:

      passed
      
    • Test 278
      params: value=[1, 2, 3], expected=9

      📌 Runtime Parameters

      params:
        value:
          - 1
          - 2
          - 3
        expected: 9
      id: value4-9
      

      📌 Setup phase

      duration:

      0.00026271212846040726
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001386348158121109
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001378171145915985
      

      outcome:

      passed
      
    • Test 279
      params: value={"a": 1}, expected=8

      📌 Runtime Parameters

      params:
        value:
          a: 1
        expected: 8
      id: value5-8
      

      📌 Setup phase

      duration:

      0.0002497178502380848
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014135194942355156
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001385980285704136
      

      outcome:

      passed
      
    • Test 280
      params: value=[1, 2], expected=6

      📌 Runtime Parameters

      params:
        value:
          - 1
          - 2
        expected: 6
      id: value6-6
      

      📌 Setup phase

      duration:

      0.00021329987794160843
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001517031341791153
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014116102829575539
      

      outcome:

      passed
      
    • Test 281
      params: value="", expected=0

      📌 Runtime Parameters

      params:
        value: None
        expected: 0
      id: -0
      

      📌 Setup phase

      duration:

      0.00021909596398472786
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013153906911611557
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013046013191342354
      

      outcome:

      passed
      
    • Test 282
      params: value="this is a phrase", expected=16

      📌 Runtime Parameters

      params:
        value: this is a phrase
        expected: 16
      id: this is a phrase-16
      

      📌 Setup phase

      duration:

      0.0002165893092751503
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013497984036803246
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022628391161561012
      

      outcome:

      passed
      

    Function: test_maxstrlen

    • Test 283
      params: seq=[1, true, 3.1415], expected=6

      📌 Runtime Parameters

      params:
        seq:
          - 1
          - True
          - 3.1415
        expected: 6
      id: seq0-6
      

      📌 Setup phase

      duration:

      0.00021295389160513878
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014788098633289337
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014144275337457657
      

      outcome:

      passed
      
    • Test 284
      params: seq=["aa", "bbb", "c"], expected=3

      📌 Runtime Parameters

      params:
        seq:
          - aa
          - bbb
          - c
        expected: 3
      id: seq1-3
      

      📌 Setup phase

      duration:

      0.0002213791012763977
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013925740495324135
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001357533037662506
      

      outcome:

      passed
      
    • Test 285
      params: seq=1, 2], [], [1, 2, 3, expected=9

      📌 Runtime Parameters

      params:
        seq:
          -       - 1
            - 2
          - (vide)
          -       - 1
            - 2
            - 3
        expected: 9
      id: seq2-9
      

      📌 Setup phase

      duration:

      0.000218141358345747
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000155711080878973
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013803178444504738
      

      outcome:

      passed
      
    • Test 286
      params: seq=[{"a": 1}, {}, {"a": 1, "b": 2}], expected=16

      📌 Runtime Parameters

      params:
        seq:
          -       a: 1
          - (vide)
          -       a: 1
            b: 2
        expected: 16
      id: seq3-16
      

      📌 Setup phase

      duration:

      0.00020786607638001442
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014979997649788857
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001392960548400879
      

      outcome:

      passed
      
    • Test 287
      params: seq=[null, false, 12345], expected=5

      📌 Runtime Parameters

      params:
        seq:
          - (vide)
          - (vide)
          - 12345
        expected: 5
      id: seq4-5
      

      📌 Setup phase

      duration:

      0.0002154759131371975
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001431000418961048
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013375235721468925
      

      outcome:

      passed
      

    Function: test_transpose_matrix

    • Test 288
      params: data=1, 2], [3, 4, expected=1, 3], [2, 4

      📌 Runtime Parameters

      params:
        data:
          -       - 1
            - 2
          -       - 3
            - 4
        expected:
          -       - 1
            - 3
          -       - 2
            - 4
      id: data0-expected0
      

      📌 Setup phase

      duration:

      0.00024167075753211975
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001433887518942356
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001382678747177124
      

      outcome:

      passed
      
    • Test 289

      📌 Runtime Parameters

      params:
        data:
          -       - a
            - b
          -       - c
            - d
        expected:
          -       - a
            - c
          -       - b
            - d
      id: data1-expected1
      

      📌 Setup phase

      duration:

      0.00022042915225028992
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013345107436180115
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001337798312306404
      

      outcome:

      passed
      
    • Test 290
      params: data={"x": 1}, {"y": 2}], [{"x": 3}, {"y": 4}, expected={"x": 1}, {"x": 3}], [{"y": 2}, {"y": 4}

      📌 Runtime Parameters

      params:
        data:
          -       -         x: 1
            -         y: 2
          -       -         x: 3
            -         y: 4
        expected:
          -       -         x: 1
            -         x: 3
          -       -         y: 2
            -         y: 4
      id: data2-expected2
      

      📌 Setup phase

      duration:

      0.0002292129211127758
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013864506036043167
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013432884588837624
      

      outcome:

      passed
      

    Function: test_prepend

    • Test 291
      params: initial=[1, 2, 3], prepend=1, expected=[1, 2, 3]

      📌 Runtime Parameters

      params:
        initial:
          - 1
          - 2
          - 3
        prepend: 1
        expected:
          - 1
          - 2
          - 3
      id: initial0-1-expected0
      

      📌 Setup phase

      duration:

      0.0002701212652027607
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013795588165521622
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015030615031719208
      

      outcome:

      passed
      
    • Test 292
      params: initial=["a", "b", "c"], prepend="a", expected=["a", "b", "c"]

      📌 Runtime Parameters

      params:
        initial:
          - a
          - b
          - c
        prepend: a
        expected:
          - a
          - b
          - c
      id: initial1-a-expected1
      

      📌 Setup phase

      duration:

      0.00025369739159941673
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001349230296909809
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016550999134778976
      

      outcome:

      passed
      
    • Test 293
      params: initial=[{"a": 1}, {"b": 2}], prepend={"a": 1}, expected=[{"a": 1}, {"b": 2}]

      📌 Runtime Parameters

      params:
        initial:
          -       a: 1
          -       b: 2
        prepend:
          a: 1
        expected:
          -       a: 1
          -       b: 2
      id: initial2-prepend2-expected2
      

      📌 Setup phase

      duration:

      0.0002615288831293583
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013522524386644363
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015375809744000435
      

      outcome:

      passed
      
    • Test 294
      params: initial=1], [2], [3, prepend=[1], expected=1], [2], [3

      📌 Runtime Parameters

      params:
        initial:
          -       - 1
          -       - 2
          -       - 3
        prepend:
          - 1
        expected:
          -       - 1
          -       - 2
          -       - 3
      id: initial3-prepend3-expected3
      

      📌 Setup phase

      duration:

      0.00026235077530145645
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014548469334840775
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015502329915761948
      

      outcome:

      passed
      

    Function: test_fmt_table_line

    • Test 295
      params: entries=["a", "bbb"], widths=[3, 5], expected=" a bbb"

      📌 Runtime Parameters

      params:
        entries:
          - a
          - bbb
        widths:
          - 3
          - 5
        expected:   a   bbb
      id: entries0-widths0-  a   bbb
      

      📌 Setup phase

      duration:

      0.00027117179706692696
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014559878036379814
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014835409820079803
      

      outcome:

      passed
      
    • Test 296
      params: entries=[1, 2], widths=[2, 2], expected=" 1 2"

      📌 Runtime Parameters

      params:
        entries:
          - 1
          - 2
        widths:
          - 2
          - 2
        expected:  1  2
      id: entries1-widths1- 1  2
      

      📌 Setup phase

      duration:

      0.0002796170301735401
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000203652773052454
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017248699441552162
      

      outcome:

      passed
      
    • Test 297
      params: entries=["long", "val"], widths=[6, 4], expected=" long val"

      📌 Runtime Parameters

      params:
        entries:
          - long
          - val
        widths:
          - 6
          - 4
        expected:   long  val
      id: entries2-widths2-  long  val
      

      📌 Setup phase

      duration:

      0.0003054998815059662
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000186283141374588
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002583451569080353
      

      outcome:

      passed
      
    • Test 298
      params: entries=[true, false], widths=[5, 6], expected=" True False"

      📌 Runtime Parameters

      params:
        entries:
          - True
          - (vide)
        widths:
          - 5
          - 6
        expected:  True  False
      id: entries3-widths3- True  False
      

      📌 Setup phase

      duration:

      0.00030558882281184196
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014825817197561264
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002135741524398327
      

      outcome:

      passed
      
    • Test 299
      params: entries=[123, 4567], widths=[5, 5], expected=" 123 4567"

      📌 Runtime Parameters

      params:
        entries:
          - 123
          - 4567
        widths:
          - 5
          - 5
        expected:   123  4567
      id: entries4-widths4-  123  4567
      

      📌 Setup phase

      duration:

      0.0003528962843120098
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020807888358831406
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016403524205088615
      

      outcome:

      passed
      
    • Test 300
      params: entries=["text with space", "end"], widths=[16, 5], expected=" text with space end"

      📌 Runtime Parameters

      params:
        entries:
          - text with space
          - end
        widths:
          - 16
          - 5
        expected:  text with space   end
      id: entries5-widths5- text with space   end
      

      📌 Setup phase

      duration:

      0.0002931840717792511
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015697674825787544
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016255490481853485
      

      outcome:

      passed
      
    • Test 301
      params: entries=[{"a": 1}, {"b": 2}], widths=[10, 10], expected=" {'a': 1} {'b': 2}"

      📌 Runtime Parameters

      params:
        entries:
          -       a: 1
          -       b: 2
        widths:
          - 10
          - 10
        expected:   {'a': 1}   {'b': 2}
      id: entries6-widths6-  {'a': 1}   {'b': 2}
      

      📌 Setup phase

      duration:

      0.0003599850460886955
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015333667397499084
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016368599608540535
      

      outcome:

      passed
      
    • Test 302
      params: entries=1, 2], [3, 4, widths=[10, 10], expected=" [1, 2] [3, 4]"

      📌 Runtime Parameters

      params:
        entries:
          -       - 1
            - 2
          -       - 3
            - 4
        widths:
          - 10
          - 10
        expected:     [1, 2]     [3, 4]
      id: entries7-widths7-    [1, 2]     [3, 4]
      

      📌 Setup phase

      duration:

      0.0002709650434553623
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001982557587325573
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019203172996640205
      

      outcome:

      passed
      

    Function: test_fmt_label_sep

    • Test 303
      params: widths=[3, 4], line="-", expected="--- ----"

      📌 Runtime Parameters

      params:
        widths:
          - 3
          - 4
        line: -
        expected: --- ----
      id: widths0------ ----
      

      📌 Setup phase

      duration:

      0.00035311514511704445
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015178509056568146
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001797662116587162
      

      outcome:

      passed
      
    • Test 304
      params: widths=[2, 3], line="=", expected="== ==="

      📌 Runtime Parameters

      params:
        widths:
          - 2
          - 3
        line: =
        expected: == ===
      id: widths1-=-== ===
      

      📌 Setup phase

      duration:

      0.00035787373781204224
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015211524441838264
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002283821813762188
      

      outcome:

      passed
      
    • Test 305
      params: widths=[5, 2], line="*", expected="***** **"

      📌 Runtime Parameters

      params:
        widths:
          - 5
          - 2
        line: *
        expected: ***** **
      id: widths2-*-***** **
      

      📌 Setup phase

      duration:

      0.0002886410802602768
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002215229906141758
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019194884225726128
      

      outcome:

      passed
      

    Function: test_printable_dict_with_header

    • Test 306
      params: d={"medium": true, "very_long_key": 3.14, "x": 1}, header="HeaderTest", expected_lines=["HeaderTest:", "-----------", "medium: True", "very_long_key: 3.14", "x: 1", ""]

      📌 Runtime Parameters

      params:
        d:
          medium: True
          very_long_key: 3.14
          x: 1
        header: HeaderTest
        expected_lines:
          - HeaderTest:
          - -----------
          - medium:        True
          - very_long_key: 3.14
          - x:             1
          - (vide)
      id: d0-HeaderTest-expected_lines0
      

      📌 Setup phase

      duration:

      0.00043891603127121925
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005364702083170414
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001683281734585762
      

      outcome:

      passed
      

    Function: test_printable_dict_of_dicts

    • Test 307

      📌 Setup phase

      duration:

      0.00017679110169410706
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002412940375506878
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011440692469477654
      

      outcome:

      passed
      

    Function: test_printable_table

    • Test 308
      params: data="X1", true, 0.1234, {"meta": "ok"}], ["AnotherSample", false, 98765.4321, {"meta": [1, 2, 3]}], ["Z", null, 0.0, {"meta": {"nested_key": 42}}, labels=["ID", "✓ Success?", "SuperPrecisionValue", "Result Metadata"], expected="A: ID\nB: ✓ Success?\nC: SuperPrecisionValue\nD: Result Metadata\n\n# A B C D\n- ------------- ----- ---------- ----------------------------\n0 X1 True 0.1234 {'meta': 'ok'}\n1 AnotherSample False 98765.4321 {'meta': [1, 2, 3]}\n2 Z None 0.0 {'meta': {'nested_key': 42}}"

      📌 Runtime Parameters

      params:
        data:
          -       - X1
            - True
            - 0.1234
            -         meta: ok
          -       - AnotherSample
            - (vide)
            - 98765.4321
            -         meta:
                - 1
                - 2
                - 3
          -       - Z
            - (vide)
            - (vide)
            -         meta:
                nested_key: 42
        labels:
          - ID
          -  Success?
          - SuperPrecisionValue
          - Result Metadata
        expected: A: ID
      B:  Success?
      C: SuperPrecisionValue
      D: Result Metadata
      
      #             A     B          C                            D
      - ------------- ----- ---------- ----------------------------
      0            X1  True     0.1234               {'meta': 'ok'}
      1 AnotherSample False 98765.4321          {'meta': [1, 2, 3]}
      2             Z  None        0.0 {'meta': {'nested_key': 42}}
      id: data0-labels0-A: ID\nB: \u2713 Success?\nC: SuperPrecisionValue\nD: Result Metadata\n\n#             A     B          C                            D\n- ------------- ----- ---------- ----------------------------\n0            X1  True     0.1234               {'meta': 'ok'}\n1 AnotherSample False 98765.4321          {'meta': [1, 2, 3]}\n2             Z  None        0.0 {'meta': {'nested_key': 42}}
      

      📌 Setup phase

      duration:

      0.00037720799446105957
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004847543314099312
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017004180699586868
      

      outcome:

      passed
      
  • 📄 test_utils_rangebar.py

    Function: test_full_progress_bar

    • Test 309

      📌 Setup phase

      duration:

      0.0005053328350186348
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002651410177350044
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023459456861019135
      

      outcome:

      passed
      

    Function: test_half_progress_bar

    • Test 310

      📌 Setup phase

      duration:

      0.00029040686786174774
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002663801424205303
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024013221263885498
      

      outcome:

      passed
      

    Function: test_zero_progress_bar

    • Test 311

      📌 Setup phase

      duration:

      0.0003646421246230602
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020497338846325874
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002625701017677784
      

      outcome:

      passed
      

    Function: test_overflow_bar

    • Test 312

      📌 Setup phase

      duration:

      0.00030445586889982224
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00026588980108499527
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001705959439277649
      

      outcome:

      passed
      

    Function: test_underflow_bar

    • Test 313

      📌 Setup phase

      duration:

      0.0002608359791338444
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020066089928150177
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015926174819469452
      

      outcome:

      passed
      

    Function: test_repr

    • Test 314

      📌 Setup phase

      duration:

      0.00010820897296071053
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015328824520111084
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.825406596064568e-05
      

      outcome:

      passed
      

    Function: test_each_value_separately

    • Test 315
      params: value=0, expected_bar_part=" "

      📌 Runtime Parameters

      params:
        value: 0
        expected_bar_part:           
      id: 0-          
      

      📌 Setup phase

      duration:

      0.0004875059239566326
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00028574420139193535
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021691713482141495
      

      outcome:

      passed
      
    • Test 316
      params: value=10, expected_bar_part="█ "

      📌 Runtime Parameters

      params:
        value: 10
        expected_bar_part:          
      id: 10-\u2588         
      

      📌 Setup phase

      duration:

      0.0005240063183009624
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022711465135216713
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000317390076816082
      

      outcome:

      passed
      
    • Test 317
      params: value=25, expected_bar_part="██▌ "

      📌 Runtime Parameters

      params:
        value: 25
        expected_bar_part: ██▌       
      id: 25-\u2588\u2588\u258c       
      

      📌 Setup phase

      duration:

      0.0006445418111979961
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003310958854854107
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0006480878219008446
      

      outcome:

      passed
      
    • Test 318
      params: value=27, expected_bar_part="██▊ "

      📌 Runtime Parameters

      params:
        value: 27
        expected_bar_part: ██▊       
      id: 27-\u2588\u2588\u258a       
      

      📌 Setup phase

      duration:

      0.0003995099104940891
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002261442132294178
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001987069845199585
      

      outcome:

      passed
      
    • Test 319
      params: value=49, expected_bar_part="████▉ "

      📌 Runtime Parameters

      params:
        value: 49
        expected_bar_part: ████▉     
      id: 49-\u2588\u2588\u2588\u2588\u2589     
      

      📌 Setup phase

      duration:

      0.00040963804349303246
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022970465943217278
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019556516781449318
      

      outcome:

      passed
      
    • Test 320
      params: value=50, expected_bar_part="█████ "

      📌 Runtime Parameters

      params:
        value: 50
        expected_bar_part: █████     
      id: 50-\u2588\u2588\u2588\u2588\u2588     
      

      📌 Setup phase

      duration:

      0.0003641783259809017
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021392712369561195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021859584376215935
      

      outcome:

      passed
      
    • Test 321
      params: value=51, expected_bar_part="█████▏ "

      📌 Runtime Parameters

      params:
        value: 51
        expected_bar_part: █████▏    
      id: 51-\u2588\u2588\u2588\u2588\u2588\u258f    
      

      📌 Setup phase

      duration:

      0.0003879452124238014
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002018413506448269
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021925196051597595
      

      outcome:

      passed
      
    • Test 322
      params: value=73, expected_bar_part="███████▎ "

      📌 Runtime Parameters

      params:
        value: 73
        expected_bar_part: ███████▎  
      id: 73-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258e  
      

      📌 Setup phase

      duration:

      0.000366720836609602
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019557029008865356
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002291891723871231
      

      outcome:

      passed
      
    • Test 323
      params: value=75, expected_bar_part="███████▌ "

      📌 Runtime Parameters

      params:
        value: 75
        expected_bar_part: ███████▌  
      id: 75-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c  
      

      📌 Setup phase

      duration:

      0.00040869880467653275
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020619016140699387
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022470997646450996
      

      outcome:

      passed
      
    • Test 324
      params: value=90, expected_bar_part="█████████ "

      📌 Runtime Parameters

      params:
        value: 90
        expected_bar_part: █████████ 
      id: 90-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 
      

      📌 Setup phase

      duration:

      0.0003877268172800541
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002169022336602211
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022258097305893898
      

      outcome:

      passed
      
    • Test 325
      params: value=100, expected_bar_part="██████████"

      📌 Runtime Parameters

      params:
        value: 100
        expected_bar_part: ██████████
      id: 100-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588
      

      📌 Setup phase

      duration:

      0.00034271925687789917
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022269412875175476
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002212529070675373
      

      outcome:

      passed
      
  • 📄 test_utils_sendmail.py

    Function: test_sendmail_real_local_verbose

    • Test 326

      📌 Setup phase

      duration:

      0.0001635323278605938
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      3.103217113763094
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002506999298930168
      

      outcome:

      passed
      
  • 📄 test_utils_snapshot.py

    Function: test_snapshot

    • Test 327
      params: test_input="v1", "Visible", false], ["h1", "Hidden", true, expected=["Visible"], kwargs={}

      📌 Runtime Parameters

      params:
        test_input:
          -       - v1
            - Visible
            - (vide)
          -       - h1
            - Hidden
            - True
        expected:
          - Visible
        kwargs:
      {}
      id: exclude_internals
      

      📌 Setup phase

      duration:

      0.0005633896216750145
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000928828027099371
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020086020231246948
      

      outcome:

      passed
      
    • Test 328
      params: test_input="v1", "Visible", false], ["h1", "Hidden", true, expected=["Visible", "Hidden"], kwargs={"include_internal": true}

      📌 Runtime Parameters

      params:
        test_input:
          -       - v1
            - Visible
            - (vide)
          -       - h1
            - Hidden
            - True
        expected:
          - Visible
          - Hidden
        kwargs:
          include_internal: True
      id: include_internals
      

      📌 Setup phase

      duration:

      0.0002960008569061756
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005072420462965965
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017916923388838768
      

      outcome:

      passed
      
    • Test 329
      params: test_input=[], expected=[], kwargs={}

      📌 Runtime Parameters

      params:
        test_input:
      []
        expected:
      []
        kwargs:
      {}
      id: empty_case
      

      📌 Setup phase

      duration:

      0.00029200920835137367
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014878204092383385
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016017910093069077
      

      outcome:

      passed
      
    • Test 330
      params: test_input="3", "Charlie"], ["1", "Alpha"], ["2", "Beta", expected=["Alpha", "Beta", "Charlie"], kwargs="{'sort_key': }"

      📌 Runtime Parameters

      params:
        test_input:
          -       - 3
            - Charlie
          -       - 1
            - Alpha
          -       - 2
            - Beta
        expected:
          - Alpha
          - Beta
          - Charlie
        kwargs: {'sort_key': <class 'str'>}
      id: sort_str
      

      📌 Setup phase

      duration:

      0.00026520295068621635
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005805771797895432
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001676543615758419
      

      outcome:

      passed
      
    • Test 331
      params: test_input="z3", "C"], ["a1", "A"], ["m2", "B", expected=["A", "B", "C"], kwargs="{'sort_key': at 0x7f84def81c10>}"

      📌 Runtime Parameters

      params:
        test_input:
          -       - z3
            - C
          -       - a1
            - A
          -       - m2
            - B
        expected:
          - A
          - B
          - C
        kwargs: {'sort_key': <function <lambda> at 0x7f84def81c10>}
      id: sort_id
      

      📌 Setup phase

      duration:

      0.000277623999863863
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000567310955375433
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016843434423208237
      

      outcome:

      passed
      
    • Test 332
      params: test_input="3", "Charlie"], ["1", "alpha"], ["2", "Beta", expected=["alpha", "Beta", "Charlie"], kwargs="{'sort_key': at 0x7f84def81ca0>}"

      📌 Runtime Parameters

      params:
        test_input:
          -       - 3
            - Charlie
          -       - 1
            - alpha
          -       - 2
            - Beta
        expected:
          - alpha
          - Beta
          - Charlie
        kwargs: {'sort_key': <function <lambda> at 0x7f84def81ca0>}
      id: sort_case_insensitive
      

      📌 Setup phase

      duration:

      0.0003099110908806324
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005608857609331608
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017011724412441254
      

      outcome:

      passed
      
    • Test 333
      params: test_input="1", "A"], ["2", "BB"], ["3", "CCC", expected=["A", "BB", "CCC"], kwargs="{'sort_key': at 0x7f84def81d30>}"

      📌 Runtime Parameters

      params:
        test_input:
          -       - 1
            - A
          -       - 2
            - BB
          -       - 3
            - CCC
        expected:
          - A
          - BB
          - CCC
        kwargs: {'sort_key': <function <lambda> at 0x7f84def81d30>}
      id: sort_length
      

      📌 Setup phase

      duration:

      0.0003338837996125221
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005739759653806686
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001727622002363205
      

      outcome:

      passed
      
    • Test 334
      params: test_input="1", "A"], ["2", "B"], ["3", "C", expected=["C", "B", "A"], kwargs="{'sort_key': at 0x7f84def81dc0>}"

      📌 Runtime Parameters

      params:
        test_input:
          -       - 1
            - A
          -       - 2
            - B
          -       - 3
            - C
        expected:
          - C
          - B
          - A
        kwargs: {'sort_key': <function <lambda> at 0x7f84def81dc0>}
      id: sort_reverse
      

      📌 Setup phase

      duration:

      0.00028100190684199333
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007442510686814785
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018572015687823296
      

      outcome:

      passed
      
  • 📄 test_utils_termtitle.py

    Function: test_terminal_title_with_tmux

    • Test 335

      📌 Setup phase

      duration:

      0.00013375701382756233
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.015424872282892466
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023693079128861427
      

      outcome:

      passed
      
  • 📄 test_utils_tqdm_mod.py

    Function: test_complete_progress_bar

    • Test 336

      📌 Setup phase

      duration:

      0.00019373558461666107
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.008000597823411226
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001831292174756527
      

      outcome:

      passed
      

    Function: test_set_progress_multiple_points

    • Test 337

      📌 Setup phase

      duration:

      0.0002216668799519539
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0014222292229533195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001434357836842537
      

      outcome:

      passed
      

    Function: test_format_sizeof_alignment

    • Test 338

      📌 Setup phase

      duration:

      0.00012206798419356346
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001592119224369526
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011218385770916939
      

      outcome:

      passed
      

    Function: test_custom_unit

    • Test 340

      📌 Setup phase

      duration:

      0.00012510595843195915
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.004763302858918905
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012378022074699402
      

      outcome:

      passed
      

    Function: test_clamp_above_total

    • Test 341

      📌 Setup phase

      duration:

      0.0001210412010550499
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004397081211209297
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010980106890201569
      

      outcome:

      passed
      

    Function: test_clamp_below_zero

    • Test 342

      📌 Setup phase

      duration:

      0.000109110027551651
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006070849485695362
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012227008119225502
      

      outcome:

      passed
      
  • 📄 test_utils_trinary.py

    Function: test_check_trinary_valid_values

    • Test 343

      📌 Setup phase

      duration:

      0.0001260112039744854
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016933120787143707
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010242080315947533
      

      outcome:

      passed
      

    Function: test_check_trinary_invalid_value

    • Test 344

      📌 Setup phase

      duration:

      0.000117509625852108
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00038361595943570137
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010513700544834137
      

      outcome:

      passed
      

    Function: test_check_trinary_with_custom_allowed_values

    • Test 345

      📌 Setup phase

      duration:

      0.00010916683822870255
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000160090159624815
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010073604062199593
      

      outcome:

      passed
      
  • 📄 test_utils_typecast.py

    Function: test_downcast_success

    • Test 346

      📌 Setup phase

      duration:

      0.00012305285781621933
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016811303794384003
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.931018576025963e-05
      

      outcome:

      passed
      

    Function: test_upcast_success

    • Test 347

      📌 Setup phase

      duration:

      0.00010444968938827515
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014541391283273697
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.75397415459156e-05
      

      outcome:

      passed
      

    Function: test_downcast_invalid

    • Test 348

      📌 Setup phase

      duration:

      0.00010839710012078285
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003335936926305294
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010288693010807037
      

      outcome:

      passed
      

    Function: test_upcast_invalid

    • Test 349

      📌 Setup phase

      duration:

      0.00010522035881876945
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016435282304883003
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.807385504245758e-05
      

      outcome:

      passed
      

    Function: test_object_identity_preserved

    • Test 350

      📌 Setup phase

      duration:

      0.00010997708886861801
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013819709420204163
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.86163504421711e-05
      

      outcome:

      passed
      

    Function: test_ensure_subclass_valid

    • Test 351

      📌 Setup phase

      duration:

      0.00011202320456504822
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013152090832591057
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.470898658037186e-05
      

      outcome:

      passed
      

    Function: test_ensure_subclass_invalid

    • Test 352

      📌 Setup phase

      duration:

      0.00010553700849413872
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016305828467011452
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.718537330627441e-05
      

      outcome:

      passed
      

    Function: test_cast_changes_class

    • Test 353

      📌 Setup phase

      duration:

      0.0001016426831483841
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013937987387180328
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.885430335998535e-05
      

      outcome:

      passed
      

    Function: test_cast_preserves_identity

    • Test 354

      📌 Setup phase

      duration:

      0.00010392721742391586
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015385588631033897
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010839104652404785
      

      outcome:

      passed
      
  • 📄 test_utils_utils.py

    Function: test_singleton_instance

    • Test 355

      📌 Setup phase

      duration:

      0.00011987099424004555
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016169901937246323
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010109599679708481
      

      outcome:

      passed
      

    Function: test_singleton_identity

    • Test 356

      📌 Setup phase

      duration:

      0.00010418891906738281
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001261560246348381
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.818840771913528e-05
      

      outcome:

      passed
      

    Function: test_typename

    • Test 357
      params: obj=null, expected="NoneType"

      📌 Runtime Parameters

      params:
        obj: None
        expected: NoneType
      id: None-NoneType
      

      📌 Setup phase

      duration:

      0.00029973406344652176
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016086502000689507
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015324214473366737
      

      outcome:

      passed
      
    • Test 358
      params: obj=true, expected="bool"

      📌 Runtime Parameters

      params:
        obj: True
        expected: bool
      id: True-bool
      

      📌 Setup phase

      duration:

      0.00023321202024817467
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013719499111175537
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013387808576226234
      

      outcome:

      passed
      
    • Test 359
      params: obj=42, expected="int"

      📌 Runtime Parameters

      params:
        obj: 42
        expected: int
      id: 42-int
      

      📌 Setup phase

      duration:

      0.00023290561512112617
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013614213094115257
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013730721548199654
      

      outcome:

      passed
      
    • Test 360
      params: obj=3.14, expected="float"

      📌 Runtime Parameters

      params:
        obj: 3.14
        expected: float
      id: 3.14-float
      

      📌 Setup phase

      duration:

      0.0002430402673780918
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001339348964393139
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013794098049402237
      

      outcome:

      passed
      
    • Test 361
      params: obj="text", expected="str"

      📌 Runtime Parameters

      params:
        obj: text
        expected: str
      id: text-str
      

      📌 Setup phase

      duration:

      0.00022981874644756317
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013023335486650467
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012974999845027924
      

      outcome:

      passed
      
    • Test 362
      params: obj="{1, 2, 3}", expected="set"

      📌 Runtime Parameters

      params:
        obj: {1, 2, 3}
        expected: set
      id: obj5-set
      

      📌 Setup phase

      duration:

      0.0002236589789390564
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013623014092445374
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001362347975373268
      

      outcome:

      passed
      
    • Test 363
      params: obj=1], [2, 3, expected="list"

      📌 Runtime Parameters

      params:
        obj:
          -       - 1
          -       - 2
            - 3
        expected: list
      id: obj6-list
      

      📌 Setup phase

      duration:

      0.00021543214097619057
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001376359723508358
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013712700456380844
      

      outcome:

      passed
      
    • Test 364
      params: obj=[{"a": [1, 2]}, {"b": [3, 4]}], expected="list"

      📌 Runtime Parameters

      params:
        obj:
          -       a:
              - 1
              - 2
          -       b:
              - 3
              - 4
        expected: list
      id: obj7-list
      

      📌 Setup phase

      duration:

      0.00020866701379418373
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013329414650797844
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014647701755166054
      

      outcome:

      passed
      
    • Test 365
      params: obj={"key": [{"nested": 1}, [2, 3]]}, expected="dict"

      📌 Runtime Parameters

      params:
        obj:
          key:
            -         nested: 1
            -         - 2
              - 3
        expected: dict
      id: obj8-dict
      

      📌 Setup phase

      duration:

      0.00021777721121907234
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00012922799214720726
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014018313959240913
      

      outcome:

      passed
      
    • Test 366
      params: obj=" at 0x7f84df084550>", expected="function"

      📌 Runtime Parameters

      params:
        obj: <function <lambda> at 0x7f84df084550>
        expected: function
      id: <lambda>-function
      

      📌 Setup phase

      duration:

      0.00021971063688397408
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021919701248407364
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014217570424079895
      

      outcome:

      passed
      
    • Test 367
      params: obj="", expected="function"

      📌 Runtime Parameters

      params:
        obj: <function sample_function at 0x7f84df0844c0>
        expected: function
      id: sample_function-function
      

      📌 Setup phase

      duration:

      0.00021392898634076118
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014094403013586998
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014301203191280365
      

      outcome:

      passed
      
    • Test 368
      params: obj=".nested at 0x7f84df0845e0>", expected="function"

      📌 Runtime Parameters

      params:
        obj: <function sample_function.<locals>.nested at 0x7f84df0845e0>
        expected: function
      id: nested-function
      

      📌 Setup phase

      duration:

      0.00021629221737384796
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014564767479896545
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001368839293718338
      

      outcome:

      passed
      
    • Test 369
      params: obj="", expected="builtin_function_or_method"

      📌 Runtime Parameters

      params:
        obj: <built-in function len>
        expected: builtin_function_or_method
      id: len-builtin_function_or_method
      

      📌 Setup phase

      duration:

      0.00021487334743142128
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001292899250984192
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013039587065577507
      

      outcome:

      passed
      
    • Test 370
      params: obj="", expected="builtin_function_or_method"

      📌 Runtime Parameters

      params:
        obj: <built-in function sum>
        expected: builtin_function_or_method
      id: sum-builtin_function_or_method
      

      📌 Setup phase

      duration:

      0.00020877597853541374
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013872003182768822
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013509904965758324
      

      outcome:

      passed
      
    • Test 371
      params: obj="", expected="module"

      📌 Runtime Parameters

      params:
        obj: <module 'math' from '/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/lib-dynload/math.cpython-38-x86_64-linux-gnu.so'>
        expected: module
      id: math-module
      

      📌 Setup phase

      duration:

      0.00022899825125932693
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00012917118147015572
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013535330072045326
      

      outcome:

      passed
      
    • Test 372
      params: obj="", expected="module"

      📌 Runtime Parameters

      params:
        obj: <module 'sys' (built-in)>
        expected: module
      id: sys-module
      

      📌 Setup phase

      duration:

      0.00022860802710056305
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001346818171441555
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013575516641139984
      

      outcome:

      passed
      
    • Test 373
      params: obj="", expected="type"

      📌 Runtime Parameters

      params:
        obj: <class 'function'>
        expected: type
      id: function-type
      

      📌 Setup phase

      duration:

      0.00021804310381412506
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013050297275185585
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013808300718665123
      

      outcome:

      passed
      
    • Test 374
      params: obj=" at 0x7f84de7ef890>", expected="generator"

      📌 Runtime Parameters

      params:
        obj: <generator object <genexpr> at 0x7f84de7ef890>
        expected: generator
      id: <genexpr>-generator
      

      📌 Setup phase

      duration:

      0.00021804170683026314
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001315651461482048
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013202102854847908
      

      outcome:

      passed
      
    • Test 375
      params: obj="", expected="list_iterator"

      📌 Runtime Parameters

      params:
        obj: <list_iterator object at 0x7f84ddb40490>
        expected: list_iterator
      id: obj18-list_iterator
      

      📌 Setup phase

      duration:

      0.00021893484517931938
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013538403436541557
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013630883768200874
      

      outcome:

      passed
      

    Function: test_next_int

    • Test 376
      params: nums=[1, 2, 3], expected=4

      📌 Runtime Parameters

      params:
        nums:
          - 1
          - 2
          - 3
        expected: 4
      id: nums0-4
      

      📌 Setup phase

      duration:

      0.00022527901455760002
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014222972095012665
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013857102021574974
      

      outcome:

      passed
      
    • Test 377
      params: nums=[10, 20], expected=21

      📌 Runtime Parameters

      params:
        nums:
          - 10
          - 20
        expected: 21
      id: nums1-21
      

      📌 Setup phase

      duration:

      0.00022142985835671425
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001360713504254818
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014735199511051178
      

      outcome:

      passed
      
    • Test 378
      params: nums=[], expected=0

      📌 Runtime Parameters

      params:
        nums:
      []
        expected: 0
      id: nums2-0
      

      📌 Setup phase

      duration:

      0.00021968316286802292
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001296941190958023
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013304781168699265
      

      outcome:

      passed
      

    Function: test_zero_pad

    • Test 379
      params: i=7, n=3, expected="007"

      📌 Runtime Parameters

      params:
        i: 7
        n: 3
        expected: 007
      id: 7-3-007
      

      📌 Setup phase

      duration:

      0.0002612820826470852
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001387558877468109
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014866283163428307
      

      outcome:

      passed
      
    • Test 380
      params: i=123, n=5, expected="00123"

      📌 Runtime Parameters

      params:
        i: 123
        n: 5
        expected: 00123
      id: 123-5-00123
      

      📌 Setup phase

      duration:

      0.00026727374643087387
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001480327919125557
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001507829874753952
      

      outcome:

      passed
      
    • Test 381
      params: i=0, n=2, expected="00"

      📌 Runtime Parameters

      params:
        i: 0
        n: 2
        expected: 00
      id: 0-2-00
      

      📌 Setup phase

      duration:

      0.00024835672229528427
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013837870210409164
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015430524945259094
      

      outcome:

      passed
      

    Function: test_iround

    • Test 382
      params: val=3.6, expected=4

      📌 Runtime Parameters

      params:
        val: 3.6
        expected: 4
      id: 3.6-4
      

      📌 Setup phase

      duration:

      0.00022257491946220398
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013852817937731743
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014885514974594116
      

      outcome:

      passed
      
    • Test 383
      params: val=2.1, expected=2

      📌 Runtime Parameters

      params:
        val: 2.1
        expected: 2
      id: 2.1-2
      

      📌 Setup phase

      duration:

      0.00023329397663474083
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013586459681391716
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013340916484594345
      

      outcome:

      passed
      
    • Test 384
      params: val=-1.5, expected=-2

      📌 Runtime Parameters

      params:
        val: -1.5
        expected: -2
      id: -1.5--2
      

      📌 Setup phase

      duration:

      0.00022307690232992172
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013187015429139137
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001422031782567501
      

      outcome:

      passed
      
    • Test 385
      params: val=-1.4, expected=-1

      📌 Runtime Parameters

      params:
        val: -1.4
        expected: -1
      id: -1.4--1
      

      📌 Setup phase

      duration:

      0.00022550486028194427
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013753771781921387
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013615423813462257
      

      outcome:

      passed
      

    Function: test_sorted_naturally

    • Test 386
      params: items=["file1", "file10", "file2"], expected=["file1", "file2", "file10"]

      📌 Runtime Parameters

      params:
        items:
          - file1
          - file10
          - file2
        expected:
          - file1
          - file2
          - file10
      id: items0-expected0
      

      📌 Setup phase

      duration:

      0.0002171969972550869
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001750849187374115
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001458367332816124
      

      outcome:

      passed
      
    • Test 387
      params: items=["z9", "z10", "z2", "z1"], expected=["z1", "z2", "z9", "z10"]

      📌 Runtime Parameters

      params:
        items:
          - z9
          - z10
          - z2
          - z1
        expected:
          - z1
          - z2
          - z9
          - z10
      id: items1-expected1
      

      📌 Setup phase

      duration:

      0.0002175038680434227
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016485806554555893
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001350310631096363
      

      outcome:

      passed
      

    Function: test_sorted_naturally_reverse

    • Test 388
      params: items=["file1", "file10", "file2"], expected=["file10", "file2", "file1"]

      📌 Runtime Parameters

      params:
        items:
          - file1
          - file10
          - file2
        expected:
          - file10
          - file2
          - file1
      id: items0-expected0
      

      📌 Setup phase

      duration:

      0.00021066702902317047
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001497478224337101
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014551915228366852
      

      outcome:

      passed
      
  • 📄 test_utils_xrange.py

    Function: test_xrange_finite

    • Test 389
      params: args=[10], kwargs={}, expected=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

      📌 Runtime Parameters

      params:
        args:
          - 10
        kwargs:
      {}
        expected:
          - (vide)
          - 1
          - 2
          - 3
          - 4
          - 5
          - 6
          - 7
          - 8
          - 9
      id: args0-kwargs0-expected0
      

      📌 Setup phase

      duration:

      0.0002775639295578003
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015222188085317612
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016303686425089836
      

      outcome:

      passed
      
    • Test 390
      params: args=[0, 10], kwargs={}, expected=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

      📌 Runtime Parameters

      params:
        args:
          - (vide)
          - 10
        kwargs:
      {}
        expected:
          - (vide)
          - 1
          - 2
          - 3
          - 4
          - 5
          - 6
          - 7
          - 8
          - 9
      id: args1-kwargs1-expected1
      

      📌 Setup phase

      duration:

      0.0002711187116801739
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020733708515763283
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001482679508626461
      

      outcome:

      passed
      
    • Test 391
      params: args=[0, 10, 2], kwargs={}, expected=[0, 2, 4, 6, 8]

      📌 Runtime Parameters

      params:
        args:
          - (vide)
          - 10
          - 2
        kwargs:
      {}
        expected:
          - (vide)
          - 2
          - 4
          - 6
          - 8
      id: args2-kwargs2-expected2
      

      📌 Setup phase

      duration:

      0.00026348885148763657
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013954099267721176
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015487102791666985
      

      outcome:

      passed
      
    • Test 392
      params: args=[10], kwargs={"step": 2}, expected=[0, 2, 4, 6, 8]

      📌 Runtime Parameters

      params:
        args:
          - 10
        kwargs:
          step: 2
        expected:
          - (vide)
          - 2
          - 4
          - 6
          - 8
      id: args3-kwargs3-expected3
      

      📌 Setup phase

      duration:

      0.000257221981883049
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013526668772101402
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016866903752088547
      

      outcome:

      passed
      

    Function: test_xrange_infinite

    • Test 393
      params: args=[], kwargs={}, expected_repr="count(0)"

      📌 Runtime Parameters

      params:
        args:
      []
        kwargs:
      {}
        expected_repr: count(0)
      id: args0-kwargs0-count(0)
      

      📌 Setup phase

      duration:

      0.0002625160850584507
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015028519555926323
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001502237282693386
      

      outcome:

      passed
      
    • Test 394
      params: args=[], kwargs={"step": 2}, expected_repr="count(0, 2)"

      📌 Runtime Parameters

      params:
        args:
      []
        kwargs:
          step: 2
        expected_repr: count(0, 2)
      id: args1-kwargs1-count(0, 2)
      

      📌 Setup phase

      duration:

      0.0002568177878856659
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015551503747701645
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015603704378008842
      

      outcome:

      passed
      

    Function: test_xrange_too_many_args

    • Test 395
      params: args=[1, 2, 3, 4]

      📌 Runtime Parameters

      params:
        args:
          - 1
          - 2
          - 3
          - 4
      id: args0
      

      📌 Setup phase

      duration:

      0.00016091205179691315
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00044925231486558914
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0005996250547468662
      

      outcome:

      passed
      
Failed (23)
  • 📄 test_utils_debug.py

    Function: test_short_repr

    • Test 102
      params: value="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", cutoff=10, expected="'aaaaaaaaaa..."

      📌 Runtime Parameters

      params:
        value: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
        cutoff: 10
        expected: 'aaaaaaaaaa...
      id: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10-'aaaaaaaaaa...
      

      📌 Setup phase

      duration:

      0.00035803020000457764
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.001148303970694542
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_debug.py
      lineno: 66
      message: assert "'aaaaaaaaa..." == "'aaaaaaaaaa..."
      
        - 'aaaaaaaaaa...
        ?  -
        + 'aaaaaaaaa...
      

      traceback:

      -   path: tests/test_utils_debug.py
        lineno: 66
        message: AssertionError
      

      longrepr:

      value = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
      cutoff = 10, expected = "'aaaaaaaaaa..."
      
          @pytest.mark.parametrize(
              "value, cutoff, expected",
              [
                  ("abc", 10, "'abc'"),
                  ("a" * 100, 10, "'aaaaaaaaaa..."),
                  (12345, 10, "12345"),
                  ([0]*100, 15, str(repr([0]*100))[:15] + "..."),
                  (None, 10, "None"),
                  (type("Obj", (), {"__repr__": lambda self: "Obj(" + "x"*50 + ")"})(), 20, "Obj(xxxxxxxxxxxxxxxxx..."),
              ]
          )
      
          def test_short_repr(value, cutoff, expected):
      >       assert short_repr(value, cutoff) == expected
      E       assert "'aaaaaaaaa..." == "'aaaaaaaaaa..."
      E         
      E         - 'aaaaaaaaaa...
      E         ?  -
      E         + 'aaaaaaaaa...
      
      tests/test_utils_debug.py:66: AssertionError
      

      📌 Teardown phase

      duration:

      0.0002915943041443825
      

      outcome:

      passed
      
    • Test 106
      params: value="Obj(xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)", cutoff=20, expected="Obj(xxxxxxxxxxxxxxxxx..."

      📌 Runtime Parameters

      params:
        value: Obj(xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
        cutoff: 20
        expected: Obj(xxxxxxxxxxxxxxxxx...
      id: value5-20-Obj(xxxxxxxxxxxxxxxxx...
      

      📌 Setup phase

      duration:

      0.00025812769308686256
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005799159407615662
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_debug.py
      lineno: 66
      message: AssertionError: assert 'Obj(xxxxxxxxxxxxxxxx...' == 'Obj(xxxxxxxxxxxxxxxxx...'
      
        - Obj(xxxxxxxxxxxxxxxxx...
        ?                     -
        + Obj(xxxxxxxxxxxxxxxx...
      

      traceback:

      -   path: tests/test_utils_debug.py
        lineno: 66
        message: AssertionError
      

      longrepr:

      value = Obj(xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx), cutoff = 20
      expected = 'Obj(xxxxxxxxxxxxxxxxx...'
      
          @pytest.mark.parametrize(
              "value, cutoff, expected",
              [
                  ("abc", 10, "'abc'"),
                  ("a" * 100, 10, "'aaaaaaaaaa..."),
                  (12345, 10, "12345"),
                  ([0]*100, 15, str(repr([0]*100))[:15] + "..."),
                  (None, 10, "None"),
                  (type("Obj", (), {"__repr__": lambda self: "Obj(" + "x"*50 + ")"})(), 20, "Obj(xxxxxxxxxxxxxxxxx..."),
              ]
          )
      
          def test_short_repr(value, cutoff, expected):
      >       assert short_repr(value, cutoff) == expected
      E       AssertionError: assert 'Obj(xxxxxxxxxxxxxxxx...' == 'Obj(xxxxxxxxxxxxxxxxx...'
      E         
      E         - Obj(xxxxxxxxxxxxxxxxx...
      E         ?                     -
      E         + Obj(xxxxxxxxxxxxxxxx...
      
      tests/test_utils_debug.py:66: AssertionError
      

      📌 Teardown phase

      duration:

      0.00021793274208903313
      

      outcome:

      passed
      
  • 📄 test_utils_hastyepics.py

    Function: test_motor_instantiation_fast_vs_epics

    • Test 179

      📌 Setup phase

      duration:

      0.0001291581429541111
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.10081011615693569
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_hastyepics.py
      lineno: 37
      message: AssertionError: Fast version (0.009635s) should be faster than EPICS (0.000259s)
      assert 0.009635428991168737 < 0.00025889622047543527
      

      traceback:

      -   path: tests/test_utils_hastyepics.py
        lineno: 37
        message: AssertionError
      

      longrepr:

      def test_motor_instantiation_fast_vs_epics():
      
              fast_times = []
              slow_times = []
      
              # Mock to simulate a real EPICS moteur
              with patch('epics.Motor.get') as mock_get:
                  mock_get.return_value = 'motor'
      
                  # Mean of 10 runs
                  for _ in range(10):
                      t0 = time.perf_counter()
                      m_fast = Motor("TEST:MOTOR_t1")
                      t1 = time.perf_counter()
      
                      t2 = time.perf_counter()
                      m_slow = epics.Motor("TEST:MOTOR_t2")
                      t3 = time.perf_counter()
      
                      fast_times.append(t1 - t0)
                      slow_times.append(t3 - t2)
      
              avg_fast = sum(fast_times) / len(fast_times)
              avg_slow = sum(slow_times) / len(slow_times)
      
      >       assert avg_fast < avg_slow, f"Fast version ({avg_fast:.6f}s) should be faster than EPICS ({avg_slow:.6f}s)"
      E       AssertionError: Fast version (0.009635s) should be faster than EPICS (0.000259s)
      E       assert 0.009635428991168737 < 0.00025889622047543527
      
      tests/test_utils_hastyepics.py:37: AssertionError
      

      📌 Teardown phase

      duration:

      0.0004047625698149204
      

      outcome:

      passed
      

    Function: test_motor_without_suffix_and_dot

    • Test 180

      📌 Setup phase

      duration:

      0.00021741120144724846
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0017917151562869549
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_hastyepics.py
      lineno: 42
      message: AssertionError: assert 'TEST:MOTOR_1.' == 'TEST:MOTOR_1'
      
        - TEST:MOTOR_1
        + TEST:MOTOR_1.
        ?             +
      

      traceback:

      -   path: tests/test_utils_hastyepics.py
        lineno: 42
        message: AssertionError
      

      longrepr:

      def test_motor_without_suffix_and_dot():
              # Suffix .VAL ... dot should be stripped from name
              m1 = Motor("TEST:MOTOR_1.VAL")
      >       assert m1._prefix == "TEST:MOTOR_1"
      E       AssertionError: assert 'TEST:MOTOR_1.' == 'TEST:MOTOR_1'
      E         
      E         - TEST:MOTOR_1
      E         + TEST:MOTOR_1.
      E         ?             +
      
      tests/test_utils_hastyepics.py:42: AssertionError
      

      📌 Teardown phase

      duration:

      0.00017133960500359535
      

      outcome:

      passed
      

    Function: test_motor_initializes_device_attrs

    • Test 183

      📌 Setup phase

      duration:

      0.000109874177724123
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0013898806646466255
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_hastyepics.py
      lineno: 79
      message: AssertionError: VAL is not a valid PV object
      assert False
       +  where False = isinstance(None, <class 'epics.pv.PV'>)
       +    where <class 'epics.pv.PV'> = <module 'epics.pv' from '/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/pv.py'>.PV
       +      where <module 'epics.pv' from '/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/pv.py'> = epics.pv
      

      traceback:

      -   path: tests/test_utils_hastyepics.py
        lineno: 79
        message: AssertionError
      

      longrepr:

      def test_motor_initializes_device_attrs():
              # Check that Motor correctly initializes all Device PVs from _init_list
              m = Motor("TEST:MOTOR")
      
      
              print("_init_list contents:", m._init_list)
              print("All attributes on motor:", dir(m))
      
              for attr in m._init_list:
                  print(f"\nChecking attribute: {attr}")
                  assert hasattr(m, attr), f"Motor is missing attribute: {attr}"
                  pv = getattr(m, attr)
      
                  print(f"PV object: {pv}")
                  print("Type:", type(pv))
                  if pv is not None:
                      print(f"PV name: {pv.pvname}")
                      print(f"PV connected: {pv.connected}")
      
      >           assert isinstance(pv, epics.pv.PV), f"{attr} is not a valid PV object"
      E           AssertionError: VAL is not a valid PV object
      E           assert False
      E            +  where False = isinstance(None, <class 'epics.pv.PV'>)
      E            +    where <class 'epics.pv.PV'> = <module 'epics.pv' from '/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/pv.py'>.PV
      E            +      where <module 'epics.pv' from '/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/pv.py'> = epics.pv
      
      tests/test_utils_hastyepics.py:79: AssertionError
      

      📌 Teardown phase

      duration:

      0.00015501119196414948
      

      outcome:

      passed
      
  • 📄 test_utils_ipy.py

    Function: test_devices_repr_fallback_and_ignore

    • Test 187

      📌 Setup phase

      duration:

      0.0007191780023276806
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003782031126320362
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_ipy.py
      lineno: 78
      message: TypeError: 'devices' object is not callable
      

      traceback:

      -   path: tests/test_utils_ipy.py
        lineno: 78
        message: TypeError
      

      longrepr:

      simulate_ipython = <test_utils_ipy.fake_ipython.<locals>.FakeIPython object at 0x7f84ddb62a00>
      
          def test_devices_repr_fallback_and_ignore(simulate_ipython):
              ipy = simulate_ipython
              assert ipy is not None, "This test must be run in IPython (Jupyter or ipython shell)"
      
              # Clean up previous test variables
              for k in list(ipy.user_ns):
                  if k.startswith("test_") or k.startswith("_test_"):
                      del ipy.user_ns[k]
      
              # Valid BaseDevice subclasses
      
              class WithDescription(Device):
                  def __init__(self, ID):
                      super().__init__(ID)
                      self.description = "desc ok"
      
              class WithDoc(Device):
                  """doc ok"""
                  def __init__(self, ID):
                      super().__init__(ID)
      
              class WithName(Device):
                  def __init__(self, ID):
                      super().__init__(ID)
                      self.name = "name ok"
                      # remove description to force fallback
                      if hasattr(self, 'description'):
                          del self.description
      
              class WithOnlyID(Device):
                  def __init__(self, ID):
                      super().__init__(ID)
                      self.ID = ID
                      # remove name and description to force fallback to ID
                      if hasattr(self, 'description'):
                          del self.description
                      if hasattr(self, 'name'):
                          del self.name
      
              # Invalid or ignored objects
      
              ipy.user_ns["test_str"] = "i am a string"
              ipy.user_ns["test_int"] = 42
              ipy.user_ns["test_list"] = [1, 2, 3]
              ipy.user_ns["test_func"] = lambda x: x
              ipy.user_ns["test_module"] = types
              ipy.user_ns["test_fake_device"] = type("FakeDevice", (), {"ID": "123"})()
      
              ipy.user_ns["_test_hidden_device"] = WithDescription("HIDDEN")
      
              # Inject valid devices into IPython
      
              ipy.user_ns["test_desc"] = WithDescription("D1")      # has description
              ipy.user_ns["test_doc"] = WithDoc("D2")               # has __doc__
              ipy.user_ns["test_name"] = WithName("D3")             # has name
              ipy.user_ns["test_id"] = WithOnlyID("D4")             # fallback to ID
      
              # Execute devices()
      >       out = repr(devices())
      E       TypeError: 'devices' object is not callable
      
      tests/test_utils_ipy.py:78: TypeError
      

      📌 Teardown phase

      duration:

      0.0002969261258840561
      

      outcome:

      passed
      
  • 📄 test_utils_logcfg.py

    Function: test_import_logging_once_per_module

    • Test 199

      📌 Setup phase

      duration:

      0.00012649409472942352
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      1.820997535251081
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_logcfg.py
      lineno: 78
      message: AssertionError: Expected 1 import log for 'math', found 0
      assert 0 == 1
      

      traceback:

      -   path: tests/test_utils_logcfg.py
        lineno: 78
        message: AssertionError
      

      longrepr:

      def test_import_logging_once_per_module():
              code = textwrap.dedent("""
                  from slic.utils.logcfg import *
                  import math
                  import io
                  import random
              """)
      
              with tempfile.NamedTemporaryFile("w", suffix=".py", delete=False) as tmp:
                  tmp.write(code)
                  tmp_path = tmp.name
      
              env = os.environ.copy()
              root_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
              env["PYTHONPATH"] = root_path + os.pathsep + env.get("PYTHONPATH", "")
      
              result = subprocess.run([sys.executable, tmp_path], capture_output=True, text=True, env=env)
              os.remove(tmp_path)
      
              assert result.returncode == 0, f"Script failed:\n{result.stderr}"
      
              stderr = result.stderr
              print(stderr)
              lines = stderr.splitlines()
              for mod in ["math", "io", "random"]:
                  count = sum(1 for line in lines if f"importing: {mod}" in line)
      >           assert count == 1, f"Expected 1 import log for '{mod}', found {count}"
      E           AssertionError: Expected 1 import log for 'math', found 0
      E           assert 0 == 1
      
      tests/test_utils_logcfg.py:78: AssertionError
      

      📌 Teardown phase

      duration:

      0.00035211676731705666
      

      outcome:

      passed
      
  • 📄 test_utils_npy.py

    Function: test_nice_arange

    • Test 208
      params: start=5, stop=0, step=-1, expected="[5. 4. 3. 2. 1. 0.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 0
        step: -1
        expected: [5. 4. 3. 2. 1. 0.]
      id: 5-0--1-expected1
      

      📌 Setup phase

      duration:

      0.0003861812874674797
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009968639351427555
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-06, atol=0
      
      Mismatched elements: 6 / 6 (100%)
      Max absolute difference: 5.
      Max relative difference: 3.
       x: array([0., 1., 2., 3., 4., 5.])
       y: array([5., 4., 3., 2., 1., 0.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 16
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 5, stop = 0, step = -1, expected = array([5., 4., 3., 2., 1., 0.])
      
          @pytest.mark.parametrize("start, stop, step, expected", [
              (0, 5, 1, np.linspace(0, 5, 6)),                       # regular integer step
              (5, 0, -1, np.linspace(5, 0, 6)),                      # reversed with negative step
              (1, 2, 0.3, np.linspace(1, 2, 4)),                     # step doesn't divide evenly
              (-2, 2, 1.5, np.linspace(-2, 2, 3)),                   # centered range
              (2.5, 0.5, -0.4, np.linspace(2.5, 0.5, 6)),            # reversed float
          ])
          def test_nice_arange(start, stop, step, expected):
      >       np.testing.assert_allclose(nice_arange(start, stop, step), expected, rtol=1e-6)
      
      tests/test_utils_npy.py:16: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de767d30>, array([0., 1., 2., 3., 4., 5.]), array([5., 4., 3., 2., 1., 0.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-06, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-06, atol=0
      E           
      E           Mismatched elements: 6 / 6 (100%)
      E           Max absolute difference: 5.
      E           Max relative difference: 3.
      E            x: array([0., 1., 2., 3., 4., 5.])
      E            y: array([5., 4., 3., 2., 1., 0.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00024101417511701584
      

      outcome:

      passed
      
    • Test 210
      params: start=-2, stop=2, step=1.5, expected="[-2. 0. 2.]"

      📌 Runtime Parameters

      params:
        start: -2
        stop: 2
        step: 1.5
        expected: [-2.  0.  2.]
      id: -2-2-1.5-expected3
      

      📌 Setup phase

      duration:

      0.0003557302989065647
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00052639190107584
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-06, atol=0
      
      (shapes (4,), (3,) mismatch)
       x: array([-2.      , -0.666667,  0.666667,  2.      ])
       y: array([-2.,  0.,  2.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 16
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = -2, stop = 2, step = 1.5, expected = array([-2.,  0.,  2.])
      
          @pytest.mark.parametrize("start, stop, step, expected", [
              (0, 5, 1, np.linspace(0, 5, 6)),                       # regular integer step
              (5, 0, -1, np.linspace(5, 0, 6)),                      # reversed with negative step
              (1, 2, 0.3, np.linspace(1, 2, 4)),                     # step doesn't divide evenly
              (-2, 2, 1.5, np.linspace(-2, 2, 3)),                   # centered range
              (2.5, 0.5, -0.4, np.linspace(2.5, 0.5, 6)),            # reversed float
          ])
          def test_nice_arange(start, stop, step, expected):
      >       np.testing.assert_allclose(nice_arange(start, stop, step), expected, rtol=1e-6)
      
      tests/test_utils_npy.py:16: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6d5550>, array([-2.        , -0.66666667,  0.66666667,  2.        ]), array([-2.,  0.,  2.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-06, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-06, atol=0
      E           
      E           (shapes (4,), (3,) mismatch)
      E            x: array([-2.      , -0.666667,  0.666667,  2.      ])
      E            y: array([-2.,  0.,  2.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00023875432088971138
      

      outcome:

      passed
      
    • Test 211
      params: start=2.5, stop=0.5, step=-0.4, expected="[2.5 2.1 1.7 1.3 0.9 0.5]"

      📌 Runtime Parameters

      params:
        start: 2.5
        stop: 0.5
        step: -0.4
        expected: [2.5 2.1 1.7 1.3 0.9 0.5]
      id: 2.5-0.5--0.4-expected4
      

      📌 Setup phase

      duration:

      0.0003924691118299961
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0010299892164766788
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-06, atol=0
      
      Mismatched elements: 6 / 6 (100%)
      Max absolute difference: 2.
      Max relative difference: 4.
       x: array([0.5, 0.9, 1.3, 1.7, 2.1, 2.5])
       y: array([2.5, 2.1, 1.7, 1.3, 0.9, 0.5])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 16
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 2.5, stop = 0.5, step = -0.4
      expected = array([2.5, 2.1, 1.7, 1.3, 0.9, 0.5])
      
          @pytest.mark.parametrize("start, stop, step, expected", [
              (0, 5, 1, np.linspace(0, 5, 6)),                       # regular integer step
              (5, 0, -1, np.linspace(5, 0, 6)),                      # reversed with negative step
              (1, 2, 0.3, np.linspace(1, 2, 4)),                     # step doesn't divide evenly
              (-2, 2, 1.5, np.linspace(-2, 2, 3)),                   # centered range
              (2.5, 0.5, -0.4, np.linspace(2.5, 0.5, 6)),            # reversed float
          ])
          def test_nice_arange(start, stop, step, expected):
      >       np.testing.assert_allclose(nice_arange(start, stop, step), expected, rtol=1e-6)
      
      tests/test_utils_npy.py:16: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de767d30>, array([0.5, 0.9, 1.3, 1.7, 2.1, 2.5]), array([2.5, 2.1, 1.7, 1.3, 0.9, 0.5]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-06, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-06, atol=0
      E           
      E           Mismatched elements: 6 / 6 (100%)
      E           Max absolute difference: 2.
      E           Max relative difference: 4.
      E            x: array([0.5, 0.9, 1.3, 1.7, 2.1, 2.5])
      E            y: array([2.5, 2.1, 1.7, 1.3, 0.9, 0.5])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00028738705441355705
      

      outcome:

      passed
      

    Function: test_nice_steps_left_aligned

    • Test 223
      params: start=0, stop=5, step=2, endpoint=true, expected="[0. 2. 4. 6.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: True
        expected: [0. 2. 4. 6.]
      id: 0-5-2-True-expected0
      

      📌 Setup phase

      duration:

      0.0004288819618523121
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005205478519201279
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (3,), (4,) mismatch)
       x: array([0, 2, 4])
       y: array([0., 2., 4., 6.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 53
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 0, stop = 5, step = 2, endpoint = True
      expected = array([0., 2., 4., 6.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([0., 2., 4., 6.])),               # Normal case with endpoint overshooting
              (0, 5, 2, False, np.array([0., 2., 4.])),                  # No endpoint
              (-1, 2, 1.5, True, np.array([-1., 0.5, 2.])),              # Needs fractional alignment to include stop
              (-1, 2, 1.5, False, np.array([-1., 0.5])),                 # Same range but no endpoint
              (-2, 1, 1.2, True, np.array([-2., -0.8, 0.4, 1.6])),       # Step overshoots
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Backward steps with overshoot
              (5, 0, -2, False, np.array([5., 3., 1.])),                 # No endpoint, backward
          ])
          def test_nice_steps_left_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_left_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:53: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de752670>, array([0, 2, 4]), array([0., 2., 4., 6.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (3,), (4,) mismatch)
      E            x: array([0, 2, 4])
      E            y: array([0., 2., 4., 6.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00022271182388067245
      

      outcome:

      passed
      
    • Test 224
      params: start=0, stop=5, step=2, endpoint=false, expected="[0. 2. 4.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: False
        expected: [0. 2. 4.]
      id: 0-5-2-False-expected1
      

      📌 Setup phase

      duration:

      0.00038892682641744614
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000468977726995945
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (2,), (3,) mismatch)
       x: array([0, 2])
       y: array([0., 2., 4.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 53
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 0, stop = 5, step = 2, endpoint = False, expected = array([0., 2., 4.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([0., 2., 4., 6.])),               # Normal case with endpoint overshooting
              (0, 5, 2, False, np.array([0., 2., 4.])),                  # No endpoint
              (-1, 2, 1.5, True, np.array([-1., 0.5, 2.])),              # Needs fractional alignment to include stop
              (-1, 2, 1.5, False, np.array([-1., 0.5])),                 # Same range but no endpoint
              (-2, 1, 1.2, True, np.array([-2., -0.8, 0.4, 1.6])),       # Step overshoots
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Backward steps with overshoot
              (5, 0, -2, False, np.array([5., 3., 1.])),                 # No endpoint, backward
          ])
          def test_nice_steps_left_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_left_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:53: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de7f1940>, array([0, 2]), array([0., 2., 4.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (2,), (3,) mismatch)
      E            x: array([0, 2])
      E            y: array([0., 2., 4.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00022565992549061775
      

      outcome:

      passed
      
    • Test 227
      params: start=-2, stop=1, step=1.2, endpoint=true, expected="[-2. -0.8 0.4 1.6]"

      📌 Runtime Parameters

      params:
        start: -2
        stop: 1
        step: 1.2
        endpoint: True
        expected: [-2.  -0.8  0.4  1.6]
      id: -2-1-1.2-True-expected4
      

      📌 Setup phase

      duration:

      0.00038550328463315964
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004954352043569088
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (3,), (4,) mismatch)
       x: array([-2. , -0.8,  0.4])
       y: array([-2. , -0.8,  0.4,  1.6])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 53
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = -2, stop = 1, step = 1.2, endpoint = True
      expected = array([-2. , -0.8,  0.4,  1.6])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([0., 2., 4., 6.])),               # Normal case with endpoint overshooting
              (0, 5, 2, False, np.array([0., 2., 4.])),                  # No endpoint
              (-1, 2, 1.5, True, np.array([-1., 0.5, 2.])),              # Needs fractional alignment to include stop
              (-1, 2, 1.5, False, np.array([-1., 0.5])),                 # Same range but no endpoint
              (-2, 1, 1.2, True, np.array([-2., -0.8, 0.4, 1.6])),       # Step overshoots
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Backward steps with overshoot
              (5, 0, -2, False, np.array([5., 3., 1.])),                 # No endpoint, backward
          ])
          def test_nice_steps_left_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_left_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:53: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de728040>, array([-2. , -0.8,  0.4]), array([-2. , -0.8,  0.4,  1.6]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (3,), (4,) mismatch)
      E            x: array([-2. , -0.8,  0.4])
      E            y: array([-2. , -0.8,  0.4,  1.6])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.0002209222875535488
      

      outcome:

      passed
      
    • Test 228
      params: start=5, stop=0, step=-2, endpoint=true, expected="[ 5. 3. 1. -1.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 0
        step: -2
        endpoint: True
        expected: [ 5.  3.  1. -1.]
      id: 5-0--2-True-expected5
      

      📌 Setup phase

      duration:

      0.00038954662159085274
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048711104318499565
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (3,), (4,) mismatch)
       x: array([0, 2, 4])
       y: array([ 5.,  3.,  1., -1.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 53
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 5, stop = 0, step = -2, endpoint = True
      expected = array([ 5.,  3.,  1., -1.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([0., 2., 4., 6.])),               # Normal case with endpoint overshooting
              (0, 5, 2, False, np.array([0., 2., 4.])),                  # No endpoint
              (-1, 2, 1.5, True, np.array([-1., 0.5, 2.])),              # Needs fractional alignment to include stop
              (-1, 2, 1.5, False, np.array([-1., 0.5])),                 # Same range but no endpoint
              (-2, 1, 1.2, True, np.array([-2., -0.8, 0.4, 1.6])),       # Step overshoots
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Backward steps with overshoot
              (5, 0, -2, False, np.array([5., 3., 1.])),                 # No endpoint, backward
          ])
          def test_nice_steps_left_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_left_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:53: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6d5ee0>, array([0, 2, 4]), array([ 5.,  3.,  1., -1.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (3,), (4,) mismatch)
      E            x: array([0, 2, 4])
      E            y: array([ 5.,  3.,  1., -1.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.0002242070622742176
      

      outcome:

      passed
      
    • Test 229
      params: start=5, stop=0, step=-2, endpoint=false, expected="[5. 3. 1.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 0
        step: -2
        endpoint: False
        expected: [5. 3. 1.]
      id: 5-0--2-False-expected6
      

      📌 Setup phase

      duration:

      0.00037008011713624
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000488597434014082
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (2,), (3,) mismatch)
       x: array([0, 2])
       y: array([5., 3., 1.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 53
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 5, stop = 0, step = -2, endpoint = False, expected = array([5., 3., 1.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([0., 2., 4., 6.])),               # Normal case with endpoint overshooting
              (0, 5, 2, False, np.array([0., 2., 4.])),                  # No endpoint
              (-1, 2, 1.5, True, np.array([-1., 0.5, 2.])),              # Needs fractional alignment to include stop
              (-1, 2, 1.5, False, np.array([-1., 0.5])),                 # Same range but no endpoint
              (-2, 1, 1.2, True, np.array([-2., -0.8, 0.4, 1.6])),       # Step overshoots
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Backward steps with overshoot
              (5, 0, -2, False, np.array([5., 3., 1.])),                 # No endpoint, backward
          ])
          def test_nice_steps_left_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_left_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:53: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6faee0>, array([0, 2]), array([5., 3., 1.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (2,), (3,) mismatch)
      E            x: array([0, 2])
      E            y: array([5., 3., 1.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.0002206210047006607
      

      outcome:

      passed
      

    Function: test_nice_steps_right_aligned

    • Test 230
      params: start=0, stop=5, step=2, endpoint=true, expected="[6. 4. 2. 0.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: True
        expected: [6. 4. 2. 0.]
      id: 0-5-2-True-expected0
      

      📌 Setup phase

      duration:

      0.00037200283259153366
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004958151839673519
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (3,), (4,) mismatch)
       x: array([1, 3, 5])
       y: array([6., 4., 2., 0.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 0, stop = 5, step = 2, endpoint = True
      expected = array([6., 4., 2., 0.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6fa9d0>, array([1, 3, 5]), array([6., 4., 2., 0.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (3,), (4,) mismatch)
      E            x: array([1, 3, 5])
      E            y: array([6., 4., 2., 0.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00022894702851772308
      

      outcome:

      passed
      
    • Test 231
      params: start=0, stop=5, step=2, endpoint=false, expected="[4. 2. 0.]"

      📌 Runtime Parameters

      params:
        start: 0
        stop: 5
        step: 2
        endpoint: False
        expected: [4. 2. 0.]
      id: 0-5-2-False-expected1
      

      📌 Setup phase

      duration:

      0.00039447005838155746
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004825047217309475
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (2,), (3,) mismatch)
       x: array([3, 5])
       y: array([4., 2., 0.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 0, stop = 5, step = 2, endpoint = False, expected = array([4., 2., 0.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6d5ee0>, array([3, 5]), array([4., 2., 0.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (2,), (3,) mismatch)
      E            x: array([3, 5])
      E            y: array([4., 2., 0.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00022887205705046654
      

      outcome:

      passed
      
    • Test 232
      params: start=-1, stop=2, step=1.5, endpoint=true, expected="[ 2. 0.5 -1. ]"

      📌 Runtime Parameters

      params:
        start: -1
        stop: 2
        step: 1.5
        endpoint: True
        expected: [ 2.   0.5 -1. ]
      id: -1-2-1.5-True-expected2
      

      📌 Setup phase

      duration:

      0.0003971369005739689
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008185491897165775
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      Mismatched elements: 2 / 3 (66.7%)
      Max absolute difference: 3.
      Max relative difference: 3.
       x: array([-1. ,  0.5,  2. ])
       y: array([ 2. ,  0.5, -1. ])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = -1, stop = 2, step = 1.5, endpoint = True
      expected = array([ 2. ,  0.5, -1. ])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84dd3d14c0>, array([-1. ,  0.5,  2. ]), array([ 2. ,  0.5, -1. ]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           Mismatched elements: 2 / 3 (66.7%)
      E           Max absolute difference: 3.
      E           Max relative difference: 3.
      E            x: array([-1. ,  0.5,  2. ])
      E            y: array([ 2. ,  0.5, -1. ])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00023634964600205421
      

      outcome:

      passed
      
    • Test 233
      params: start=-1, stop=2, step=1.5, endpoint=false, expected="[ 0.5 -1. ]"

      📌 Runtime Parameters

      params:
        start: -1
        stop: 2
        step: 1.5
        endpoint: False
        expected: [ 0.5 -1. ]
      id: -1-2-1.5-False-expected3
      

      📌 Setup phase

      duration:

      0.0004168199375271797
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008023628033697605
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      Mismatched elements: 1 / 2 (50%)
      Max absolute difference: 3.
      Max relative difference: 3.
       x: array([0.5, 2. ])
       y: array([ 0.5, -1. ])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = -1, stop = 2, step = 1.5, endpoint = False
      expected = array([ 0.5, -1. ])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de7f1c10>, array([0.5, 2. ]), array([ 0.5, -1. ]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           Mismatched elements: 1 / 2 (50%)
      E           Max absolute difference: 3.
      E           Max relative difference: 3.
      E            x: array([0.5, 2. ])
      E            y: array([ 0.5, -1. ])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00024971412494778633
      

      outcome:

      passed
      
    • Test 234
      params: start=5, stop=0, step=-2, endpoint=true, expected="[ 5. 3. 1. -1.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 0
        step: -2
        endpoint: True
        expected: [ 5.  3.  1. -1.]
      id: 5-0--2-True-expected4
      

      📌 Setup phase

      duration:

      0.000391536857932806
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004950431175529957
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (3,), (4,) mismatch)
       x: array([1, 3, 5])
       y: array([ 5.,  3.,  1., -1.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 5, stop = 0, step = -2, endpoint = True
      expected = array([ 5.,  3.,  1., -1.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84de6d5ee0>, array([1, 3, 5]), array([ 5.,  3.,  1., -1.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (3,), (4,) mismatch)
      E            x: array([1, 3, 5])
      E            y: array([ 5.,  3.,  1., -1.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.0002408982254564762
      

      outcome:

      passed
      
    • Test 235
      params: start=5, stop=0, step=-2, endpoint=false, expected="[ 3. 1. -1.]"

      📌 Runtime Parameters

      params:
        start: 5
        stop: 0
        step: -2
        endpoint: False
        expected: [ 3.  1. -1.]
      id: 5-0--2-False-expected5
      

      📌 Setup phase

      duration:

      0.00039698928594589233
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048424117267131805
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (2,), (3,) mismatch)
       x: array([3, 5])
       y: array([ 3.,  1., -1.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = 5, stop = 0, step = -2, endpoint = False
      expected = array([ 3.,  1., -1.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84dd3d1a60>, array([3, 5]), array([ 3.,  1., -1.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (2,), (3,) mismatch)
      E            x: array([3, 5])
      E            y: array([ 3.,  1., -1.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00023621786385774612
      

      outcome:

      passed
      
    • Test 236
      params: start=-3, stop=3, step=2, endpoint=true, expected="[ 5. 3. 1. -1. -3.]"

      📌 Runtime Parameters

      params:
        start: -3
        stop: 3
        step: 2
        endpoint: True
        expected: [ 5.  3.  1. -1. -3.]
      id: -3-3-2-True-expected6
      

      📌 Setup phase

      duration:

      0.0004012179560959339
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005106301978230476
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/contextlib.py
      lineno: 75
      message: AssertionError: 
      Not equal to tolerance rtol=1e-07, atol=0
      
      (shapes (4,), (5,) mismatch)
       x: array([-3, -1,  1,  3])
       y: array([ 5.,  3.,  1., -1., -3.])
      

      traceback:

      -   path: tests/test_utils_npy.py
        lineno: 67
        message: None
      -   path: .pixi/envs/default/lib/python3.8/contextlib.py
        lineno: 75
        message: AssertionError
      

      longrepr:

      start = -3, stop = 3, step = 2, endpoint = True
      expected = array([ 5.,  3.,  1., -1., -3.])
      
          @pytest.mark.parametrize("start, stop, step, endpoint, expected", [
              (0, 5, 2, True, np.array([6., 4., 2., 0.])),               # Right-aligned, overshoots left
              (0, 5, 2, False, np.array([4., 2., 0.])),                  # Right-aligned, no endpoint
              (-1, 2, 1.5, True, np.array([2., 0.5, -1.])),              # Step doesn t divide evenly, reverse it
              (-1, 2, 1.5, False, np.array([0.5, -1.])),                 # Without endpoint
              (5, 0, -2, True, np.array([5., 3., 1., -1.])),             # Negative step, includes endpoint overshoot
              (5, 0, -2, False, np.array([3., 1., -1.])),                # No endpoint, skips last one
              (-3, 3, 2, True, np.array([5., 3., 1., -1., -3.])),        # Large symmetric range, reverse
          ])
          def test_nice_steps_right_aligned(start, stop, step, endpoint, expected):
      >       np.testing.assert_allclose(nice_steps_right_aligned(start, stop, step, endpoint), expected)
      
      tests/test_utils_npy.py:67: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      args = (<function assert_allclose.<locals>.compare at 0x7f84dd3d1940>, array([-3, -1,  1,  3]), array([ 5.,  3.,  1., -1., -3.]))
      kwds = {'equal_nan': True, 'err_msg': '', 'header': 'Not equal to tolerance rtol=1e-07, atol=0', 'verbose': True}
      
          @wraps(func)
          def inner(*args, **kwds):
              with self._recreate_cm():
      >           return func(*args, **kwds)
      E           AssertionError: 
      E           Not equal to tolerance rtol=1e-07, atol=0
      E           
      E           (shapes (4,), (5,) mismatch)
      E            x: array([-3, -1,  1,  3])
      E            y: array([ 5.,  3.,  1., -1., -3.])
      
      .pixi/envs/default/lib/python3.8/contextlib.py:75: AssertionError
      

      📌 Teardown phase

      duration:

      0.00025429297238588333
      

      outcome:

      passed
      
  • 📄 test_utils_tqdm_mod.py

    Function: test_float_alignment_in_bar

    • Test 339

      📌 Setup phase

      duration:

      0.0001131896860897541
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0012558898888528347
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_tqdm_mod.py
      lineno: 130
      message: assert 2 == 1
       +  where 2 = len({50, 65})
       +    where {50, 65} = set([50, 65, 65, 65, 65])
      

      traceback:

      -   path: tests/test_utils_tqdm_mod.py
        lineno: 130
        message: AssertionError
      

      longrepr:

      def test_float_alignment_in_bar():
              # Capture the tqdm output into a string buffer
              f = io.StringIO()
              with redirect_stdout(f):
                  bar = tqdm_mod(total=100.12, desc="AlignBar", file=f, miniters=1, mininterval=0)
                  bar.set(1.3333)
                  bar.set(12.5)
                  bar.set(99.89)
                  bar.set(100.12)
                  bar.close()
      
              # Extract lines containing the label
              lines = extract_lines(f.getvalue(), "AlignBar")
      
              # Expected formatted values using format_sizeof
              expected_values = [
                  "1.3/100.1",
                  "12.5/100.1",
                  "99.9/100.1",
                  "100.1/100.1",
              ]
      
              # Extract the actual padded float/total strings from the full lines
              values = []
              for line in lines:
                  match = re.search(r"(\d{1,3}\.\d)/100\.1", line)
                  if match:
                      values.append(match.group(0))
      
              # Ensure raw 100.12 never appears : format_sizeof must have truncated it
              assert all("100.12" not in line for line in lines), "Unrounded value '100.12' found in output!"
      
              # Check all expected values appear rounded as expected by format_sizeof
              for expected in expected_values:
                  assert expected in values, f"Missing expected value: {expected}"
      
              # Check that all values are visually aligned, output with same length, to ensure that format_sizeof add the good number avec spaces
              print("\n")
              bar_segments = []
              for line in lines:
                  match = re.search(r".*?\]", line)
                  if match:
                      bar_segments.append(match.group(0))
                      print(match.group(0))
      
              lengths = [len(seg) for seg in bar_segments]
      >       assert len(set(lengths)) == 1
      E       assert 2 == 1
      E        +  where 2 = len({50, 65})
      E        +    where {50, 65} = set([50, 65, 65, 65, 65])
      
      tests/test_utils_tqdm_mod.py:130: AssertionError
      

      📌 Teardown phase

      duration:

      0.00019351113587617874
      

      outcome:

      passed
      

📚 Collected files

(1 tests)
    • Outcome: passed
    • result:
    -   nodeid: .
      type: Dir
    
ci-reports (13 tests)
  • ci-reports
    • Outcome: passed
    • result:
    -   nodeid: ci-reports/allure
      type: Dir
    -   nodeid: ci-reports/junit
      type: Dir
    -   nodeid: ci-reports/markdown
      type: Dir
    
    • ci-reports/allure
      • Outcome: passed
      • result:
      -   nodeid: ci-reports/allure/data
        type: Dir
      -   nodeid: ci-reports/allure/export
        type: Dir
      -   nodeid: ci-reports/allure/history
        type: Dir
      -   nodeid: ci-reports/allure/plugin
        type: Dir
      -   nodeid: ci-reports/allure/widgets
        type: Dir
      
    • ci-reports/allure/data
      • Outcome: passed
      • result:
      -   nodeid: ci-reports/allure/data/test-cases
        type: Dir
      
    • ci-reports/allure/data/test-cases
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/export
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/history
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/plugin
      • Outcome: passed
      • result:
      -   nodeid: ci-reports/allure/plugin/behaviors
        type: Dir
      -   nodeid: ci-reports/allure/plugin/packages
        type: Dir
      -   nodeid: ci-reports/allure/plugin/screen-diff
        type: Dir
      
    • ci-reports/allure/plugin/behaviors
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/plugin/packages
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/plugin/screen-diff
      • Outcome: passed
      • result:
      []
      
    • ci-reports/allure/widgets
      • Outcome: passed
      • result:
      []
      
    • ci-reports/junit
      • Outcome: passed
      • result:
      []
      
    • ci-reports/markdown
      • Outcome: passed
      • result:
      []
      
outputs (1 tests)
  • outputs
    • Outcome: passed
    • result:
    []
    
slic (30 tests)
  • slic
    • Outcome: passed
    • result:
    -   nodeid: slic/core
      type: Package
    -   nodeid: slic/devices
      type: Package
    -   nodeid: slic/gui
      type: Package
    -   nodeid: slic/utils
      type: Package
    
    • slic/core
      • Outcome: passed
      • result:
      -   nodeid: slic/core/acquisition
        type: Package
      -   nodeid: slic/core/adjustable
        type: Package
      -   nodeid: slic/core/condition
        type: Package
      -   nodeid: slic/core/device
        type: Package
      -   nodeid: slic/core/scanner
        type: Package
      -   nodeid: slic/core/sensor
        type: Package
      -   nodeid: slic/core/task
        type: Package
      
    • slic/core/acquisition
      • Outcome: passed
      • result:
      -   nodeid: slic/core/acquisition/broker
        type: Package
      
    • slic/core/acquisition/broker
      • Outcome: passed
      • result:
      []
      
    • slic/core/adjustable
      • Outcome: passed
      • result:
      []
      
    • slic/core/condition
      • Outcome: passed
      • result:
      []
      
    • slic/core/device
      • Outcome: passed
      • result:
      []
      
    • slic/core/scanner
      • Outcome: passed
      • result:
      []
      
    • slic/core/sensor
      • Outcome: passed
      • result:
      []
      
    • slic/core/task
      • Outcome: passed
      • result:
      []
      
    • slic/devices
      • Outcome: passed
      • result:
      -   nodeid: slic/devices/cameras
        type: Package
      -   nodeid: slic/devices/endstations
        type: Package
      -   nodeid: slic/devices/general
        type: Package
      -   nodeid: slic/devices/loptics
        type: Package
      -   nodeid: slic/devices/timing
        type: Package
      -   nodeid: slic/devices/xdiagnostics
        type: Package
      -   nodeid: slic/devices/xoptics
        type: Package
      
    • slic/devices/cameras
      • Outcome: passed
      • result:
      []
      
    • slic/devices/endstations
      • Outcome: passed
      • result:
      []
      
    • slic/devices/general
      • Outcome: passed
      • result:
      -   nodeid: slic/devices/general/detectors
        type: Package
      -   nodeid: slic/devices/general/unused
        type: Dir
      
    • slic/devices/general/detectors
      • Outcome: passed
      • result:
      []
      
    • slic/devices/general/unused
      • Outcome: passed
      • result:
      []
      
    • slic/devices/loptics
      • Outcome: passed
      • result:
      []
      
    • slic/devices/timing
      • Outcome: passed
      • result:
      -   nodeid: slic/devices/timing/events
        type: Package
      
    • slic/devices/timing/events
      • Outcome: passed
      • result:
      []
      
    • slic/devices/xdiagnostics
      • Outcome: passed
      • result:
      []
      
    • slic/devices/xoptics
      • Outcome: passed
      • result:
      -   nodeid: slic/devices/xoptics/slits
        type: Package
      -   nodeid: slic/devices/xoptics/unused
        type: Dir
      
    • slic/devices/xoptics/slits
      • Outcome: passed
      • result:
      []
      
    • slic/devices/xoptics/unused
      • Outcome: passed
      • result:
      []
      
    • slic/gui
      • Outcome: passed
      • result:
      -   nodeid: slic/gui/daqpanels
        type: Package
      -   nodeid: slic/gui/widgets
        type: Package
      
    • slic/gui/daqpanels
      • Outcome: passed
      • result:
      []
      
    • slic/gui/widgets
      • Outcome: passed
      • result:
      []
      
    • slic/utils
      • Outcome: passed
      • result:
      -   nodeid: slic/utils/ioc
        type: Package
      -   nodeid: slic/utils/unused
        type: Dir
      
    • slic/utils/ioc
      • Outcome: passed
      • result:
      []
      
    • slic/utils/unused
      • Outcome: passed
      • result:
      -   nodeid: slic/utils/unused/xsim
        type: Package
      
    • slic/utils/unused/xsim
      • Outcome: passed
      • result:
      []
      
temp-ci (1 tests)
  • temp-ci
    • Outcome: passed
    • result:
    []
    
tests (32 tests)
  • tests
    • Outcome: passed
    • result:
    -   nodeid: tests/test_utils_argfwd.py
      type: Module
    -   nodeid: tests/test_utils_ask_yes_no.py
      type: Module
    -   nodeid: tests/test_utils_channels.py
      type: Module
    -   nodeid: tests/test_utils_config.py
      type: Module
    -   nodeid: tests/test_utils_cpint.py
      type: Module
    -   nodeid: tests/test_utils_debug.py
      type: Module
    -   nodeid: tests/test_utils_dictext.py
      type: Module
    -   nodeid: tests/test_utils_dotdir.py
      type: Module
    -   nodeid: tests/test_utils_eval.py
      type: Module
    -   nodeid: tests/test_utils_exceptions.py
      type: Module
    -   nodeid: tests/test_utils_get_adj.py
      type: Module
    -   nodeid: tests/test_utils_hastyepics.py
      type: Module
    -   nodeid: tests/test_utils_ipy.py
      type: Module
    -   nodeid: tests/test_utils_jsonext.py
      type: Module
    -   nodeid: tests/test_utils_lazypv.py
      type: Module
    -   nodeid: tests/test_utils_logcfg.py
      type: Module
    -   nodeid: tests/test_utils_logign.py
      type: Module
    -   nodeid: tests/test_utils_metaclasses.py
      type: Module
    -   nodeid: tests/test_utils_npy.py
      type: Module
    -   nodeid: tests/test_utils_path.py
      type: Module
    -   nodeid: tests/test_utils_picklio.py
      type: Module
    -   nodeid: tests/test_utils_printing.py
      type: Module
    -   nodeid: tests/test_utils_rangebar.py
      type: Module
    -   nodeid: tests/test_utils_sendmail.py
      type: Module
    -   nodeid: tests/test_utils_snapshot.py
      type: Module
    -   nodeid: tests/test_utils_termtitle.py
      type: Module
    -   nodeid: tests/test_utils_tqdm_mod.py
      type: Module
    -   nodeid: tests/test_utils_trinary.py
      type: Module
    -   nodeid: tests/test_utils_typecast.py
      type: Module
    -   nodeid: tests/test_utils_utils.py
      type: Module
    -   nodeid: tests/test_utils_xrange.py
      type: Module
    
    • tests/test_utils_argfwd.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_argfwd.py::test_split_at[lst0-2-expected0]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_argfwd.py::test_split_at[lst1-1-expected1]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_argfwd.py::test_split_at[lst2-0-expected2]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_argfwd.py::test_merge_lists_unique[a0-b0-expected0]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_argfwd.py::test_merge_lists_unique[a1-b1-expected1]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_argfwd.py::test_merge_lists_unique[a2-b2-expected2]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_argfwd.py::test_merge_dicts_unique[a0-b0-expected0]
        type: Function
        lineno: 26
      -   nodeid: tests/test_utils_argfwd.py::test_merge_dicts_unique[a1-b1-expected1]
        type: Function
        lineno: 26
      -   nodeid: tests/test_utils_argfwd.py::test_merge_dicts_unique[a2-b2-expected2]
        type: Function
        lineno: 26
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_pos_basic[pos0-expected_names0]
        type: Function
        lineno: 35
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_pos_basic[pos1-expected_names1]
        type: Function
        lineno: 35
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_pos_basic[pos2-expected_names2]
        type: Function
        lineno: 35
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_kw_basic[kw0-expected_keys0-expected_defaults0]
        type: Function
        lineno: 48
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_kw_basic[kw1-expected_keys1-expected_defaults1]
        type: Function
        lineno: 48
      -   nodeid: tests/test_utils_argfwd.py::test_make_params_kw_basic[kw2-expected_keys2-expected_defaults2]
        type: Function
        lineno: 48
      -   nodeid: tests/test_utils_argfwd.py::test_make_signature_parametrized[pos0-kw0-(x, y, z=3)]
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_argfwd.py::test_make_signature_parametrized[pos1-kw1-(a, b=1, c=2)]
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_argfwd.py::test_make_signature_parametrized[pos2-kw2-(flag=False)]
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_argfwd.py::test_get_args_parametrized[<lambda>-expected_pos0-expected_kw0]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_argfwd.py::test_get_args_parametrized[<lambda>-expected_pos1-expected_kw1]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_argfwd.py::test_get_args_parametrized[<lambda>-expected_pos2-expected_kw2]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_argfwd.py::test_signature_visible[wrap_all-(a, b, d=30, c=10)]
        type: Function
        lineno: 104
      -   nodeid: tests/test_utils_argfwd.py::test_signature_visible[wrap_skip-(a, b, c=10, d=20)]
        type: Function
        lineno: 104
      -   nodeid: tests/test_utils_argfwd.py::test_signature_visible[wrap_ignore_all-(x, y, c=10, d=20)]
        type: Function
        lineno: 104
      -   nodeid: tests/test_utils_argfwd.py::test_wrapper_behavior[wrap_all-args0-kwargs0-36]
        type: Function
        lineno: 112
      -   nodeid: tests/test_utils_argfwd.py::test_wrapper_behavior[wrap_all-args1-kwargs1-11]
        type: Function
        lineno: 112
      -   nodeid: tests/test_utils_argfwd.py::test_wrapper_behavior[wrap_skip-args2-kwargs2-10]
        type: Function
        lineno: 112
      -   nodeid: tests/test_utils_argfwd.py::test_wrapper_behavior[wrap_ignore_all-args3-kwargs3-10]
        type: Function
        lineno: 112
      
    • tests/test_utils_ask_yes_no.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-y-True-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-yes-True-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-n-False-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-no-False-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-user_input4-True-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-user_input5-False-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[None-user_input6-True-Question? [y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[y-y-True-Question? [Y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[y-n-False-Question? [Y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[y--True-Question? [Y/n] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[n-y-True-Question? [y/N] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[n-n-False-Question? [y/N] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no[n--False-Question? [y/N] ]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[None-KeyboardInterrupt-False-n]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[None-KeyboardInterrupt-True-y]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[y-KeyboardInterrupt-False-n]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[y-KeyboardInterrupt-True-y]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[n-KeyboardInterrupt-False-n]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[None-user_input5-False-n]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[None-user_input6-True-y]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[None-user_input7-False-None]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[n-user_input8-False-None]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c[n-user_input9-False-Invalid]
        type: Function
        lineno: 46
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-EOFError-False-n]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-EOFError-True-y]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-EOFError-True-y]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-EOFError-True-y]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-EOFError-False-n]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input5-True-y]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input6-False-n]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-EOFError-True-None]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-EOFError-False-None]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input9-True-None]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-user_input10-False-None]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input11-True-None]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input12-False-n]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[None-user_input13-True-y]
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_mixed_sequences[None-invalid-None-user_input0-False]
        type: Function
        lineno: 117
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_mixed_sequences[None-None-notananswer-user_input1-True]
        type: Function
        lineno: 117
      -   nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_mixed_sequences[None-n-nop-user_input2-False]
        type: Function
        lineno: 117
      
    • tests/test_utils_channels.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_channels.py::test_load_channels_and_channels_class_with_professional_names
        type: Function
        lineno: 42
      
    • tests/test_utils_config.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_config.py::test_config_with_nested_and_list_data
        type: Function
        lineno: 15
      -   nodeid: tests/test_utils_config.py::test_config_with_strange_and_edge_keys
        type: Function
        lineno: 73
      
    • tests/test_utils_cpint.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[red]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[blue]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[yellow]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[green]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[cyan]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[magenta]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[white]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_load_color_variants_all_keys_and_types[black]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects0-color_spec0- | -['Fancy', 'list'] | {'a': 7} | None-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects1-color_spec1- - -{'k': [1, 2]} - 99 - ['X', ['Y']]-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects2-color_spec2- / -[] / {} / End-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects3-color_spec3-;-['', [3, 4]];done;0-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects4-color_spec4-::-['alpha', None]::['beta', {}]::stop-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects5-color_spec5- ... -['deep', ['deeper', ['deepest']]] ... X-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects6-color_spec6- // -{'dict': {'nested': [4, 5]}} // [True, False] // 6.28-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects7-color_spec7-==-['A', ['B']]==string==C-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects8-color_spec8- ++ -['Test', None, []] ++ {'v': 0}-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects9-None-;-['no', 'color'];plain-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects10-None- | -['simple'] |  | 12-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects11-None- : -[['very', 'deep']] : {'ok': True}-None]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects12-color_spec12-|-['fail', 'color']|123-ValueError]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects13-color_spec13- * -['error'] * {}-ValueError]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects14-color_spec14-//-['nope']//['bad']-ValueError]
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_cpint.py::test_cprint_all_cases_fancy[objects15-color_spec15----wrong--base-ValueError]
        type: Function
        lineno: 24
      
    • tests/test_utils_debug.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_debug.py::test_traceable[A-entry0-creating: A(10, 20)]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_debug.py::test_traceable[A-entry1-creating: A(10, 20, e=100)]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_debug.py::test_traceable[A-entry2-creating: A('foo', [1, 2, 3], flag=True, data={'x': 9})]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_debug.py::test_traceable[A-entry3-creating: A(CustomObj(big), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], name='test', meta='yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...)]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_debug.py::test_traceable[A-entry4-creating: A('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA..., [0, 0, 0, 0, 0])]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_debug.py::test_short_repr[abc-10-'abc']
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_debug.py::test_short_repr[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10-'aaaaaaaaaa...]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_debug.py::test_short_repr[12345-10-12345]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_debug.py::test_short_repr[value3-15-[0, 0, 0, 0, 0,...]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_debug.py::test_short_repr[None-10-None]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_debug.py::test_short_repr[value5-20-Obj(xxxxxxxxxxxxxxxxx...]
        type: Function
        lineno: 52
      
    • tests/test_utils_dictext.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_getattr[data0-x-1]
        type: Function
        lineno: 12
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_getattr[data1-world-ok]
        type: Function
        lineno: 12
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_getattr[data2-outer-expected2]
        type: Function
        lineno: 12
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_setattr[initial0-nouveau-123]
        type: Function
        lineno: 26
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_setattr[initial1-b-valeur]
        type: Function
        lineno: 26
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_delattr[initial0-a-expected_keys0]
        type: Function
        lineno: 40
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_delattr[initial1-k-expected_keys1]
        type: Function
        lineno: 40
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_dir[data0-expected_keys0]
        type: Function
        lineno: 55
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_dir[data1-expected_keys1]
        type: Function
        lineno: 55
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_getattr_and_missing[data0-x-1-None]
        type: Function
        lineno: 69
      -   nodeid: tests/test_utils_dictext.py::test_attrdict_getattr_and_missing[data1-missing-None-'MyDict' object has no attribute 'missing']
        type: Function
        lineno: 69
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs0-None-kwargs0-expected0]
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs1-other1-kwargs1-expected1]
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs2-other2-kwargs2-expected2]
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs3-None-kwargs3-expected3]
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs4-other4-kwargs4-expected4]
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_dictext.py::test_dictupdatemixin_init_and_update[init_kwargs5-other5-kwargs5-expected5]
        type: Function
        lineno: 90
      
    • tests/test_utils_dotdir.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_dotdir.py::test_dotdir_creation_and_base_exists
        type: Function
        lineno: 14
      -   nodeid: tests/test_utils_dotdir.py::test_dotdir_repr_returns_path_str
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_dotdir.py::test_dotdir_call
        type: Function
        lineno: 35
      
    • tests/test_utils_eval.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[1 + 2-3]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[4 - 2-2]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[3 * 5-15]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[10 / 2-5.0]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[10 % 3-1]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[-5--5]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[+7-7]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[1 + 2 * 3-7]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[(1 + 2) * 3-9]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[-(-3)-3]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[-2 + 4 * 2-6]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[(4 + 5) * (6 - 1)-45]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[(((3)))-3]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[-(-(-2))--2]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[3 + +4-7]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[3 + -4--1]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[True + 1-2]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid['string'-string]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid[1e1000 * 1e1000-inf]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_valid['a' + 'b'-ab]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[2 ** 3-Unsupported BinOp Pow]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[3 << 1-Unsupported BinOp LShift]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[1 < 2-Unsupported node type Compare]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[abs(3)-Unsupported node type Call]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[a + 2-Unsupported node type Name]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[string-Unsupported node type Name]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[[1, 2] + [3]-Unsupported node type List]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_raises_with_message[{1: 2}-Unsupported node type Dict]
        type: Function
        lineno: 33
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_runtime_errors[1 / 0-ZeroDivisionError]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_eval.py::test_arithmetic_eval_runtime_errors[10 % 0-ZeroDivisionError]
        type: Function
        lineno: 52
      -   nodeid: tests/test_utils_eval.py::test_forgiving_eval[1 + 2-3]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_eval.py::test_forgiving_eval[bad + 2-bad + 2]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_eval.py::test_forgiving_eval[1 / 0-1 / 0]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_eval.py::test_forgiving_eval[2 ** 10-2 ** 10]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_eval.py::test_defaulting_eval[3 * 4-0-12]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_eval.py::test_defaulting_eval[invalid + 1-99-99]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_eval.py::test_defaulting_eval[1 / 0--1--1]
        type: Function
        lineno: 71
      -   nodeid: tests/test_utils_eval.py::test_defaulting_eval[2 ** 10-42-42]
        type: Function
        lineno: 71
      
    • tests/test_utils_exceptions.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_exceptions.py::test_chained_exception_various[cause_key_error-High-level task failed\ncaused by KeyError: 'missing']
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_exceptions.py::test_chained_exception_various[cause_index_error-High-level task failed\ncaused by IndexError: list index out of range]
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_exceptions.py::test_chained_exception_various[cause_zero_division-High-level task failed\ncaused by ZeroDivisionError: division by zero]
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_exceptions.py::test_chained_exception_various[cause_value_error-High-level task failed\ncaused by ValueError: invalid literal for int() with base 10: 'not_a_number']
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_exceptions.py::test_chained_exception_various[cause_type_error-High-level task failed\ncaused by TypeError: can only concatenate str (not "int") to str]
        type: Function
        lineno: 28
      -   nodeid: tests/test_utils_exceptions.py::test_printed_exception[cause_key_error-KeyError: 'missing']
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_exceptions.py::test_printed_exception[cause_index_error-IndexError: list index out of range]
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_exceptions.py::test_printed_exception[cause_zero_division-ZeroDivisionError: division by zero]
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_exceptions.py::test_printed_exception[cause_value_error-ValueError: invalid literal for int() with base 10: 'not_a_number']
        type: Function
        lineno: 60
      -   nodeid: tests/test_utils_exceptions.py::test_printed_exception[cause_type_error-TypeError: can only concatenate str (not "int") to str]
        type: Function
        lineno: 60
      
    • tests/test_utils_get_adj.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_get_adj.py::test_get_adj_success
        type: Function
        lineno: 23
      -   nodeid: tests/test_utils_get_adj.py::test_get_adj_not_found
        type: Function
        lineno: 27
      -   nodeid: tests/test_utils_get_adj.py::test_ensure_adjs_mixed
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_get_adj.py::test_get_adjs_filter
        type: Function
        lineno: 37
      
    • tests/test_utils_hastyepics.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_instantiation_fast_vs_epics
        type: Function
        lineno: 11
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_without_suffix_and_dot
        type: Function
        lineno: 38
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_invalid_name_raises
        type: Function
        lineno: 50
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_init_list_has_no_disabled
        type: Function
        lineno: 55
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_initializes_device_attrs
        type: Function
        lineno: 59
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_pv_connection_skipped_by_default
        type: Function
        lineno: 82
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_adds_all_extras_pvs
        type: Function
        lineno: 90
      -   nodeid: tests/test_utils_hastyepics.py::test_motor_PV_method_exists_and_works
        type: Function
        lineno: 109
      
    • tests/test_utils_ipy.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_ipy.py::test_devices_repr_fallback_and_ignore
        type: Function
        lineno: 19
      
    • tests/test_utils_jsonext.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj0-expected0]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj1-42]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[(1-1j)-expected2]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj3-/tmp/file.txt]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj4-expected4]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj5-expected5]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj6-expected6]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_jsonext.py::test_json_validate_save_load[input_obj7-expected7]
        type: Function
        lineno: 7
      
    • tests/test_utils_lazypv.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_lazypv.py::test_getattr
        type: Function
        lineno: 14
      
    • tests/test_utils_logcfg.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_logcfg.py::test_custom_log_outputs[LONG-<lambda>-This is a LONG message]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_logcfg.py::test_custom_log_outputs[ENLARGE-<lambda>-Please ENLARGE this!]
        type: Function
        lineno: 21
      -   nodeid: tests/test_utils_logcfg.py::test_import_logging_once_per_module
        type: Function
        lineno: 51
      
    • tests/test_utils_logign.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_logign.py::test_ignore_log_msg_behavior[WARNING-This should be ignored-This should appear]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_logign.py::test_ignore_log_msg_behavior[ENLARGE-ENLARGE this-Keep this ENLARGE]
        type: Function
        lineno: 9
      -   nodeid: tests/test_utils_logign.py::test_ignore_only_by_level
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_logign.py::test_ignore_only_by_msg
        type: Function
        lineno: 64
      -   nodeid: tests/test_utils_logign.py::test_filter_removed_after_context
        type: Function
        lineno: 86
      
    • tests/test_utils_metaclasses.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_metaclasses.py::test_combine_classes_combines_methods
        type: Function
        lineno: 14
      -   nodeid: tests/test_utils_metaclasses.py::test_registryabc_combines_registrymeta_and_abcmeta
        type: Function
        lineno: 25
      
    • tests/test_utils_npy.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_npy.py::test_nice_arange[0-5-1-expected0]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_npy.py::test_nice_arange[5-0--1-expected1]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_npy.py::test_nice_arange[1-2-0.3-expected2]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_npy.py::test_nice_arange[-2-2-1.5-expected3]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_npy.py::test_nice_arange[2.5-0.5--0.4-expected4]
        type: Function
        lineno: 7
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[0-10-4-expected0]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[5-15-2-expected1]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[-5-5-4-expected2]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[0-1-3-expected3]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[2-2-3-expected4]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[3-0-3-expected5]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_linspace[0-1-0-expected6]
        type: Function
        lineno: 18
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_centered[-2-2-2-True-expected0]
        type: Function
        lineno: 32
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_centered[0-5-2-True-expected1]
        type: Function
        lineno: 32
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_centered[0-5-2-False-expected2]
        type: Function
        lineno: 32
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_centered[-1-2-1.5-True-expected3]
        type: Function
        lineno: 32
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[0-5-2-True-expected0]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[0-5-2-False-expected1]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[-1-2-1.5-True-expected2]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[-1-2-1.5-False-expected3]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[-2-1-1.2-True-expected4]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[5-0--2-True-expected5]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_left_aligned[5-0--2-False-expected6]
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[0-5-2-True-expected0]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[0-5-2-False-expected1]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[-1-2-1.5-True-expected2]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[-1-2-1.5-False-expected3]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[5-0--2-True-expected4]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[5-0--2-False-expected5]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_nice_steps_right_aligned[-3-3-2-True-expected6]
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_npy.py::test_within_scalar[5-0-10-True]
        type: Function
        lineno: 70
      -   nodeid: tests/test_utils_npy.py::test_within_scalar[5-6-10-False]
        type: Function
        lineno: 70
      -   nodeid: tests/test_utils_npy.py::test_within_scalar[5-None-10-True]
        type: Function
        lineno: 70
      -   nodeid: tests/test_utils_npy.py::test_within_scalar[5-0-None-True]
        type: Function
        lineno: 70
      -   nodeid: tests/test_utils_npy.py::test_within_scalar[5-None-None-True]
        type: Function
        lineno: 70
      -   nodeid: tests/test_utils_npy.py::test_within_fraction[data0-2-5-0.6]
        type: Function
        lineno: 81
      -   nodeid: tests/test_utils_npy.py::test_within_fraction[data1-5-25-0.6666666666666666]
        type: Function
        lineno: 81
      -   nodeid: tests/test_utils_npy.py::test_within_fraction[data2-None-2-0.3333333333333333]
        type: Function
        lineno: 81
      -   nodeid: tests/test_utils_npy.py::test_within_fraction[data3-0-1-0]
        type: Function
        lineno: 81
      -   nodeid: tests/test_utils_npy.py::test_fraction_to_percentage[0.456-1-45.6]
        type: Function
        lineno: 92
      -   nodeid: tests/test_utils_npy.py::test_fraction_to_percentage[0.12345-2-12.35]
        type: Function
        lineno: 92
      -   nodeid: tests/test_utils_npy.py::test_fraction_to_percentage[0.9999-0-100.0]
        type: Function
        lineno: 92
      -   nodeid: tests/test_utils_npy.py::test_get_dtype[val0-ndarray]
        type: Function
        lineno: 101
      -   nodeid: tests/test_utils_npy.py::test_get_dtype[val1-list]
        type: Function
        lineno: 101
      -   nodeid: tests/test_utils_npy.py::test_get_dtype[3.14-float]
        type: Function
        lineno: 101
      -   nodeid: tests/test_utils_npy.py::test_get_shape[val0-expected0]
        type: Function
        lineno: 114
      -   nodeid: tests/test_utils_npy.py::test_get_shape[val1-expected1]
        type: Function
        lineno: 114
      -   nodeid: tests/test_utils_npy.py::test_get_shape[42-expected2]
        type: Function
        lineno: 114
      -   nodeid: tests/test_utils_npy.py::test_is_array[val0-True]
        type: Function
        lineno: 123
      -   nodeid: tests/test_utils_npy.py::test_is_array[val1-False]
        type: Function
        lineno: 123
      -   nodeid: tests/test_utils_npy.py::test_is_array[42-False]
        type: Function
        lineno: 123
      
    • tests/test_utils_path.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_path.py::test_can_create_all_files_user_says_yes
        type: Function
        lineno: 10
      -   nodeid: tests/test_utils_path.py::test_can_create_all_files_user_says_no
        type: Function
        lineno: 36
      -   nodeid: tests/test_utils_path.py::test_make_missing_dir_creates_folder
        type: Function
        lineno: 54
      -   nodeid: tests/test_utils_path.py::test_glob_files_returns_matching_files_only
        type: Function
        lineno: 66
      -   nodeid: tests/test_utils_path.py::test_filter_files_excludes_directories
        type: Function
        lineno: 83
      
    • tests/test_utils_picklio.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[test_obj0]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[test_obj1]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[simple string]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[42]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[3.14159]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[test_obj5]
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_picklio.py::test_pickle_and_unpickle[test_obj6]
        type: Function
        lineno: 6
      
    • tests/test_utils_printing.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_printing.py::test_maxlen_valid[seq0-3]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_printing.py::test_maxlen_valid[seq1-0]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_printing.py::test_maxlen_valid[seq2-3]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_printing.py::test_maxlen_valid[seq3-2]
        type: Function
        lineno: 8
      -   nodeid: tests/test_utils_printing.py::test_strlen[42-2]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[hello-5]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[False-5]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[None-4]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[value4-9]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[value5-8]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[value6-6]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[-0]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_strlen[this is a phrase-16]
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_printing.py::test_maxstrlen[seq0-6]
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_printing.py::test_maxstrlen[seq1-3]
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_printing.py::test_maxstrlen[seq2-9]
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_printing.py::test_maxstrlen[seq3-16]
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_printing.py::test_maxstrlen[seq4-5]
        type: Function
        lineno: 31
      -   nodeid: tests/test_utils_printing.py::test_transpose_matrix[data0-expected0]
        type: Function
        lineno: 41
      -   nodeid: tests/test_utils_printing.py::test_transpose_matrix[data1-expected1]
        type: Function
        lineno: 41
      -   nodeid: tests/test_utils_printing.py::test_transpose_matrix[data2-expected2]
        type: Function
        lineno: 41
      -   nodeid: tests/test_utils_printing.py::test_prepend[initial0-1-expected0]
        type: Function
        lineno: 50
      -   nodeid: tests/test_utils_printing.py::test_prepend[initial1-a-expected1]
        type: Function
        lineno: 50
      -   nodeid: tests/test_utils_printing.py::test_prepend[initial2-prepend2-expected2]
        type: Function
        lineno: 50
      -   nodeid: tests/test_utils_printing.py::test_prepend[initial3-prepend3-expected3]
        type: Function
        lineno: 50
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries0-widths0-  a   bbb]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries1-widths1- 1  2]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries2-widths2-  long  val]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries3-widths3- True  False]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries4-widths4-  123  4567]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries5-widths5- text with space   end]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries6-widths6-  {'a': 1}   {'b': 2}]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_table_line[entries7-widths7-    [1, 2]     [3, 4]]
        type: Function
        lineno: 61
      -   nodeid: tests/test_utils_printing.py::test_fmt_label_sep[widths0------ ----]
        type: Function
        lineno: 74
      -   nodeid: tests/test_utils_printing.py::test_fmt_label_sep[widths1-=-== ===]
        type: Function
        lineno: 74
      -   nodeid: tests/test_utils_printing.py::test_fmt_label_sep[widths2-*-***** **]
        type: Function
        lineno: 74
      -   nodeid: tests/test_utils_printing.py::test_printable_dict_with_header[d0-HeaderTest-expected_lines0]
        type: Function
        lineno: 82
      -   nodeid: tests/test_utils_printing.py::test_printable_dict_of_dicts
        type: Function
        lineno: 101
      -   nodeid: tests/test_utils_printing.py::test_printable_table[data0-labels0-A: ID\nB: \u2713 Success?\nC: SuperPrecisionValue\nD: Result Metadata\n\n#             A     B          C                            D\n- ------------- ----- ---------- ----------------------------\n0            X1  True     0.1234               {'meta': 'ok'}\n1 AnotherSample False 98765.4321          {'meta': [1, 2, 3]}\n2             Z  None        0.0 {'meta': {'nested_key': 42}}]
        type: Function
        lineno: 128
      
    • tests/test_utils_rangebar.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_rangebar.py::test_full_progress_bar
        type: Function
        lineno: 14
      -   nodeid: tests/test_utils_rangebar.py::test_half_progress_bar
        type: Function
        lineno: 27
      -   nodeid: tests/test_utils_rangebar.py::test_zero_progress_bar
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_rangebar.py::test_overflow_bar
        type: Function
        lineno: 56
      -   nodeid: tests/test_utils_rangebar.py::test_underflow_bar
        type: Function
        lineno: 69
      -   nodeid: tests/test_utils_rangebar.py::test_repr
        type: Function
        lineno: 82
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[0-          ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[10-\u2588         ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[25-\u2588\u2588\u258c       ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[27-\u2588\u2588\u258a       ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[49-\u2588\u2588\u2588\u2588\u2589     ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[50-\u2588\u2588\u2588\u2588\u2588     ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[51-\u2588\u2588\u2588\u2588\u2588\u258f    ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[73-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258e  ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[75-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c  ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[90-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 ]
        type: Function
        lineno: 89
      -   nodeid: tests/test_utils_rangebar.py::test_each_value_separately[100-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588]
        type: Function
        lineno: 89
      
    • tests/test_utils_sendmail.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_sendmail.py::test_sendmail_real_local_verbose
        type: Function
        lineno: 70
      
    • tests/test_utils_snapshot.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[exclude_internals]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[include_internals]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[empty_case]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[sort_str]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[sort_id]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[sort_case_insensitive]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[sort_length]
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_snapshot.py::test_snapshot[sort_reverse]
        type: Function
        lineno: 83
      
    • tests/test_utils_termtitle.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_termtitle.py::test_terminal_title_with_tmux
        type: Function
        lineno: 9
      
    • tests/test_utils_tqdm_mod.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_tqdm_mod.py::test_complete_progress_bar
        type: Function
        lineno: 25
      -   nodeid: tests/test_utils_tqdm_mod.py::test_set_progress_multiple_points
        type: Function
        lineno: 42
      -   nodeid: tests/test_utils_tqdm_mod.py::test_format_sizeof_alignment
        type: Function
        lineno: 65
      -   nodeid: tests/test_utils_tqdm_mod.py::test_float_alignment_in_bar
        type: Function
        lineno: 83
      -   nodeid: tests/test_utils_tqdm_mod.py::test_custom_unit
        type: Function
        lineno: 132
      -   nodeid: tests/test_utils_tqdm_mod.py::test_clamp_above_total
        type: Function
        lineno: 146
      -   nodeid: tests/test_utils_tqdm_mod.py::test_clamp_below_zero
        type: Function
        lineno: 163
      
    • tests/test_utils_trinary.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_trinary.py::test_check_trinary_valid_values
        type: Function
        lineno: 6
      -   nodeid: tests/test_utils_trinary.py::test_check_trinary_invalid_value
        type: Function
        lineno: 14
      -   nodeid: tests/test_utils_trinary.py::test_check_trinary_with_custom_allowed_values
        type: Function
        lineno: 22
      
    • tests/test_utils_typecast.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_typecast.py::test_downcast_success
        type: Function
        lineno: 24
      -   nodeid: tests/test_utils_typecast.py::test_upcast_success
        type: Function
        lineno: 30
      -   nodeid: tests/test_utils_typecast.py::test_downcast_invalid
        type: Function
        lineno: 41
      -   nodeid: tests/test_utils_typecast.py::test_upcast_invalid
        type: Function
        lineno: 48
      -   nodeid: tests/test_utils_typecast.py::test_object_identity_preserved
        type: Function
        lineno: 53
      -   nodeid: tests/test_utils_typecast.py::test_ensure_subclass_valid
        type: Function
        lineno: 64
      -   nodeid: tests/test_utils_typecast.py::test_ensure_subclass_invalid
        type: Function
        lineno: 67
      -   nodeid: tests/test_utils_typecast.py::test_cast_changes_class
        type: Function
        lineno: 79
      -   nodeid: tests/test_utils_typecast.py::test_cast_preserves_identity
        type: Function
        lineno: 86
      
    • tests/test_utils_utils.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_utils.py::test_singleton_instance
        type: Function
        lineno: 17
      -   nodeid: tests/test_utils_utils.py::test_singleton_identity
        type: Function
        lineno: 25
      -   nodeid: tests/test_utils_utils.py::test_typename[None-NoneType]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[True-bool]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[42-int]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[3.14-float]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[text-str]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[obj5-set]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[obj6-list]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[obj7-list]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[obj8-dict]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[<lambda>-function]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[sample_function-function]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[nested-function]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[len-builtin_function_or_method]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[sum-builtin_function_or_method]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[math-module]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[sys-module]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[function-type]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[<genexpr>-generator]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_typename[obj18-list_iterator]
        type: Function
        lineno: 44
      -   nodeid: tests/test_utils_utils.py::test_next_int[nums0-4]
        type: Function
        lineno: 77
      -   nodeid: tests/test_utils_utils.py::test_next_int[nums1-21]
        type: Function
        lineno: 77
      -   nodeid: tests/test_utils_utils.py::test_next_int[nums2-0]
        type: Function
        lineno: 77
      -   nodeid: tests/test_utils_utils.py::test_zero_pad[7-3-007]
        type: Function
        lineno: 87
      -   nodeid: tests/test_utils_utils.py::test_zero_pad[123-5-00123]
        type: Function
        lineno: 87
      -   nodeid: tests/test_utils_utils.py::test_zero_pad[0-2-00]
        type: Function
        lineno: 87
      -   nodeid: tests/test_utils_utils.py::test_iround[3.6-4]
        type: Function
        lineno: 97
      -   nodeid: tests/test_utils_utils.py::test_iround[2.1-2]
        type: Function
        lineno: 97
      -   nodeid: tests/test_utils_utils.py::test_iround[-1.5--2]
        type: Function
        lineno: 97
      -   nodeid: tests/test_utils_utils.py::test_iround[-1.4--1]
        type: Function
        lineno: 97
      -   nodeid: tests/test_utils_utils.py::test_sorted_naturally[items0-expected0]
        type: Function
        lineno: 108
      -   nodeid: tests/test_utils_utils.py::test_sorted_naturally[items1-expected1]
        type: Function
        lineno: 108
      -   nodeid: tests/test_utils_utils.py::test_sorted_naturally_reverse[items0-expected0]
        type: Function
        lineno: 115
      
    • tests/test_utils_xrange.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_xrange.py::test_xrange_finite[args0-kwargs0-expected0]
        type: Function
        lineno: 11
      -   nodeid: tests/test_utils_xrange.py::test_xrange_finite[args1-kwargs1-expected1]
        type: Function
        lineno: 11
      -   nodeid: tests/test_utils_xrange.py::test_xrange_finite[args2-kwargs2-expected2]
        type: Function
        lineno: 11
      -   nodeid: tests/test_utils_xrange.py::test_xrange_finite[args3-kwargs3-expected3]
        type: Function
        lineno: 11
      -   nodeid: tests/test_utils_xrange.py::test_xrange_infinite[args0-kwargs0-count(0)]
        type: Function
        lineno: 20
      -   nodeid: tests/test_utils_xrange.py::test_xrange_infinite[args1-kwargs1-count(0, 2)]
        type: Function
        lineno: 20
      -   nodeid: tests/test_utils_xrange.py::test_xrange_too_many_args[args0]
        type: Function
        lineno: 31
      
. (1 tests)
  • .
    • Outcome: passed
    • result:
    -   nodeid: ci-reports
      type: Dir
    -   nodeid: outputs
      type: Dir
    -   nodeid: slic
      type: Package
    -   nodeid: temp-ci
      type: Dir
    -   nodeid: tests
      type: Dir
    

⚠️ Warnings

Warnings nº1
message: invalid escape sequence \-
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/bsread/h5.py
lineno: 207
Warnings nº2
message: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/ca.py
lineno: 28
Warnings nº3
message: Deprecated call to `pkg_resources.declare_namespace('mpl_toolkits')`.
Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pkg_resources/__init__.py
lineno: 3154
Warnings nº4
message: The module numpy.dual is deprecated.  Instead of using dual, use the functions directly from numpy or scipy.
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/scipy/fft/__init__.py
lineno: 97