Clone
1
run 1566 TEST commit 5ed98a5
ci-bot edited this page 2025-08-04 12:52:55 +00:00

Test Report

View CI Run 1566 | Commit 5ed98a5

🧪 Test Report

Generated on 2025-08-04 14:52:50 CEST

🧾 General Info

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

📋 Summary

  • Passed: 397
  • Failed: 30
  • Error: 1
  • Total: 428
  • Collected: 428

🔎 Tests

Passed (397)
  • 📄 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.0006708321161568165
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018461095169186592
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00029691262170672417
      

      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.00028902478516101837
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015003792941570282
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016547925770282745
      

      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.000281590037047863
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001388760283589363
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015120720490813255
      

      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.00028276024386286736
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014531612396240234
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015749642625451088
      

      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.0002540517598390579
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013852305710315704
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016767904162406921
      

      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.0002634064294397831
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013731326907873154
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015733018517494202
      

      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.00026346417143940926
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015914998948574066
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015004398301243782
      

      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.00026971427723765373
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014723977074027061
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015304703265428543
      

      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.0002836231142282486
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000148111954331398
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001541287638247013
      

      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.00021499861031770706
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001711379736661911
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014148885384202003
      

      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.00021844403818249702
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015649199485778809
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015212083235383034
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022432301193475723
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014429492875933647
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014973431825637817
      

      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.0002553067170083523
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016266480088233948
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015705125406384468
      

      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.00026363786309957504
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016822339966893196
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015431083738803864
      

      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.0002711210399866104
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013859616592526436
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000153442844748497
      

      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.00028097303584218025
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001843757927417755
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014814827591180801
      

      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.00025241728872060776
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017309421673417091
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017289398238062859
      

      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.0002611936070024967
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016376003623008728
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015950575470924377
      

      outcome:

      passed
      

    Function: test_get_args_parametrized

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002622981555759907
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020619109272956848
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015892088413238525
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0006651165895164013
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021782517433166504
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016579590737819672
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00026414915919303894
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018943194299936295
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016131112352013588
      

      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 0x7f39038c9ee0>
        expected_sig: (a, b, d=30, c=10)
      id: wrap_all-(a, b, d=30, c=10)
      

      📌 Setup phase

      duration:

      0.0002240021713078022
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016002217307686806
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013722898438572884
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002387259155511856
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015887711197137833
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001384248025715351
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022378796711564064
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015925802290439606
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001400010660290718
      

      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 0x7f39038c9ee0>
        args:
          - 1
          - 2
          - 3
        kwargs:
      {}
        expected_result: 36
      id: wrap_all-args0-kwargs0-36
      

      📌 Setup phase

      duration:

      0.00030424585565924644
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013420172035694122
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018867291510105133
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00030922191217541695
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013489043340086937
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016365665942430496
      

      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 0x7f39038c9f70>
        args:
          - (vide)
          - (vide)
        kwargs:
          c: 3
          d: 4
        expected_result: 10
      id: wrap_skip-args2-kwargs2-10
      

      📌 Setup phase

      duration:

      0.00030180206522345543
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001474008895456791
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016579916700720787
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0003164089284837246
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013906368985772133
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001715589314699173
      

      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.00032123085111379623
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007859873585402966
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018278975039720535
      

      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.00032783392816782
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006451602093875408
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018465425819158554
      

      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.0003287210129201412
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000508233904838562
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001876908354461193
      

      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.0003184978850185871
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004933439195156097
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018364191055297852
      

      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.0004356987774372101
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000574205070734024
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018295133486390114
      

      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.00032120198011398315
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006271698512136936
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018371175974607468
      

      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.00032451702281832695
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005452670156955719
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017848610877990723
      

      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.0003279931843280792
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005001449026167393
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019743898883461952
      

      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.00032419897615909576
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005185580812394619
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000184742733836174
      

      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.00031688297167420387
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006008492782711983
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000179939903318882
      

      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.0003776922821998596
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048540206626057625
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017827004194259644
      

      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.0003085439093410969
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005175876431167126
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018290802836418152
      

      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.0003139106556773186
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005188672803342342
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002768789418041706
      

      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.00033193593844771385
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004950040020048618
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017931684851646423
      

      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.00031838705763220787
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048787472769618034
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001854877918958664
      

      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.00032022641971707344
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005058911629021168
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019059795886278152
      

      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.00034589460119605064
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006071901880204678
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018648384138941765
      

      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.0003291936591267586
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004926850087940693
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019084010273218155
      

      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.00031930580735206604
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005564470775425434
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001879492774605751
      

      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.00031984783709049225
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005621090531349182
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018094806000590324
      

      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.0003373292274773121
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006758957169950008
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018177134916186333
      

      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.00033135199919342995
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005277986638247967
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020286673679947853
      

      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.0003167297691106796
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005618929862976074
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018875114619731903
      

      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.0003219558857381344
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006132712587714195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018702726811170578
      

      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.0003337743692100048
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00049620121717453
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018590781837701797
      

      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.0003147618845105171
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004929779097437859
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002054758369922638
      

      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.000321744941174984
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005152910016477108
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018031196668744087
      

      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.0003218553029000759
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006140531040728092
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018015410751104355
      

      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.00032806070521473885
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005035349167883396
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018725311383605003
      

      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.00031483499333262444
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005282112397253513
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018626125529408455
      

      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.00032095611095428467
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005122278816998005
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018468499183654785
      

      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.0003317957744002342
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006230808794498444
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017914874479174614
      

      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.00031449878588318825
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005471003241837025
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019770720973610878
      

      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.00031930673867464066
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005250219255685806
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001903683878481388
      

      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.00032077543437480927
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006782477721571922
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018761632964015007
      

      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.0003411015495657921
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005380013026297092
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018313899636268616
      

      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.00034310901537537575
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005199410952627659
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019954470917582512
      

      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.00036347005516290665
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005794307217001915
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020736316218972206
      

      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.0004598647356033325
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005622529424726963
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020152516663074493
      

      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.00036608194932341576
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005782619118690491
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002028830349445343
      

      outcome:

      passed
      
  • 📄 test_utils_channels.py

    Function: test_load_channels_and_channels_class_with_professional_names

    • Test 69

      📌 Setup phase

      duration:

      0.00012379605323076248
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000987325794994831
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001268959604203701
      

      outcome:

      passed
      
  • 📄 test_utils_config.py

    Function: test_config_with_nested_and_list_data

    • Test 70

      📌 Setup phase

      duration:

      0.0001298198476433754
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005419841036200523
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001222030259668827
      

      outcome:

      passed
      

    Function: test_config_with_strange_and_edge_keys

    • Test 71

      📌 Setup phase

      duration:

      0.00011704210191965103
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007701609283685684
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001203613355755806
      

      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.00020279083400964737
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016347086057066917
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001717638224363327
      

      outcome:

      passed
      
    • Test 73
      params: base_color="blue"

      📌 Runtime Parameters

      params:
        base_color: blue
      id: blue
      

      📌 Setup phase

      duration:

      0.00018958887085318565
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015736417844891548
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001260479912161827
      

      outcome:

      passed
      
    • Test 74
      params: base_color="yellow"

      📌 Runtime Parameters

      params:
        base_color: yellow
      id: yellow
      

      📌 Setup phase

      duration:

      0.00017661554738879204
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015604589134454727
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012451596558094025
      

      outcome:

      passed
      
    • Test 75
      params: base_color="green"

      📌 Runtime Parameters

      params:
        base_color: green
      id: green
      

      📌 Setup phase

      duration:

      0.00017076218500733376
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015763984993100166
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012474041432142258
      

      outcome:

      passed
      
    • Test 76
      params: base_color="cyan"

      📌 Runtime Parameters

      params:
        base_color: cyan
      id: cyan
      

      📌 Setup phase

      duration:

      0.0005690730176866055
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016333628445863724
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001249406486749649
      

      outcome:

      passed
      
    • Test 77
      params: base_color="magenta"

      📌 Runtime Parameters

      params:
        base_color: magenta
      id: magenta
      

      📌 Setup phase

      duration:

      0.00017162412405014038
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015500281006097794
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012278789654374123
      

      outcome:

      passed
      
    • Test 78
      params: base_color="white"

      📌 Runtime Parameters

      params:
        base_color: white
      id: white
      

      📌 Setup phase

      duration:

      0.00017670681700110435
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014634011313319206
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011990778148174286
      

      outcome:

      passed
      
    • Test 79
      params: base_color="black"

      📌 Runtime Parameters

      params:
        base_color: black
      id: black
      

      📌 Setup phase

      duration:

      0.00018103886395692825
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015074200928211212
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012154411524534225
      

      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.000619861762970686
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002811490558087826
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025491323322057724
      

      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.0005015269853174686
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022533908486366272
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025609275326132774
      

      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.00046969810500741005
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021656416356563568
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025286199524998665
      

      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.0004596901126205921
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002234247513115406
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000250999815762043
      

      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.00048034312203526497
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022154301404953003
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024825287982821465
      

      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.0004588058218359947
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023327767848968506
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002526789903640747
      

      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.000474568922072649
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022197840735316277
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024652574211359024
      

      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.00046925293281674385
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002173301763832569
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00023816199973225594
      

      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.0004544737748801708
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021119322627782822
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025454210117459297
      

      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.00046474020928144455
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002141171135008335
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002480261027812958
      

      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.0004602470435202122
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00022827507928013802
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002392120659351349
      

      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.0004619699902832508
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021412363275885582
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002640746533870697
      

      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.00045042484998703003
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00025171274319291115
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000246523879468441
      

      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.000477492343634367
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00024129357188940048
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024409499019384384
      

      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.0004452490247786045
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023508118465542793
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002398863434791565
      

      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.00045969896018505096
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002231965772807598
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00024636322632431984
      

      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.00030370987951755524
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0010406109504401684
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017855269834399223
      

      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.0002826661802828312
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008489852771162987
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001766378991305828
      

      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.00029826071113348007
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008910540491342545
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017709610983729362
      

      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.00028702104464173317
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007982850074768066
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017857225611805916
      

      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.0002813413739204407
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008664601482450962
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017180107533931732
      

      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.0002865102142095566
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001441589556634426
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016533862799406052
      

      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.0003593452274799347
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016632629558444023
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001677260734140873
      

      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.0002875393256545067
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016004405915737152
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016964878886938095
      

      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.000267944298684597
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001479792408645153
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015981215983629227
      

      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.00033179111778736115
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016649533063173294
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001648622564971447
      

      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.0002792798914015293
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014182087033987045
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014879414811730385
      

      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.0002694288268685341
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001412946730852127
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001634550280869007
      

      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.0002542417496442795
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014268606901168823
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001577017828822136
      

      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.0002632192336022854
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001501450315117836
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015405099838972092
      

      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.0002668369561433792
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018675997853279114
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014945073053240776
      

      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.0002803029492497444
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017662299796938896
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017159990966320038
      

      outcome:

      passed
      

    Function: test_attrdict_dir

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002239421010017395
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014227768406271935
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014538411051034927
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022135768085718155
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016528228297829628
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001602419652044773
      

      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.00031277909874916077
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014353077858686447
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016606133431196213
      

      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.00030515389516949654
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017858995124697685
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016993610188364983
      

      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.00031617889180779457
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015383074060082436
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001653977669775486
      

      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.00030084187164902687
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015980005264282227
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001842668280005455
      

      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.0003043520264327526
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014613429084420204
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016423966735601425
      

      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.0003085099160671234
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014890311285853386
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016571208834648132
      

      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.00031892117112874985
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001457100734114647
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016661221161484718
      

      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.0002915468066930771
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000258738175034523
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018543889746069908
      

      outcome:

      passed
      
  • 📄 test_utils_dotdir.py

    Function: test_dotdir_creation_and_base_exists

    • Test 124

      📌 Setup phase

      duration:

      0.0013947049155831337
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00025958800688385963
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002199760638177395
      

      outcome:

      passed
      

    Function: test_dotdir_repr_returns_path_str

    • Test 125

      📌 Setup phase

      duration:

      0.0005951989442110062
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00024406705051660538
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020808912813663483
      

      outcome:

      passed
      

    Function: test_dotdir_call

    • Test 126

      📌 Setup phase

      duration:

      0.0006378442049026489
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023618806153535843
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021525705233216286
      

      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.0002433760091662407
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018805824220180511
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001405118964612484
      

      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.00025637587532401085
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016712676733732224
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014150282368063927
      

      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.00023810099810361862
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016406597569584846
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001430991105735302
      

      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.00022084685042500496
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015467777848243713
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013933097943663597
      

      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.00022699497640132904
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015793601050972939
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015901308506727219
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022508809342980385
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016051391139626503
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014000898227095604
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021615298464894295
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017944909632205963
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001428946852684021
      

      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.00022820988669991493
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019633816555142403
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014265812933444977
      

      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.00021607661619782448
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001592491753399372
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014040619134902954
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00024163303896784782
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015917280688881874
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001579737290740013
      

      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.00022678310051560402
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017011398449540138
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013707298785448074
      

      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.0002214335836470127
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017450982704758644
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015872344374656677
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022177398204803467
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001546218991279602
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014558900147676468
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022573024034500122
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017533265054225922
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014332495629787445
      

      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.00022470112890005112
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018048007041215897
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014203228056430817
      

      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.00021173479035496712
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016073603183031082
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014176592230796814
      

      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.00022995611652731895
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015378091484308243
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013498496264219284
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00023695128038525581
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001501203514635563
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001379493623971939
      

      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.00021333107724785805
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015212688595056534
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013851001858711243
      

      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.00022380193695425987
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001592361368238926
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001379549503326416
      

      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.0002253558486700058
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00040232110768556595
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001441040076315403
      

      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.0003114081919193268
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00038394005969166756
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015253014862537384
      

      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.0002317340113222599
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00036807311698794365
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015222001820802689
      

      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.00022677797824144363
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003544166684150696
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014368398115038872
      

      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.0002541830763220787
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003438401035964489
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014629634097218513
      

      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.00023375311866402626
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018449733033776283
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014986516907811165
      

      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.00021423213183879852
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00037090014666318893
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015260325744748116
      

      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.00022730790078639984
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033489009365439415
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014060409739613533
      

      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.00023254798725247383
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018718186765909195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014009978622198105
      

      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.00022091111168265343
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000173856969922781
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016033416613936424
      

      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.00022618193179368973
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015629781410098076
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014781486243009567
      

      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.00022295117378234863
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001691579818725586
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015881285071372986
      

      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.00022981222718954086
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018271710723638535
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014506885781884193
      

      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.00022296840324997902
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016148388385772705
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013547716662287712
      

      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.00028428202494978905
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000165511853992939
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015727989375591278
      

      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.0002697063609957695
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016540009528398514
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016718124970793724
      

      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.0002676360309123993
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016040494665503502
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016316305845975876
      

      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.0002673068083822727
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017895177006721497
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001556510105729103
      

      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 0x7f3903ed94c0>
        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.00024768104776740074
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016230810433626175
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014341017231345177
      

      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 0x7f3903ed95e0>
        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.00024195155128836632
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001530749723315239
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001402832567691803
      

      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 0x7f3903ed9670>
        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.00021533900871872902
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001513003371655941
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013866741210222244
      

      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 0x7f3903ed9700>
        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.00022397935390472412
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014643697068095207
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016046827659010887
      

      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 0x7f3903ed9790>
        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.00021922215819358826
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014446396380662918
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013835402205586433
      

      outcome:

      passed
      

    Function: test_printed_exception

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0007383790798485279
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.008331704884767532
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0005776719190180302
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0006120689213275909
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.002716131042689085
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00045483140274882317
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0006251283921301365
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0037978249602019787
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000451632309705019
      

      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 0x7f3903ed9700>
        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.0005913218483328819
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.002369944006204605
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0004375362768769264
      

      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 0x7f3903ed9790>
        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.0005914620123803616
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0027812840417027473
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0004511559382081032
      

      outcome:

      passed
      
  • 📄 test_utils_get_adj.py

    Function: test_get_adj_success

    • Test 175

      📌 Setup phase

      duration:

      0.0001354878768324852
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007335538975894451
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011661089956760406
      

      outcome:

      passed
      

    Function: test_get_adj_not_found

    • Test 176

      📌 Setup phase

      duration:

      0.000494054052978754
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009576207958161831
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00041264574974775314
      

      outcome:

      passed
      

    Function: test_ensure_adjs_mixed

    • Test 177

      📌 Setup phase

      duration:

      0.0001255427487194538
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007947981357574463
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011242600157856941
      

      outcome:

      passed
      

    Function: test_get_adjs_filter

    • Test 178

      📌 Setup phase

      duration:

      0.00012028682976961136
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008643227629363537
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011163484305143356
      

      outcome:

      passed
      
  • 📄 test_utils_hastyepics.py

    Function: test_motor_invalid_name_raises

    • Test 181

      📌 Setup phase

      duration:

      0.00014156289398670197
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002564499154686928
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00012149196118116379
      

      outcome:

      passed
      

    Function: test_motor_init_list_has_no_disabled

    • Test 182

      📌 Setup phase

      duration:

      0.00012051593512296677
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015541817992925644
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010759104043245316
      

      outcome:

      passed
      

    Function: test_motor_pv_connection_skipped_by_default

    • Test 184

      📌 Setup phase

      duration:

      0.000123616773635149
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00037600379437208176
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011114031076431274
      

      outcome:

      passed
      

    Function: test_motor_adds_all_extras_pvs

    • Test 185

      📌 Setup phase

      duration:

      0.00011559296399354935
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003520892933011055
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010779919102787971
      

      outcome:

      passed
      

    Function: test_motor_PV_method_exists_and_works

    • Test 186

      📌 Setup phase

      duration:

      0.00010959571227431297
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003512469120323658
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011980906128883362
      

      outcome:

      passed
      
  • 📄 test_utils_ipy.py

    Function: test_devices_repr_fallback_and_ignore

    • Test 187

      📌 Setup phase

      duration:

      0.0007109600119292736
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000785590149462223
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00025963224470615387
      

      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.000849137082695961
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006755129434168339
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020103994756937027
      

      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.0006571672856807709
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00043045496568083763
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018097274005413055
      

      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.0006188950501382351
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00042675435543060303
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017824862152338028
      

      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.0006237910129129887
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000357908196747303
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002123056910932064
      

      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.0006006509065628052
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00036873482167720795
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001968718133866787
      

      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.000595595221966505
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00041515473276376724
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022921385243535042
      

      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.0006212540902197361
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005266051739454269
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021888595074415207
      

      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.0006022518500685692
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005709826946258545
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001849592663347721
      

      outcome:

      passed
      
  • 📄 test_utils_lazypv.py

    Function: test_getattr

    • Test 196

      📌 Setup phase

      duration:

      0.00013877404853701591
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00029985979199409485
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011078221723437309
      

      outcome:

      passed
      
  • 📄 test_utils_logcfg.py

    Function: test_custom_log_outputs

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0013872897252440453
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007060677744448185
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00022401008754968643
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.000397553201764822
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00041208602488040924
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00021555600687861443
      

      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.0005826400592923164
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007526869885623455
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002374202013015747
      

      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.00039511313661932945
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00041085202246904373
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020860414952039719
      

      outcome:

      passed
      

    Function: test_ignore_only_by_level

    • Test 202

      📌 Setup phase

      duration:

      0.0002597952261567116
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003784438595175743
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016404222697019577
      

      outcome:

      passed
      

    Function: test_ignore_only_by_msg

    • Test 203

      📌 Setup phase

      duration:

      0.00024531036615371704
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00037559913471341133
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001646997407078743
      

      outcome:

      passed
      

    Function: test_filter_removed_after_context

    • Test 204

      📌 Setup phase

      duration:

      0.00025419099256396294
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00036764563992619514
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016677798703312874
      

      outcome:

      passed
      
  • 📄 test_utils_metaclasses.py

    Function: test_combine_classes_combines_methods

    • Test 205

      📌 Setup phase

      duration:

      0.00013567181304097176
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001919558271765709
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010235374793410301
      

      outcome:

      passed
      

    Function: test_registryabc_combines_registrymeta_and_abcmeta

    • Test 206

      📌 Setup phase

      duration:

      0.00010950583964586258
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0048160008154809475
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011951709166169167
      

      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.0003509283997118473
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.01819878676906228
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020745396614074707
      

      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.00034568971022963524
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003760070540010929
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019328715279698372
      

      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.0003660479560494423
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00043286895379424095
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019534584134817123
      

      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.00036483025178313255
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003586551174521446
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018496112897992134
      

      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.0003284900449216366
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033119693398475647
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019288994371891022
      

      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.0003362707793712616
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033940514549613
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018915673717856407
      

      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.00034741591662168503
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00032778410241007805
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001932317391037941
      

      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.00030978769063949585
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033103395253419876
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018545286729931831
      

      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.0003294362686574459
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003491281531751156
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017912592738866806
      

      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.00038670608773827553
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003591231070458889
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019533978775143623
      

      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.00037650391459465027
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00033785169944167137
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019614910706877708
      

      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.0003764289431273937
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003297831863164902
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019747624173760414
      

      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.00039680488407611847
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00032340409234166145
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019919965416193008
      

      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.0003771670162677765
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003309110179543495
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020281877368688583
      

      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.000374562107026577
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00032803090289235115
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020383717492222786
      

      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.00033631501719355583
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014546792954206467
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001759273000061512
      

      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.00030237389728426933
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014241226017475128
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001643449068069458
      

      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.0003285501152276993
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018314179033041
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016963807865977287
      

      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.00030841119587421417
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013986602425575256
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001642121933400631
      

      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.0002985452301800251
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013179006054997444
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017544161528348923
      

      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.0003292481414973736
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00029440922662615776
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017304718494415283
      

      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.00034167803823947906
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00023764092475175858
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016497215256094933
      

      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.00034212926402688026
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002299700863659382
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000190091785043478
      

      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.00030956603586673737
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00024016061797738075
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017086323350667953
      

      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.00030930526554584503
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001498027704656124
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015366869047284126
      

      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.00028104567900300026
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014679227024316788
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001809876412153244
      

      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.00026806164532899857
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014154193922877312
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015284772962331772
      

      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.00021491432562470436
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001624678261578083
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001474320888519287
      

      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.00024634506553411484
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016012787818908691
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013958197087049484
      

      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.0002279430627822876
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015301816165447235
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020854873582720757
      

      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.00036086607724428177
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015367381274700165
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001541408710181713
      

      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.0002522519789636135
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001451689749956131
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014063483104109764
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021789688616991043
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013900920748710632
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013718334957957268
      

      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.00021723518148064613
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013265013694763184
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013878289610147476
      

      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.00022701313719153404
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001408550888299942
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001460541971027851
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00020636199042201042
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00012953905388712883
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014468422159552574
      

      outcome:

      passed
      
  • 📄 test_utils_path.py

    Function: test_can_create_all_files_user_says_yes

    • Test 258

      📌 Setup phase

      duration:

      0.00012494297698140144
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006701387465000153
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011642603203654289
      

      outcome:

      passed
      

    Function: test_can_create_all_files_user_says_no

    • Test 259

      📌 Setup phase

      duration:

      0.00011399015784263611
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00040231412276625633
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010763900354504585
      

      outcome:

      passed
      

    Function: test_make_missing_dir_creates_folder

    • Test 260

      📌 Setup phase

      duration:

      0.00010870397090911865
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004388289526104927
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010900991037487984
      

      outcome:

      passed
      

    Function: test_glob_files_returns_matching_files_only

    • Test 261

      📌 Setup phase

      duration:

      0.00011485209688544273
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009886068291962147
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013071205466985703
      

      outcome:

      passed
      

    Function: test_filter_files_excludes_directories

    • Test 262

      📌 Setup phase

      duration:

      0.00011555477976799011
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006337040103971958
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000119765754789114
      

      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.0007136720232665539
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00040605198591947556
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016211392357945442
      

      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.0005288850516080856
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002871318720281124
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015703774988651276
      

      outcome:

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

      📌 Runtime Parameters

      params:
        test_obj: simple string
      id: simple string
      

      📌 Setup phase

      duration:

      0.0005233497358858585
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002832687459886074
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001569977030158043
      

      outcome:

      passed
      
    • Test 266
      params: test_obj=42

      📌 Runtime Parameters

      params:
        test_obj: 42
      id: 42
      

      📌 Setup phase

      duration:

      0.000501004047691822
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003334670327603817
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015691015869379044
      

      outcome:

      passed
      
    • Test 267
      params: test_obj=3.14159

      📌 Runtime Parameters

      params:
        test_obj: 3.14159
      id: 3.14159
      

      📌 Setup phase

      duration:

      0.0005243490450084209
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002777809277176857
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016711466014385223
      

      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.0005234922282397747
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002792789600789547
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015621772035956383
      

      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.0005206740461289883
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002929680049419403
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001581776887178421
      

      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.00023583322763442993
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000173850916326046
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001424849033355713
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00024400698021054268
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013446714729070663
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013541476801037788
      

      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.00022801710292696953
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014419807121157646
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001379060558974743
      

      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.000212725717574358
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013484200462698936
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015250686556100845
      

      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.00021855579689145088
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001482497900724411
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013424502685666084
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002233590930700302
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013720709830522537
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013876892626285553
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002080085687339306
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001320410519838333
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014794617891311646
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021489430218935013
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014329515397548676
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013428321108222008
      

      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.0002170889638364315
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001469440758228302
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013327877968549728
      

      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.00020612310618162155
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001319199800491333
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.000140422023832798
      

      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.0002158139832317829
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013514375314116478
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013072509318590164
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022773072123527527
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013592001050710678
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013361871242523193
      

      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.00022318866103887558
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001307940110564232
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013625016435980797
      

      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.00022989604622125626
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014449702575802803
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014033587649464607
      

      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.00021709222346544266
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021697022020816803
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015554623678326607
      

      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.0002222219482064247
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014377431944012642
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014406396076083183
      

      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.00021487707272171974
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014784978702664375
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001382259652018547
      

      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.0002086409367620945
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013759685680270195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015953602269291878
      

      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.0002238270826637745
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015603890642523766
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013360381126403809
      

      outcome:

      passed
      
    • Test 289

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021526683121919632
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001376788131892681
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013541989028453827
      

      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.00020662881433963776
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013925181701779366
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014661997556686401
      

      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.0002757823094725609
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013868603855371475
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014975899830460548
      

      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.0002834307961165905
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001366189680993557
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015070708468556404
      

      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.00026130303740501404
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013772398233413696
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015914114192128181
      

      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.0002557528205215931
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013031205162405968
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001613418571650982
      

      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.00026029860600829124
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014600995928049088
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016272766515612602
      

      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.0002580801956355572
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014767469838261604
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015546008944511414
      

      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.0002561388537287712
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001401030458509922
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015305401757359505
      

      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.00026965420693159103
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014342786744236946
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014975899830460548
      

      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.00027122069150209427
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014152191579341888
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015455624088644981
      

      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.0002556378021836281
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014635222032666206
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016101496294140816
      

      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.00026025576516985893
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014686724171042442
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015234015882015228
      

      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.00024756835773587227
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013854913413524628
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015252921730279922
      

      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.0002582911401987076
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014965282753109932
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001482018269598484
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002636038698256016
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014079967513680458
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014996109530329704
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002600550651550293
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013592932373285294
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015408126637339592
      

      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.00027953973039984703
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000199801754206419
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015433970838785172
      

      outcome:

      passed
      

    Function: test_printable_dict_of_dicts

    • Test 307

      📌 Setup phase

      duration:

      0.00010666297748684883
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021018506959080696
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010432396084070206
      

      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.0003417390398681164
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003059282898902893
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016376981511712074
      

      outcome:

      passed
      
  • 📄 test_utils_pv.py

    Function: test_use_callback_context_manager

    • Test 315

      📌 Setup phase

      duration:

      0.0004969448782503605
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016295304521918297
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017818110063672066
      

      outcome:

      passed
      
  • 📄 test_utils_rangebar.py

    Function: test_full_progress_bar

    • Test 316

      📌 Setup phase

      duration:

      0.00030599022284150124
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002831709571182728
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017005624249577522
      

      outcome:

      passed
      

    Function: test_half_progress_bar

    • Test 317

      📌 Setup phase

      duration:

      0.0002790982834994793
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020320899784564972
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001616966910660267
      

      outcome:

      passed
      

    Function: test_zero_progress_bar

    • Test 318

      📌 Setup phase

      duration:

      0.00026705302298069
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018722610548138618
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001648985780775547
      

      outcome:

      passed
      

    Function: test_overflow_bar

    • Test 319

      📌 Setup phase

      duration:

      0.0002678041346371174
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001865709200501442
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001569148153066635
      

      outcome:

      passed
      

    Function: test_underflow_bar

    • Test 320

      📌 Setup phase

      duration:

      0.00024790503084659576
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019051600247621536
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001617688685655594
      

      outcome:

      passed
      

    Function: test_repr

    • Test 321

      📌 Setup phase

      duration:

      0.000113676767796278
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015254830941557884
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.878212586045265e-05
      

      outcome:

      passed
      

    Function: test_each_value_separately

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

      📌 Runtime Parameters

      params:
        value: 0
        expected_bar_part:           
      id: 0-          
      

      📌 Setup phase

      duration:

      0.0003684782423079014
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018978025764226913
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018356181681156158
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00036733178421854973
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019165920093655586
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001988210715353489
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00035414891317486763
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019745482131838799
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018629897385835648
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0003666803240776062
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018947385251522064
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018478604033589363
      

      outcome:

      passed
      
    • Test 326
      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.00035343924537301064
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018818024545907974
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001956271007657051
      

      outcome:

      passed
      
    • Test 327
      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.0003347373567521572
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019656121730804443
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001896698959171772
      

      outcome:

      passed
      
    • Test 328
      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.0003629680722951889
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019237538799643517
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018766801804304123
      

      outcome:

      passed
      
    • Test 329
      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.0003542019985616207
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018710875883698463
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002028467133641243
      

      outcome:

      passed
      
    • Test 330
      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.0003495486453175545
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019470183178782463
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001916489563882351
      

      outcome:

      passed
      
    • Test 331
      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.00036878418177366257
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001892661675810814
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019220588728785515
      

      outcome:

      passed
      
    • Test 332
      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.00036494992673397064
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00020941393449902534
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00019364291802048683
      

      outcome:

      passed
      
  • 📄 test_utils_readable.py

    Function: test_readable_seconds

    • Test 333
      params: seconds=59.4, expected="59 seconds"

      📌 Runtime Parameters

      params:
        seconds: 59.4
        expected: 59 seconds
      id: 59.4-59 seconds
      

      📌 Setup phase

      duration:

      0.00023832730948925018
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016793422400951385
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014260178431868553
      

      outcome:

      passed
      
    • Test 334
      params: seconds=59.9, expected="60 seconds"

      📌 Runtime Parameters

      params:
        seconds: 59.9
        expected: 60 seconds
      id: 59.9-60 seconds
      

      📌 Setup phase

      duration:

      0.00023020803928375244
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001400061883032322
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013337703421711922
      

      outcome:

      passed
      
    • Test 335
      params: seconds=119.9, expected="120 seconds"

      📌 Runtime Parameters

      params:
        seconds: 119.9
        expected: 120 seconds
      id: 119.9-120 seconds
      

      📌 Setup phase

      duration:

      0.00022471509873867035
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001408127136528492
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013677868992090225
      

      outcome:

      passed
      
    • Test 336
      params: seconds=120.1, expected="2 minutes"

      📌 Runtime Parameters

      params:
        seconds: 120.1
        expected: 2 minutes
      id: 120.1-2 minutes
      

      📌 Setup phase

      duration:

      0.00023446790874004364
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001409570686519146
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013725413009524345
      

      outcome:

      passed
      
    • Test 337
      params: seconds=3599.9, expected="60 minutes"

      📌 Runtime Parameters

      params:
        seconds: 3599.9
        expected: 60 minutes
      id: 3599.9-60 minutes
      

      📌 Setup phase

      duration:

      0.00020898319780826569
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013556098565459251
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014445092529058456
      

      outcome:

      passed
      
    • Test 338
      params: seconds=3600.1, expected="60 minutes"

      📌 Runtime Parameters

      params:
        seconds: 3600.1
        expected: 60 minutes
      id: 3600.1-60 minutes
      

      📌 Setup phase

      duration:

      0.00022230111062526703
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013708416372537613
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013178493827581406
      

      outcome:

      passed
      
    • Test 339
      params: seconds=7199.9, expected="120 minutes"

      📌 Runtime Parameters

      params:
        seconds: 7199.9
        expected: 120 minutes
      id: 7199.9-120 minutes
      

      📌 Setup phase

      duration:

      0.000223526731133461
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001438939943909645
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014794012531638145
      

      outcome:

      passed
      
    • Test 340
      params: seconds=7200.1, expected="2 hours"

      📌 Runtime Parameters

      params:
        seconds: 7200.1
        expected: 2 hours
      id: 7200.1-2 hours
      

      📌 Setup phase

      duration:

      0.0002192119136452675
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014198897406458855
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014255009591579437
      

      outcome:

      passed
      
    • Test 341
      params: seconds=90.4, expected="90 seconds"

      📌 Runtime Parameters

      params:
        seconds: 90.4
        expected: 90 seconds
      id: 90.4-90 seconds
      

      📌 Setup phase

      duration:

      0.0002178531140089035
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014002295210957527
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014035124331712723
      

      outcome:

      passed
      
    • Test 342
      params: seconds=90.6, expected="91 seconds"

      📌 Runtime Parameters

      params:
        seconds: 90.6
        expected: 91 seconds
      id: 90.6-91 seconds
      

      📌 Setup phase

      duration:

      0.00022003008052706718
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002498673275113106
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001492118462920189
      

      outcome:

      passed
      
    • Test 343
      params: seconds=121.9, expected="2 minutes"

      📌 Runtime Parameters

      params:
        seconds: 121.9
        expected: 2 minutes
      id: 121.9-2 minutes
      

      📌 Setup phase

      duration:

      0.00022952212020754814
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013905717059969902
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013490533456206322
      

      outcome:

      passed
      
    • Test 346
      params: seconds=2592000.0, expected="4 weeks"

      📌 Runtime Parameters

      params:
        seconds: 2592000.0
        expected: 4 weeks
      id: 2592000.0-4 weeks
      

      📌 Setup phase

      duration:

      0.00023836782202124596
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014568772166967392
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001388927921652794
      

      outcome:

      passed
      
    • Test 347
      params: seconds=2800000.0, expected="5 weeks"

      📌 Runtime Parameters

      params:
        seconds: 2800000.0
        expected: 5 weeks
      id: 2800000.0-5 weeks
      

      📌 Setup phase

      duration:

      0.00021035457029938698
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001374310813844204
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015069730579853058
      

      outcome:

      passed
      
    • Test 348
      params: seconds=3888000.0, expected="6 weeks"

      📌 Runtime Parameters

      params:
        seconds: 3888000.0
        expected: 6 weeks
      id: 3888000.0-6 weeks
      

      📌 Setup phase

      duration:

      0.00021493714302778244
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001372024416923523
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014081783592700958
      

      outcome:

      passed
      
    • Test 349
      params: seconds=5097600.0, expected="8 weeks"

      📌 Runtime Parameters

      params:
        seconds: 5097600.0
        expected: 8 weeks
      id: 5097600.0-8 weeks
      

      📌 Setup phase

      duration:

      0.00020687002688646317
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014449190348386765
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013517821207642555
      

      outcome:

      passed
      
    • Test 350
      params: seconds=5184000.0, expected="9 weeks"

      📌 Runtime Parameters

      params:
        seconds: 5184000.0
        expected: 9 weeks
      id: 5184000.0-9 weeks
      

      📌 Setup phase

      duration:

      0.00021545030176639557
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013361778110265732
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013153022155165672
      

      outcome:

      passed
      
    • Test 351
      params: seconds=5270400.0, expected="2 months"

      📌 Runtime Parameters

      params:
        seconds: 5270400.0
        expected: 2 months
      id: 5270400.0-2 months
      

      📌 Setup phase

      duration:

      0.00021521979942917824
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013729277998209
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013422314077615738
      

      outcome:

      passed
      
    • Test 352
      params: seconds=23328000.0, expected="9 months"

      📌 Runtime Parameters

      params:
        seconds: 23328000.0
        expected: 9 months
      id: 23328000.0-9 months
      

      📌 Setup phase

      duration:

      0.00020566675812005997
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001337062567472458
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013131601735949516
      

      outcome:

      passed
      
    • Test 353
      params: seconds=31104000.0, expected="12 months"

      📌 Runtime Parameters

      params:
        seconds: 31104000.0
        expected: 12 months
      id: 31104000.0-12 months
      

      📌 Setup phase

      duration:

      0.00021359883248806
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014789216220378876
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013417983427643776
      

      outcome:

      passed
      
    • Test 354
      params: seconds=33696000.0, expected="13 months"

      📌 Runtime Parameters

      params:
        seconds: 33696000.0
        expected: 13 months
      id: 33696000.0-13 months
      

      📌 Setup phase

      duration:

      0.00022515002638101578
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014113588258624077
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001352350227534771
      

      outcome:

      passed
      
    • Test 355
      params: seconds=59616000.0, expected="23 months"

      📌 Runtime Parameters

      params:
        seconds: 59616000.0
        expected: 23 months
      id: 59616000.0-23 months
      

      📌 Setup phase

      duration:

      0.00022048503160476685
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014561228454113007
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014182459563016891
      

      outcome:

      passed
      
    • Test 356
      params: seconds=62208000.0, expected="24 months"

      📌 Runtime Parameters

      params:
        seconds: 62208000.0
        expected: 24 months
      id: 62208000.0-24 months
      

      📌 Setup phase

      duration:

      0.0002211621031165123
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014110933989286423
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013543292880058289
      

      outcome:

      passed
      
    • Test 357
      params: seconds=64208000.0, expected="2 years"

      📌 Runtime Parameters

      params:
        seconds: 64208000.0
        expected: 2 years
      id: 64208000.0-2 years
      

      📌 Setup phase

      duration:

      0.00022636586800217628
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001358063891530037
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013159262016415596
      

      outcome:

      passed
      
  • 📄 test_utils_sendmail.py

    Function: test_sendmail_real_local_verbose

    • Test 359

      📌 Setup phase

      duration:

      0.00012423843145370483
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      1.832743194885552
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002768109552562237
      

      outcome:

      passed
      
  • 📄 test_utils_snapshot.py

    Function: test_snapshot

    • Test 360
      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.0005165017209947109
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008601448498666286
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00020862510427832603
      

      outcome:

      passed
      
    • Test 361
      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.0003008628264069557
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048446282744407654
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016530603170394897
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0003014928661286831
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015082908794283867
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001780930906534195
      

      outcome:

      passed
      
    • Test 363
      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.0002847178839147091
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008336082100868225
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018675997853279114
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00031346408650279045
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005980520509183407
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00018411828204989433
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00029027462005615234
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005754530429840088
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001699230633676052
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002930941991508007
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005448139272630215
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001671421341598034
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002735559828579426
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005898820236325264
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017291400581598282
      

      outcome:

      passed
      
  • 📄 test_utils_termtitle.py

    Function: test_terminal_title_with_tmux

    • Test 368

      📌 Setup phase

      duration:

      0.00013626925647258759
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.019208581186830997
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0002561211585998535
      

      outcome:

      passed
      
  • 📄 test_utils_tqdm_mod.py

    Function: test_complete_progress_bar

    • Test 369

      📌 Setup phase

      duration:

      0.0001840861514210701
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.008701059967279434
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001833522692322731
      

      outcome:

      passed
      

    Function: test_set_progress_multiple_points

    • Test 370

      📌 Setup phase

      duration:

      0.000139554962515831
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.001525958999991417
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013236887753009796
      

      outcome:

      passed
      

    Function: test_format_sizeof_alignment

    • Test 371

      📌 Setup phase

      duration:

      0.00012703333050012589
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016880780458450317
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010239100083708763
      

      outcome:

      passed
      

    Function: test_custom_unit

    • Test 373

      📌 Setup phase

      duration:

      0.00012772111222147942
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.004750758875161409
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011866306886076927
      

      outcome:

      passed
      

    Function: test_clamp_above_total

    • Test 374

      📌 Setup phase

      duration:

      0.00011807586997747421
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00044898688793182373
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010951003059744835
      

      outcome:

      passed
      

    Function: test_clamp_below_zero

    • Test 375

      📌 Setup phase

      duration:

      0.00011305790394544601
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005734236910939217
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011815177276730537
      

      outcome:

      passed
      
  • 📄 test_utils_trinary.py

    Function: test_check_trinary_valid_values

    • Test 376

      📌 Setup phase

      duration:

      0.0001218477264046669
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016700290143489838
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010243197903037071
      

      outcome:

      passed
      

    Function: test_check_trinary_invalid_value

    • Test 377

      📌 Setup phase

      duration:

      0.00010718731209635735
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004087500274181366
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010320683941245079
      

      outcome:

      passed
      

    Function: test_check_trinary_with_custom_allowed_values

    • Test 378

      📌 Setup phase

      duration:

      0.00020346464589238167
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0002087317407131195
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013734493404626846
      

      outcome:

      passed
      
  • 📄 test_utils_typecast.py

    Function: test_downcast_success

    • Test 379

      📌 Setup phase

      duration:

      0.00020469166338443756
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00021159090101718903
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001072688028216362
      

      outcome:

      passed
      

    Function: test_upcast_success

    • Test 380

      📌 Setup phase

      duration:

      0.00011489400640130043
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00019675074145197868
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010292790830135345
      

      outcome:

      passed
      

    Function: test_downcast_invalid

    • Test 381

      📌 Setup phase

      duration:

      0.00012314924970269203
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0003657401539385319
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00011297408491373062
      

      outcome:

      passed
      

    Function: test_upcast_invalid

    • Test 382

      📌 Setup phase

      duration:

      0.00011172983795404434
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00017550820484757423
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010223407298326492
      

      outcome:

      passed
      

    Function: test_object_identity_preserved

    • Test 383

      📌 Setup phase

      duration:

      0.00010545412078499794
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001422753557562828
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010201102122664452
      

      outcome:

      passed
      

    Function: test_ensure_subclass_valid

    • Test 384

      📌 Setup phase

      duration:

      0.0001080809161067009
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014311308041214943
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.92841087281704e-05
      

      outcome:

      passed
      

    Function: test_ensure_subclass_invalid

    • Test 385

      📌 Setup phase

      duration:

      0.00010941410437226295
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00018069008365273476
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.838910773396492e-05
      

      outcome:

      passed
      

    Function: test_cast_changes_class

    • Test 386

      📌 Setup phase

      duration:

      0.00010351883247494698
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001502889208495617
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      9.926408529281616e-05
      

      outcome:

      passed
      

    Function: test_cast_preserves_identity

    • Test 387

      📌 Setup phase

      duration:

      0.00010832725092768669
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013545621186494827
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010144896805286407
      

      outcome:

      passed
      
  • 📄 test_utils_utils.py

    Function: test_singleton_instance

    • Test 388

      📌 Setup phase

      duration:

      0.00013978034257888794
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001588398590683937
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010395608842372894
      

      outcome:

      passed
      

    Function: test_singleton_identity

    • Test 389

      📌 Setup phase

      duration:

      0.000111323781311512
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013836799189448357
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00010216608643531799
      

      outcome:

      passed
      

    Function: test_typename

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.000329422764480114
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000165560282766819
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016127293929457664
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002390500158071518
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016101496294140816
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014721881598234177
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00024395575746893883
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013721361756324768
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013486016541719437
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.000232708640396595
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013967417180538177
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016775401309132576
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021540885791182518
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001331120729446411
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015836302191019058
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022354209795594215
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013603782281279564
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001407465897500515
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022894982248544693
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00015497859567403793
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013801176100969315
      

      outcome:

      passed
      
    • Test 397
      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.00021371431648731232
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013385387137532234
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013615423813462257
      

      outcome:

      passed
      
    • Test 398
      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.00023668399080634117
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001388336531817913
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015696696937084198
      

      outcome:

      passed
      
    • Test 399
      params: obj=" at 0x7f3902b7cd30>", expected="function"

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022203708067536354
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008648838847875595
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016387784853577614
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002519972622394562
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014978088438510895
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014375289902091026
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002316678874194622
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013612117618322372
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013846717774868011
      

      outcome:

      passed
      
    • Test 402
      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.00022760313004255295
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000137419905513525
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013525597751140594
      

      outcome:

      passed
      
    • Test 403
      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.00021298974752426147
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013695470988750458
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013813842087984085
      

      outcome:

      passed
      
    • Test 404
      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.00021777721121907234
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013195117935538292
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001507890410721302
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021412409842014313
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000141168013215065
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014400482177734375
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021646730601787567
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001378827728331089
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013854727149009705
      

      outcome:

      passed
      
    • Test 407
      params: obj=" at 0x7f3902b7b3c0>", expected="generator"

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022173486649990082
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001474008895456791
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013766437768936157
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022366084158420563
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014053704217076302
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013897893950343132
      

      outcome:

      passed
      

    Function: test_next_int

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021691294386982918
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013949675485491753
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014011701568961143
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00022723618894815445
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001345849595963955
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001335390843451023
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.000242503359913826
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013658078387379646
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001371060498058796
      

      outcome:

      passed
      

    Function: test_zero_pad

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00026424601674079895
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001420830376446247
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015092501416802406
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002564219757914543
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001380392350256443
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001726248301565647
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002610767260193825
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013375002890825272
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015559513121843338
      

      outcome:

      passed
      

    Function: test_iround

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00021642260253429413
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014625303447246552
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001389710232615471
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002283588983118534
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016577215865254402
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013936404138803482
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.0002194591797888279
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013641780242323875
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00013542920351028442
      

      outcome:

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00023591890931129456
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001399698667228222
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014165695756673813
      

      outcome:

      passed
      

    Function: test_sorted_naturally

    • Test 419
      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.00023865187540650368
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001987018622457981
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014852220192551613
      

      outcome:

      passed
      
    • Test 420
      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.0002213609404861927
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016892887651920319
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00014619389548897743
      

      outcome:

      passed
      

    Function: test_sorted_naturally_reverse

    • Test 421
      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.00022209901362657547
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001603551208972931
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001468290574848652
      

      outcome:

      passed
      
  • 📄 test_utils_xrange.py

    Function: test_xrange_finite

    • Test 422
      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.00028244080021977425
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00016703596338629723
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00016297772526741028
      

      outcome:

      passed
      
    • Test 423
      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.0002767820842564106
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013737287372350693
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0001516728661954403
      

      outcome:

      passed
      
    • Test 424
      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.0002722819335758686
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00014324672520160675
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015500513836741447
      

      outcome:

      passed
      
    • Test 425
      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.00025403639301657677
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00013677822425961494
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00017470400780439377
      

      outcome:

      passed
      

    Function: test_xrange_infinite

    • Test 426
      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.00026764487847685814
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001584119163453579
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015171803534030914
      

      outcome:

      passed
      
    • Test 427
      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.00037813419476151466
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0001584719866514206
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.00015518534928560257
      

      outcome:

      passed
      

    Function: test_xrange_too_many_args

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

      📌 Runtime Parameters

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

      📌 Setup phase

      duration:

      0.00018385611474514008
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004978282377123833
      

      outcome:

      passed
      

      📌 Teardown phase

      duration:

      0.0006771371699869633
      

      outcome:

      passed
      
