Source: rich
Version: 10.16.2-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> PYBUILD_SYSTEM=custom PYBUILD_TEST_ARGS="PYTHONPATH=/<<PKGBUILDDIR>> 
> {interpreter} -m pytest" dh_auto_test
> I: pybuild base:237: PYTHONPATH=/<<PKGBUILDDIR>> python3.10 -m pytest
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.10.2, pytest-6.2.5, py-1.10.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>
> collected 583 items
> 
> tests/test_align.py ................                                     [  
> 2%]
> tests/test_ansi.py .                                                     [  
> 2%]
> tests/test_bar.py .......                                                [  
> 4%]
> tests/test_block_bar.py ....                                             [  
> 4%]
> tests/test_box.py ......                                                 [  
> 5%]
> tests/test_card.py .                                                     [  
> 6%]
> tests/test_cells.py ..                                                   [  
> 6%]
> tests/test_color.py .................                                    [  
> 9%]
> tests/test_color_triplet.py ...                                          [  
> 9%]
> tests/test_columns.py .                                                  [  
> 9%]
> tests/test_columns_align.py .                                            [ 
> 10%]
> tests/test_console.py .................................................. [ 
> 18%]
> ..........................                                               [ 
> 23%]
> tests/test_constrain.py .                                                [ 
> 23%]
> tests/test_containers.py ....                                            [ 
> 24%]
> tests/test_control.py .....                                              [ 
> 24%]
> tests/test_emoji.py ......                                               [ 
> 25%]
> tests/test_file_proxy.py ..                                              [ 
> 26%]
> tests/test_filesize.py ..                                                [ 
> 26%]
> tests/test_highlighter.py ......................................         [ 
> 33%]
> tests/test_inspect.py ........                                           [ 
> 34%]
> tests/test_json.py .                                                     [ 
> 34%]
> tests/test_jupyter.py .                                                  [ 
> 34%]
> tests/test_layout.py ......                                              [ 
> 35%]
> tests/test_live.py ..........                                            [ 
> 37%]
> tests/test_live_render.py ....                                           [ 
> 38%]
> tests/test_log.py ...                                                    [ 
> 38%]
> tests/test_logging.py ....                                               [ 
> 39%]
> tests/test_lrucache.py .                                                 [ 
> 39%]
> tests/test_markdown.py ..                                                [ 
> 39%]
> tests/test_markdown_no_hyperlinks.py .                                   [ 
> 40%]
> tests/test_markup.py ...................                                 [ 
> 43%]
> tests/test_measure.py ....                                               [ 
> 44%]
> tests/test_padding.py .....                                              [ 
> 44%]
> tests/test_palette.py .                                                  [ 
> 45%]
> tests/test_panel.py .........                                            [ 
> 46%]
> tests/test_pick.py .                                                     [ 
> 46%]
> tests/test_pretty.py .....................s...                           [ 
> 51%]
> tests/test_progress.py .........................                         [ 
> 55%]
> tests/test_prompt.py ......                                              [ 
> 56%]
> tests/test_protocol.py ......                                            [ 
> 57%]
> tests/test_ratio.py .......                                              [ 
> 58%]
> tests/test_repr.py ........                                              [ 
> 60%]
> tests/test_rich_print.py .......                                         [ 
> 61%]
> tests/test_rule.py .......                                               [ 
> 62%]
> tests/test_screen.py .                                                   [ 
> 62%]
> tests/test_segment.py .............................................      [ 
> 70%]
> tests/test_spinner.py .....                                              [ 
> 71%]
> tests/test_stack.py .                                                    [ 
> 71%]
> tests/test_status.py ..                                                  [ 
> 71%]
> tests/test_style.py .........................                            [ 
> 75%]
> tests/test_styled.py .                                                   [ 
> 76%]
> tests/test_syntax.py .FF..F..........                                    [ 
> 78%]
> tests/test_table.py .......                                              [ 
> 80%]
> tests/test_tabulate.py .                                                 [ 
> 80%]
> tests/test_text.py ..................................................... [ 
> 89%]
> .............................                                            [ 
> 94%]
> tests/test_theme.py .....                                                [ 
> 95%]
> tests/test_tools.py ....                                                 [ 
> 95%]
> tests/test_traceback.py ...............                                  [ 
> 98%]
> tests/test_tree.py .....s.s.                                             
> [100%]
> 
> =================================== FAILURES 
> ===================================
> ______________________________ test_python_render 
> ______________________________
> 
>     def test_python_render():
>         syntax = Panel.fit(
>             Syntax(
>                 CODE,
>                 lexer_name="python",
>                 line_numbers=True,
>                 line_range=(2, 10),
>                 theme="foo",
>                 code_width=60,
>                 word_wrap=True,
>             ),
>             padding=0,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> >       assert rendered_syntax == expected
> E       AssertionError: assert '╭───────────...──────────╯\n' == 
> '╭───────────...──────────╯\n'
> E         Skipping 1906 identical leading characters in diff, use -v to show
> E         Skipping 1814 identical trailing characters in diff, use -v to show
> E         - [1;38;2;210;65;58;48;2;248
> E         ?           -   ^  ^
> E         + [1;38;2;203;63;56;48;2;248
> E         ?            +  ^  ^
> 
> tests/test_syntax.py:59: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> __________________________ test_python_render_simple 
> ___________________________
> 
>     def test_python_render_simple():
>         syntax = Syntax(
>             CODE,
>             lexer_name="python",
>             line_numbers=False,
>             theme="foo",
>             code_width=60,
>             word_wrap=False,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '\x1b[1;38;2;0;128;0;48;2;248;248;248mdef\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;255;48;2;248;248;248mloop_first_last\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mT\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m]\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m-\x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m>\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mTuple\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mb\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m
>     \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a 
> tuple with a flag for first an\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                               \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                     
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                    \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m 
>        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                               
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                            
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m     
>    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[48;2;248;248;248m
>                                        
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[48;2;248;248;248m   
>                            \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                        \x1b[0m\n'
> >       assert rendered_syntax == expected
> E       AssertionError: assert '\x1b[1;38;2;...    \x1b[0m\n' == 
> '\x1b[1;38;2;...    \x1b[0m\n'
> E         Skipping 2033 identical leading characters in diff, use -v to show
> E         Skipping 2431 identical trailing characters in diff, use -v to show
> E         - [1;38;2;210;65;58;48;2;248
> E         ?           -   ^  ^
> E         + [1;38;2;203;63;56;48;2;248
> E         ?            +  ^  ^
> 
> tests/test_syntax.py:74: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '\x1b[1;38;2;0;128;0;48;2;248;248;248mdef\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;255;48;2;248;248;248mloop_first_last\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mT\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m]\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m-\x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m>\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mTuple\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mb\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m
>     \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a 
> tuple with a flag for first an\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                               \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                     
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                    \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m 
>        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                               
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                            
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m     
>    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[48;2;248;248;248m
>                                        
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[48;2;248;248;248m   
>                            \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                        \x1b[0m\n'
> _______________________ test_python_render_indent_guides 
> _______________________
> 
>     def test_python_render_indent_guides():
>         syntax = Panel.fit(
>             Syntax(
>                 CODE,
>                 lexer_name="python",
>                 line_numbers=True,
>                 line_range=(2, 10),
>                 theme="foo",
>                 code_width=60,
>                 word_wrap=True,
>                 indent_guides=True,
>             ),
>             padding=0,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> >       assert rendered_syntax == expected
> E       assert '╭───────────...──────────╯\n' == 
> '╭───────────...──────────╯\n'
> E         Skipping 154 identical leading characters in diff, use -v to show
> E         Skipping 478 identical trailing characters in diff, use -v to show
> E         - 2;3;38;2;64;128;128;48;2;248;248;248m│   
> """Iterate and generate a tuple with 
> a flag for first  │
> E         ?           ^   ^   ^
> E         + 2;3;38;2;61;123;123;48;2;248;248;248m│   
> """Iterate and generate a tuple with 
> a flag for first  │
> E         ?           ^   ^   ^
> E           │     
> and ...
> E         
> E         ...Full output truncated (33 lines hidden), use '-vv' to show
> 
> tests/test_syntax.py:127: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> =============================== warnings summary 
> ===============================
> tests/test_tabulate.py: 17 warnings
>   /<<PKGBUILDDIR>>/rich/tabulate.py:32: DeprecationWarning: tabulate_mapping 
> will be deprecated in Rich v11
>     warnings.warn("tabulate_mapping will be deprecated in Rich v11", 
> DeprecationWarning)
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> FAILED tests/test_syntax.py::test_python_render - AssertionError: assert 
> '╭──...
> FAILED tests/test_syntax.py::test_python_render_simple - AssertionError: 
> asse...
> FAILED tests/test_syntax.py::test_python_render_indent_guides - assert 
> '╭────...
> ============ 3 failed, 577 passed, 3 skipped, 17 warnings in 4.70s 
> =============
> E: pybuild pybuild:367: test: plugin custom failed with: exit code=1: 
> PYTHONPATH=/<<PKGBUILDDIR>> python3.10 -m pytest
> I: pybuild base:237: PYTHONPATH=/<<PKGBUILDDIR>> python3.9 -m pytest
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.9.10, pytest-6.2.5, py-1.10.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>
> collected 583 items
> 
> tests/test_align.py ................                                     [  
> 2%]
> tests/test_ansi.py .                                                     [  
> 2%]
> tests/test_bar.py .......                                                [  
> 4%]
> tests/test_block_bar.py ....                                             [  
> 4%]
> tests/test_box.py ......                                                 [  
> 5%]
> tests/test_card.py .                                                     [  
> 6%]
> tests/test_cells.py ..                                                   [  
> 6%]
> tests/test_color.py .................                                    [  
> 9%]
> tests/test_color_triplet.py ...                                          [  
> 9%]
> tests/test_columns.py .                                                  [  
> 9%]
> tests/test_columns_align.py .                                            [ 
> 10%]
> tests/test_console.py .................................................. [ 
> 18%]
> ..........................                                               [ 
> 23%]
> tests/test_constrain.py .                                                [ 
> 23%]
> tests/test_containers.py ....                                            [ 
> 24%]
> tests/test_control.py .....                                              [ 
> 24%]
> tests/test_emoji.py ......                                               [ 
> 25%]
> tests/test_file_proxy.py ..                                              [ 
> 26%]
> tests/test_filesize.py ..                                                [ 
> 26%]
> tests/test_highlighter.py ......................................         [ 
> 33%]
> tests/test_inspect.py ......s.                                           [ 
> 34%]
> tests/test_json.py .                                                     [ 
> 34%]
> tests/test_jupyter.py .                                                  [ 
> 34%]
> tests/test_layout.py ......                                              [ 
> 35%]
> tests/test_live.py ..........                                            [ 
> 37%]
> tests/test_live_render.py ....                                           [ 
> 38%]
> tests/test_log.py ...                                                    [ 
> 38%]
> tests/test_logging.py ....                                               [ 
> 39%]
> tests/test_lrucache.py .                                                 [ 
> 39%]
> tests/test_markdown.py ..                                                [ 
> 39%]
> tests/test_markdown_no_hyperlinks.py .                                   [ 
> 40%]
> tests/test_markup.py ...................                                 [ 
> 43%]
> tests/test_measure.py ....                                               [ 
> 44%]
> tests/test_padding.py .....                                              [ 
> 44%]
> tests/test_palette.py .                                                  [ 
> 45%]
> tests/test_panel.py .........                                            [ 
> 46%]
> tests/test_pick.py .                                                     [ 
> 46%]
> tests/test_pretty.py ......................s..                           [ 
> 51%]
> tests/test_progress.py .........................                         [ 
> 55%]
> tests/test_prompt.py ......                                              [ 
> 56%]
> tests/test_protocol.py ......                                            [ 
> 57%]
> tests/test_ratio.py .......                                              [ 
> 58%]
> tests/test_repr.py ........                                              [ 
> 60%]
> tests/test_rich_print.py .......                                         [ 
> 61%]
> tests/test_rule.py .......                                               [ 
> 62%]
> tests/test_screen.py .                                                   [ 
> 62%]
> tests/test_segment.py .............................................      [ 
> 70%]
> tests/test_spinner.py .....                                              [ 
> 71%]
> tests/test_stack.py .                                                    [ 
> 71%]
> tests/test_status.py ..                                                  [ 
> 71%]
> tests/test_style.py .........................                            [ 
> 75%]
> tests/test_styled.py .                                                   [ 
> 76%]
> tests/test_syntax.py .FF..F..........                                    [ 
> 78%]
> tests/test_table.py .......                                              [ 
> 80%]
> tests/test_tabulate.py .                                                 [ 
> 80%]
> tests/test_text.py ..................................................... [ 
> 89%]
> .............................                                            [ 
> 94%]
> tests/test_theme.py .....                                                [ 
> 95%]
> tests/test_tools.py ....                                                 [ 
> 95%]
> tests/test_traceback.py ...............                                  [ 
> 98%]
> tests/test_tree.py .....s.s.                                             
> [100%]
> 
> =================================== FAILURES 
> ===================================
> ______________________________ test_python_render 
> ______________________________
> 
>     def test_python_render():
>         syntax = Panel.fit(
>             Syntax(
>                 CODE,
>                 lexer_name="python",
>                 line_numbers=True,
>                 line_range=(2, 10),
>                 theme="foo",
>                 code_width=60,
>                 word_wrap=True,
>             ),
>             padding=0,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> >       assert rendered_syntax == expected
> E       AssertionError: assert '╭───────────...──────────╯\n' == 
> '╭───────────...──────────╯\n'
> E         Skipping 1906 identical leading characters in diff, use -v to show
> E         Skipping 1814 identical trailing characters in diff, use -v to show
> E         - [1;38;2;210;65;58;48;2;248
> E         ?           -   ^  ^
> E         + [1;38;2;203;63;56;48;2;248
> E         ?            +  ^  ^
> 
> tests/test_syntax.py:59: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> __________________________ test_python_render_simple 
> ___________________________
> 
>     def test_python_render_simple():
>         syntax = Syntax(
>             CODE,
>             lexer_name="python",
>             line_numbers=False,
>             theme="foo",
>             code_width=60,
>             word_wrap=False,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '\x1b[1;38;2;0;128;0;48;2;248;248;248mdef\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;255;48;2;248;248;248mloop_first_last\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mT\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m]\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m-\x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m>\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mTuple\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mb\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m
>     \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a 
> tuple with a flag for first an\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                               \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                     
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                    \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m 
>        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                               
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                            
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m     
>    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[48;2;248;248;248m
>                                        
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[48;2;248;248;248m   
>                            \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                        \x1b[0m\n'
> >       assert rendered_syntax == expected
> E       AssertionError: assert '\x1b[1;38;2;...    \x1b[0m\n' == 
> '\x1b[1;38;2;...    \x1b[0m\n'
> E         Skipping 2033 identical leading characters in diff, use -v to show
> E         Skipping 2431 identical trailing characters in diff, use -v to show
> E         - [1;38;2;210;65;58;48;2;248
> E         ?           -   ^  ^
> E         + [1;38;2;203;63;56;48;2;248
> E         ?            +  ^  ^
> 
> tests/test_syntax.py:74: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '\x1b[1;38;2;0;128;0;48;2;248;248;248mdef\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;255;48;2;248;248;248mloop_first_last\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mT\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m]\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m-\x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m>\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mIterable\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mTuple\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m[\x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mb\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m
>     \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a 
> tuple with a flag for first an\x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                               \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                     
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                    \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m 
>        
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                               
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                            
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m     
>    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                   \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[48;2;248;248;248m
>                                        
> \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m        
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[48;2;248;248;248m   
>                            \x1b[0m\n\x1b[38;2;0;0;0;48;2;248;248;248m    
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                        \x1b[0m\n'
> _______________________ test_python_render_indent_guides 
> _______________________
> 
>     def test_python_render_indent_guides():
>         syntax = Panel.fit(
>             Syntax(
>                 CODE,
>                 lexer_name="python",
>                 line_numbers=True,
>                 line_range=(2, 10),
>                 theme="foo",
>                 code_width=60,
>                 word_wrap=True,
>                 indent_guides=True,
>             ),
>             padding=0,
>         )
>         rendered_syntax = render(syntax)
>         print(repr(rendered_syntax))
>         expected = 
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;210;65;58;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[2;3;38;2;64;128;128;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> >       assert rendered_syntax == expected
> E       assert '╭───────────...──────────╯\n' == 
> '╭───────────...──────────╯\n'
> E         Skipping 154 identical leading characters in diff, use -v to show
> E         Skipping 478 identical trailing characters in diff, use -v to show
> E         - 2;3;38;2;64;128;128;48;2;248;248;248m│   
> """Iterate and generate a tuple with 
> a flag for first  │
> E         ?           ^   ^   ^
> E         + 2;3;38;2;61;123;123;48;2;248;248;248m│   
> """Iterate and generate a tuple with 
> a flag for first  │
> E         ?           ^   ^   ^
> E           │     
> and ...
> E         
> E         ...Full output truncated (33 lines hidden), use '-vv' to show
> 
> tests/test_syntax.py:127: AssertionError
> ----------------------------- Captured stdout call 
> -----------------------------
> '╭────────────────────────────────────────────────────────────────╮\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m
>   \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 2 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248m"""Iterate and generate a tuple 
> with a flag for first \x1b[0m\x1b[48;2;248;248;248m 
> \x1b[0m│\n│\x1b[48;2;248;248;248m     
> \x1b[0m\x1b[3;38;2;186;33;33;48;2;248;248;248mand last 
> value."""\x1b[0m\x1b[48;2;248;248;248m                                        
>  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 3 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248miter\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalues\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 4 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mtry\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                                    
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 5 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;128;0;48;2;248;248;248mnext\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m(\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m)\x1b[0m\x1b[48;2;248;248;248m
>                  \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 6 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mexcept\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;203;63;56;48;2;248;248;248mStopIteration\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                                   
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 7 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mreturn\x1b[0m\x1b[48;2;248;248;248m
>                                              
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 8 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;102;102;102;48;2;248;248;248m=\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mTrue\x1b[0m\x1b[48;2;248;248;248m 
>                                           
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m 9 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mfor\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mvalue\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;170;34;255;48;2;248;248;248min\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248miter_values\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m:\x1b[0m\x1b[48;2;248;248;248m
>                               
> \x1b[0m│\n│\x1b[1;38;2;24;24;24;48;2;248;248;248m  
> \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m10 
> \x1b[0m\x1b[2;3;38;2;61;123;123;48;2;248;248;248m│   │   
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248myield\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mfirst\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mFalse\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m,\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m
>  
> \x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248mprevious_value\x1b[0m\x1b[48;2;248;248;248m
>                  
> \x1b[0m│\n╰────────────────────────────────────────────────────────────────╯\n'
> =============================== warnings summary 
> ===============================
> tests/test_tabulate.py: 17 warnings
>   /<<PKGBUILDDIR>>/rich/tabulate.py:32: DeprecationWarning: tabulate_mapping 
> will be deprecated in Rich v11
>     warnings.warn("tabulate_mapping will be deprecated in Rich v11", 
> DeprecationWarning)
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> FAILED tests/test_syntax.py::test_python_render - AssertionError: assert 
> '╭──...
> FAILED tests/test_syntax.py::test_python_render_simple - AssertionError: 
> asse...
> FAILED tests/test_syntax.py::test_python_render_indent_guides - assert 
> '╭────...
> ============ 3 failed, 576 passed, 4 skipped, 17 warnings in 4.75s 
> =============
> E: pybuild pybuild:367: test: plugin custom failed with: exit code=1: 
> PYTHONPATH=/<<PKGBUILDDIR>> python3.9 -m pytest
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.10 
> 3.9" returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2022/02/18/rich_10.16.2-1_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

Reply via email to