Failed (30)
  • 📄 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.0002757711336016655
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009128530509769917
      

      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.0003037326969206333
      

      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.00025928206741809845
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0006254119798541069
      

      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.0002489900216460228
      

      outcome:

      passed
      
  • 📄 test_utils_hastyepics.py

    Function: test_motor_instantiation_fast_vs_epics

    • Test 179

      📌 Setup phase

      duration:

      0.00012524472549557686
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.10156502900645137
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_hastyepics.py
      lineno: 37
      message: AssertionError: Fast version (0.009673s) should be faster than EPICS (0.000267s)
      assert 0.00967254051938653 < 0.0002672626171261072
      

      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.009673s) should be faster than EPICS (0.000267s)
      E       assert 0.00967254051938653 < 0.0002672626171261072
      
      tests/test_utils_hastyepics.py:37: AssertionError
      

      📌 Teardown phase

      duration:

      0.0004028361290693283
      

      outcome:

      passed
      

    Function: test_motor_without_suffix_and_dot

    • Test 180

      📌 Setup phase

      duration:

      0.00020980369299650192
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0018693488091230392
      

      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.0001712827943265438
      

      outcome:

      passed
      

    Function: test_motor_initializes_device_attrs

    • Test 183

      📌 Setup phase

      duration:

      0.0001123291440308094
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.001435940619558096
      

      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.0001691277138888836
      

      outcome:

      passed
      
  • 📄 test_utils_logcfg.py

    Function: test_import_logging_once_per_module

    • Test 199

      📌 Setup phase

      duration:

      0.00013833772391080856
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      1.6539514297619462
      

      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.00033686310052871704
      

      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.0003503249026834965
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0009923758916556835
      

      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 0x7f390370a430>, 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.00021001789718866348
      

      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.0003258800134062767
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005358550697565079
      

      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 0x7f39037683a0>, 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.00021154480054974556
      

      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.0003710770979523659
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0008425028063356876
      

      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 0x7f39023958b0>, 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.0002694129943847656
      

      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.0003867638297379017
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004635103978216648
      

      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 0x7f3903711160>, 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.00022249110043048859
      

      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.0003878399729728699
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004551098681986332
      

      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 0x7f39037683a0>, 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.00022313185036182404
      

      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.0003790878690779209
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0005018166266381741
      

      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 0x7f3902b59940>, 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.0002193991094827652
      

      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.00036636507138609886
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048042088747024536
      

      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 0x7f3903834ca0>, 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.00021928595378994942
      

      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.0003747302107512951
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004674987867474556
      

      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 0x7f390370a430>, 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.0002235332503914833
      

      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.00036880699917674065
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00048468029126524925
      

      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 0x7f390370a5e0>, 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.00021881796419620514
      

      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.0003666616976261139
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004658983089029789
      

      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 0x7f3903880b80>, 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.0002321423962712288
      

      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.00036709103733301163
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0007782243192195892
      

      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 0x7f39023b5ee0>, 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.00022856378927826881
      

      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.00038010673597455025
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.000756600871682167
      

      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 0x7f39023b5d30>, 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.00022114533931016922
      

      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.0003817998804152012
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004599131643772125
      

      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 0x7f39023a4e50>, 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.0002220398746430874
      

      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.00038670795038342476
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004514330066740513
      

      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 0x7f39023b5ee0>, 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.00023272400721907616
      

      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.0003828899934887886
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004884167574346066
      

      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 0x7f39023a49d0>, 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.00022576283663511276
      

      outcome:

      passed
      
  • 📄 test_utils_pv.py

    Function: test_progress_and_repr

    • Test 309
      params: value=25.0, expected_bar="██▌ ", expected_color="\u001b[32m", expected_repr="PV \"TEST:PV\" at 25.0 units"

      📌 Runtime Parameters

      params:
        value: 25.0
        expected_bar: ██▌       
        expected_color: 
        expected_repr: PV "TEST:PV" at 25.0 units
      id: 25.0-\u2588\u2588\u258c       -\x1b[32m-PV "TEST:PV" at 25.0 units
      

      📌 Setup phase

      duration:

      0.0007392861880362034
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.0004570367746055
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f39023e9160>, value = 25.0
      expected_bar = '██▌       ', expected_color = '\x1b[32m'
      expected_repr = 'PV "TEST:PV" at 25.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = 25.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.0003748689778149128
      

      outcome:

      passed
      
    • Test 310
      params: value=50.0, expected_bar="█████ ", expected_color="\u001b[32m", expected_repr="PV \"TEST:PV\" at 50.0 units"

      📌 Runtime Parameters

      params:
        value: 50.0
        expected_bar: █████     
        expected_color: 
        expected_repr: PV "TEST:PV" at 50.0 units
      id: 50.0-\u2588\u2588\u2588\u2588\u2588     -\x1b[32m-PV "TEST:PV" at 50.0 units
      

      📌 Setup phase

      duration:

      0.0007034488953649998
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.000435059890151
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f39023e9a60>, value = 50.0
      expected_bar = '█████     ', expected_color = '\x1b[32m'
      expected_repr = 'PV "TEST:PV" at 50.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = 50.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.0004891450516879559
      

      outcome:

      passed
      
    • Test 311
      params: value=75.0, expected_bar="███████▌ ", expected_color="\u001b[32m", expected_repr="PV \"TEST:PV\" at 75.0 units"

      📌 Runtime Parameters

      params:
        value: 75.0
        expected_bar: ███████▌  
        expected_color: 
        expected_repr: PV "TEST:PV" at 75.0 units
      id: 75.0-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c  -\x1b[32m-PV "TEST:PV" at 75.0 units
      

      📌 Setup phase

      duration:

      0.0007853703573346138
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.000574015080929
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f39023e9ca0>, value = 75.0
      expected_bar = '███████▌  ', expected_color = '\x1b[32m'
      expected_repr = 'PV "TEST:PV" at 75.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = 75.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.00039950525388121605
      

      outcome:

      passed
      
    • Test 312
      params: value=100.0, expected_bar="██████████", expected_color="\u001b[32m", expected_repr="PV \"TEST:PV\" at 100.0 units"

      📌 Runtime Parameters

      params:
        value: 100.0
        expected_bar: ██████████
        expected_color: 
        expected_repr: PV "TEST:PV" at 100.0 units
      id: 100.0-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588-\x1b[32m-PV "TEST:PV" at 100.0 units
      

      📌 Setup phase

      duration:

      0.0007060710340738297
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.000450158957392
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f39023e9b80>, value = 100.0
      expected_bar = '██████████', expected_color = '\x1b[32m'
      expected_repr = 'PV "TEST:PV" at 100.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = 100.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.00047561898827552795
      

      outcome:

      passed
      
    • Test 313
      params: value=150.0, expected_bar=">>>>>>>>>>", expected_color="\u001b[31m", expected_repr="PV \"TEST:PV\" at 150.0 units"

      📌 Runtime Parameters

      params:
        value: 150.0
        expected_bar: >>>>>>>>>>
        expected_color: 
        expected_repr: PV "TEST:PV" at 150.0 units
      id: 150.0->>>>>>>>>>-\x1b[31m-PV "TEST:PV" at 150.0 units
      

      📌 Setup phase

      duration:

      0.0007831426337361336
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.000528435688466
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f3902b0ac10>, value = 150.0
      expected_bar = '>>>>>>>>>>', expected_color = '\x1b[31m'
      expected_repr = 'PV "TEST:PV" at 150.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = 150.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.0004988717846572399
      

      outcome:

      passed
      
    • Test 314
      params: value=-50.0, expected_bar="<<<<<<<<<<", expected_color="\u001b[31m", expected_repr="PV \"TEST:PV\" at -50.0 units"

      📌 Runtime Parameters

      params:
        value: -50.0
        expected_bar: <<<<<<<<<<
        expected_color: 
        expected_repr: PV "TEST:PV" at -50.0 units
      id: -50.0-<<<<<<<<<<-\x1b[31m-PV "TEST:PV" at -50.0 units
      

      📌 Setup phase

      duration:

      0.0007891831919550896
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      2.0005602198652923
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/slic/utils/rangebar.py
      lineno: 110
      message: TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      

      traceback:

      -   path: tests/test_utils_pv.py
        lineno: 58
        message: None
      -   path: slic/utils/pv.py
        lineno: 19
        message: in put
      -   path: slic/utils/rangebar.py
        lineno: 31
        message: in __enter__
      -   path: slic/utils/rangebar.py
        lineno: 40
        message: in show
      -   path: slic/utils/rangebar.py
        lineno: 49
        message: in get
      -   path: slic/utils/rangebar.py
        lineno: 110
        message: TypeError
      

      longrepr:

      fake_epics_pv = PV "TEST:PV" at None None
      capture_stdout = <_io.StringIO object at 0x7f39023e9a60>, value = -50.0
      expected_bar = '<<<<<<<<<<', expected_color = '\x1b[31m'
      expected_repr = 'PV "TEST:PV" at -50.0 units'
      
          @pytest.mark.parametrize("value, expected_bar, expected_color, expected_repr", [
              (25.0,  "██▌       ", colorama.Fore.GREEN, 'PV "TEST:PV" at 25.0 units'),
              (50.0,  "█████     ", colorama.Fore.GREEN, 'PV "TEST:PV" at 50.0 units'),
              (75.0,  "███████▌  ", colorama.Fore.GREEN, 'PV "TEST:PV" at 75.0 units'),
              (100.0, "██████████", colorama.Fore.GREEN, 'PV "TEST:PV" at 100.0 units'),
              (150.0, ">>>>>>>>>>", colorama.Fore.RED,   'PV "TEST:PV" at 150.0 units'),
              (-50.0, "<<<<<<<<<<", colorama.Fore.RED,   'PV "TEST:PV" at -50.0 units')
          ])
      
          def test_progress_and_repr(fake_epics_pv, capture_stdout, value, expected_bar, expected_color, expected_repr):
      
              pv = fake_epics_pv
      
              # Test put() and progress bar
      >       pv.put(value, show_progress=True)
      
      tests/test_utils_pv.py:58: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      slic/utils/pv.py:19: in put
          with RangeBar(start, stop) as rbar:
      slic/utils/rangebar.py:31: in __enter__
          self.show(self.start) # show initial bar (also if nothing changes)
      slic/utils/rangebar.py:40: in show
          bar = self.get(value)
      slic/utils/rangebar.py:49: in get
          part = calc_part(start, stop, value)
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      start = None, stop = -50.0, value = None
      
          def calc_part(start, stop, value):
      >       total_range = stop - start
      E       TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
      
      slic/utils/rangebar.py:110: TypeError
      

      📌 Teardown phase

      duration:

      0.0004713330417871475
      

      outcome:

      passed
      
  • 📄 test_utils_readable.py

    Function: test_readable_seconds

    • Test 344
      params: seconds=1296000.0, expected="15 days"

      📌 Runtime Parameters

      params:
        seconds: 1296000.0
        expected: 15 days
      id: 1296000.0-15 days
      

      📌 Setup phase

      duration:

      0.0002314811572432518
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0004788278602063656
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_readable.py
      lineno: 40
      message: AssertionError: assert '2 weeks' == '15 days'
      
        - 15 days
        + 2 weeks
      

      traceback:

      -   path: tests/test_utils_readable.py
        lineno: 40
        message: AssertionError
      

      longrepr:

      seconds = 1296000.0, expected = '15 days'
      
          @pytest.mark.parametrize("seconds, expected", [
      
              (59.4, "59 seconds"),
              (59.9, "60 seconds"),
              (119.9, "120 seconds"),
              (120.1, "2 minutes"),
      
              (3599.9, "60 minutes"),
              (3600.1, "60 minutes"),
              (7199.9, "120 minutes"),
              (7200.1, "2 hours"),
      
              (90.4, "90 seconds"),
              (90.6, "91 seconds"),
              (121.9, "2 minutes"),
      
              (1296000.0, "15 days"),
              (2332800.0, "27 days"),
              (2592000.0, "4 weeks"),
              (2800000.0, "5 weeks"),
              (3888000.0, "6 weeks"),
      
              (5097600.0, "8 weeks"),
              (5184000.0, "9 weeks"),
              (5270400.0, "2 months"),
      
              (23328000.0, "9 months"),
              (31104000.0, "12 months"),
              (33696000.0, "13 months"),
              (59616000.0, "23 months"),
              (62208000.0, "24 months"),
      
              (64208000.0, "2 years"),
      
          ])
          def test_readable_seconds(seconds, expected):
      >       assert readable_seconds(seconds) == expected
      E       AssertionError: assert '2 weeks' == '15 days'
      E         
      E         - 15 days
      E         + 2 weeks
      
      tests/test_utils_readable.py:40: AssertionError
      

      📌 Teardown phase

      duration:

      0.000198479276150465
      

      outcome:

      passed
      
    • Test 345
      params: seconds=2332800.0, expected="27 days"

      📌 Runtime Parameters

      params:
        seconds: 2332800.0
        expected: 27 days
      id: 2332800.0-27 days
      

      📌 Setup phase

      duration:

      0.00024042511358857155
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.00040514301508665085
      

      outcome:

      failed
      

      crash:

      path: /workspace/tligui_y/slic/tests/test_utils_readable.py
      lineno: 40
      message: AssertionError: assert '4 weeks' == '27 days'
      
        - 27 days
        + 4 weeks
      

      traceback:

      -   path: tests/test_utils_readable.py
        lineno: 40
        message: AssertionError
      

      longrepr:

      seconds = 2332800.0, expected = '27 days'
      
          @pytest.mark.parametrize("seconds, expected", [
      
              (59.4, "59 seconds"),
              (59.9, "60 seconds"),
              (119.9, "120 seconds"),
              (120.1, "2 minutes"),
      
              (3599.9, "60 minutes"),
              (3600.1, "60 minutes"),
              (7199.9, "120 minutes"),
              (7200.1, "2 hours"),
      
              (90.4, "90 seconds"),
              (90.6, "91 seconds"),
              (121.9, "2 minutes"),
      
              (1296000.0, "15 days"),
              (2332800.0, "27 days"),
              (2592000.0, "4 weeks"),
              (2800000.0, "5 weeks"),
              (3888000.0, "6 weeks"),
      
              (5097600.0, "8 weeks"),
              (5184000.0, "9 weeks"),
              (5270400.0, "2 months"),
      
              (23328000.0, "9 months"),
              (31104000.0, "12 months"),
              (33696000.0, "13 months"),
              (59616000.0, "23 months"),
              (62208000.0, "24 months"),
      
              (64208000.0, "2 years"),
      
          ])
          def test_readable_seconds(seconds, expected):
      >       assert readable_seconds(seconds) == expected
      E       AssertionError: assert '4 weeks' == '27 days'
      E         
      E         - 27 days
      E         + 4 weeks
      
      tests/test_utils_readable.py:40: AssertionError
      

      📌 Teardown phase

      duration:

      0.00017570890486240387
      

      outcome:

      passed
      
  • 📄 test_utils_tqdm_mod.py

    Function: test_float_alignment_in_bar

    • Test 372

      📌 Setup phase

      duration:

      0.00010892562568187714
      

      outcome:

      passed
      

      📌 Call phase

      duration:

      0.0012780358083546162
      

      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.0001576961949467659
      

      outcome:

      passed
      
Error (1)
  • 📄 test_utils_readable.py

    Function: test_rounding_cases

    • Test 358

      📌 Setup phase

      duration:

      0.0001648743636906147
      

      outcome:

      failed
      

      longrepr:

      file /workspace/tligui_y/slic/tests/test_utils_readable.py, line 43
        def test_rounding_cases(seconds, expected):
      E       fixture 'seconds' not found
      >       available fixtures: cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, extra, extras, include_metadata_in_junit_xml, json_metadata, metadata, monkeypatch, no_cover, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory
      >       use 'pytest --fixtures [testpath]' for help on them.
      
      /workspace/tligui_y/slic/tests/test_utils_readable.py:43
      

      📌 Teardown phase

      duration:

      0.00012249918654561043
      

      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 (34 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_pv.py
      type: Module
    -   nodeid: tests/test_utils_rangebar.py
      type: Module
    -   nodeid: tests/test_utils_readable.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: 7
      
    • 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_pv.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[25.0-\u2588\u2588\u258c       -\x1b[32m-PV "TEST:PV" at 25.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[50.0-\u2588\u2588\u2588\u2588\u2588     -\x1b[32m-PV "TEST:PV" at 50.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[75.0-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c  -\x1b[32m-PV "TEST:PV" at 75.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[100.0-\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588-\x1b[32m-PV "TEST:PV" at 100.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[150.0->>>>>>>>>>-\x1b[31m-PV "TEST:PV" at 150.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_progress_and_repr[-50.0-<<<<<<<<<<-\x1b[31m-PV "TEST:PV" at -50.0 units]
        type: Function
        lineno: 43
      -   nodeid: tests/test_utils_pv.py::test_use_callback_context_manager
        type: Function
        lineno: 73
      
    • 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_readable.py
      • Outcome: passed
      • result:
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[59.4-59 seconds]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[59.9-60 seconds]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[119.9-120 seconds]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[120.1-2 minutes]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[3599.9-60 minutes]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[3600.1-60 minutes]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[7199.9-120 minutes]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[7200.1-2 hours]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[90.4-90 seconds]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[90.6-91 seconds]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[121.9-2 minutes]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[1296000.0-15 days]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[2332800.0-27 days]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[2592000.0-4 weeks]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[2800000.0-5 weeks]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[3888000.0-6 weeks]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[5097600.0-8 weeks]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[5184000.0-9 weeks]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[5270400.0-2 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[23328000.0-9 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[31104000.0-12 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[33696000.0-13 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[59616000.0-23 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[62208000.0-24 months]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_readable_seconds[64208000.0-2 years]
        type: Function
        lineno: 3
      -   nodeid: tests/test_utils_readable.py::test_rounding_cases
        type: Function
        lineno: 42
      
    • 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