py$(PYV): remove tox env folder $(@D)/.tox/py$(PYV)
py$(PYV): commands[0]> python -m pytest --cov-report term-missing --cov=rich tests/
============================= test session starts ==============================
platform sunos5 -- Python $(PYTHON_VERSION).X -- $(@D)/.tox/py$(PYV)/bin/python
cachedir: $(@D)/.tox/py$(PYV)/.pytest_cache
rootdir: $(@D)/tests
configfile: pytest.ini
collecting ... collected 874 items

tests/test_align.py::test_bad_align_legal PASSED
tests/test_align.py::test_repr PASSED
tests/test_align.py::test_align_left PASSED
tests/test_align.py::test_align_center PASSED
tests/test_align.py::test_align_right PASSED
tests/test_align.py::test_align_top PASSED
tests/test_align.py::test_align_middle PASSED
tests/test_align.py::test_align_bottom PASSED
tests/test_align.py::test_align_center_middle PASSED
tests/test_align.py::test_align_fit PASSED
tests/test_align.py::test_align_right_style PASSED
tests/test_align.py::test_measure PASSED
tests/test_align.py::test_align_no_pad PASSED
tests/test_align.py::test_align_width PASSED
tests/test_align.py::test_shortcuts PASSED
tests/test_align.py::test_vertical_center PASSED
tests/test_ansi.py::test_decode PASSED
tests/test_ansi.py::test_decode_example PASSED
tests/test_ansi.py::test_decode_issue_2688[\x1b[31mFound 4 errors in 2 files (checked 18 source files)\x1b(B\x1b[m\n-Found 4 errors in 2 files (checked 18 source files)] PASSED
tests/test_ansi.py::test_decode_issue_2688[Hallo-Hallo] PASSED
tests/test_ansi.py::test_decode_issue_2688[\x1b(BHallo-Hallo] PASSED
tests/test_ansi.py::test_decode_issue_2688[\x1b(JHallo-Hallo] PASSED
tests/test_ansi.py::test_decode_issue_2688[\x1b(BHal\x1b(Jlo-Hallo] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[0] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[1] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[2] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[3] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[4] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[5] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[6] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[7] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[8] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[9] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[:] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[;] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[<] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[=] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[>] PASSED
tests/test_ansi.py::test_strip_private_escape_sequences[?] PASSED
tests/test_bar.py::test_init PASSED
tests/test_bar.py::test_update PASSED
tests/test_bar.py::test_render PASSED
tests/test_bar.py::test_measure PASSED
tests/test_bar.py::test_zero_total PASSED
tests/test_bar.py::test_pulse PASSED
tests/test_bar.py::test_get_pulse_segments PASSED
tests/test_block_bar.py::test_repr PASSED
tests/test_block_bar.py::test_render PASSED
tests/test_block_bar.py::test_measure PASSED
tests/test_block_bar.py::test_zero_total PASSED
tests/test_box.py::test_str PASSED
tests/test_box.py::test_repr PASSED
tests/test_box.py::test_get_top PASSED
tests/test_box.py::test_get_row PASSED
tests/test_box.py::test_get_bottom PASSED
tests/test_box.py::test_box_substitute_for_same_box PASSED
tests/test_box.py::test_box_substitute_for_different_box_legacy_windows PASSED
tests/test_box.py::test_box_substitute_for_different_box_ascii_encoding PASSED
tests/test_card.py::test_card_render PASSED
tests/test_cells.py::test_cell_len_long_string PASSED
tests/test_cells.py::test_cell_len_short_string PASSED
tests/test_cells.py::test_set_cell_size PASSED
tests/test_cells.py::test_set_cell_size_infinite PASSED
tests/test_cells.py::test_chop_cells PASSED
tests/test_cells.py::test_chop_cells_double_width_boundary PASSED
tests/test_cells.py::test_chop_cells_mixed_width PASSED
tests/test_cells.py::test_is_single_cell_widths PASSED
tests/test_color.py::test_str PASSED
tests/test_color.py::test_repr PASSED
tests/test_color.py::test_color_system_repr PASSED
tests/test_color.py::test_rich PASSED
tests/test_color.py::test_system PASSED
tests/test_color.py::test_windows PASSED
tests/test_color.py::test_truecolor PASSED
tests/test_color.py::test_parse_success PASSED
tests/test_color.py::test_from_triplet PASSED
tests/test_color.py::test_from_rgb PASSED
tests/test_color.py::test_from_ansi PASSED
tests/test_color.py::test_default PASSED
tests/test_color.py::test_parse_error PASSED
tests/test_color.py::test_get_ansi_codes PASSED
tests/test_color.py::test_downgrade PASSED
tests/test_color.py::test_parse_rgb_hex PASSED
tests/test_color.py::test_blend_rgb PASSED
tests/test_color_triplet.py::test_hex PASSED
tests/test_color_triplet.py::test_rgb PASSED
tests/test_color_triplet.py::test_normalized PASSED
tests/test_columns.py::test_render PASSED
tests/test_columns_align.py::test_align PASSED
tests/test_console.py::test_dumb_terminal PASSED
tests/test_console.py::test_soft_wrap PASSED
tests/test_console.py::test_16color_terminal PASSED
tests/test_console.py::test_truecolor_terminal PASSED
tests/test_console.py::test_kitty_terminal PASSED
tests/test_console.py::test_console_options_update PASSED
tests/test_console.py::test_console_options_update_height PASSED
tests/test_console.py::test_init PASSED
tests/test_console.py::test_size PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[True-no_descriptor_size0-ValueError-ValueError-ValueError-expected_size0] PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[False-no_descriptor_size1-ValueError-ValueError-ValueError-expected_size1] PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[False-ValueError-stdin_size2-ValueError-ValueError-expected_size2] PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[False-ValueError-ValueError-stdout_size3-ValueError-expected_size3] PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[False-ValueError-ValueError-ValueError-stderr_size4-expected_size4] PASSED
tests/test_console.py::test_size_can_fall_back_to_std_descriptors[False-ValueError-ValueError-ValueError-ValueError-expected_size5] PASSED
tests/test_console.py::test_repr PASSED
tests/test_console.py::test_print PASSED
tests/test_console.py::test_print_multiple PASSED
tests/test_console.py::test_print_text PASSED
tests/test_console.py::test_print_text_multiple PASSED
tests/test_console.py::test_print_json PASSED
tests/test_console.py::test_print_json_error PASSED
tests/test_console.py::test_print_json_data PASSED
tests/test_console.py::test_print_json_ensure_ascii PASSED
tests/test_console.py::test_print_json_with_default_ensure_ascii PASSED
tests/test_console.py::test_print_json_indent_none PASSED
tests/test_console.py::test_console_null_file PASSED
tests/test_console.py::test_log PASSED
tests/test_console.py::test_log_milliseconds PASSED
tests/test_console.py::test_print_empty PASSED
tests/test_console.py::test_markup_highlight PASSED
tests/test_console.py::test_print_style PASSED
tests/test_console.py::test_show_cursor PASSED
tests/test_console.py::test_clear PASSED
tests/test_console.py::test_clear_no_terminal PASSED
tests/test_console.py::test_get_style PASSED
tests/test_console.py::test_get_style_default PASSED
tests/test_console.py::test_get_style_error PASSED
tests/test_console.py::test_render_error PASSED
tests/test_console.py::test_control PASSED
tests/test_console.py::test_capture PASSED
tests/test_console.py::test_input PASSED
tests/test_console.py::test_input_password PASSED
tests/test_console.py::test_status PASSED
tests/test_console.py::test_justify_none PASSED
tests/test_console.py::test_justify_left PASSED
tests/test_console.py::test_justify_center PASSED
tests/test_console.py::test_justify_right PASSED
tests/test_console.py::test_justify_renderable_none PASSED
tests/test_console.py::test_justify_renderable_left PASSED
tests/test_console.py::test_justify_renderable_center PASSED
tests/test_console.py::test_justify_renderable_right PASSED
tests/test_console.py::test_render_broken_renderable PASSED
tests/test_console.py::test_export_text PASSED
tests/test_console.py::test_export_html PASSED
tests/test_console.py::test_export_html_inline PASSED
tests/test_console.py::test_export_svg PASSED
tests/test_console.py::test_export_svg_specified_unique_id PASSED
tests/test_console.py::test_save_svg PASSED
tests/test_console.py::test_save_text PASSED
tests/test_console.py::test_save_html PASSED
tests/test_console.py::test_no_wrap PASSED
tests/test_console.py::test_unicode_error PASSED
tests/test_console.py::test_bell PASSED
tests/test_console.py::test_pager PASSED
tests/test_console.py::test_out PASSED
tests/test_console.py::test_render_group PASSED
tests/test_console.py::test_render_group_fit PASSED
tests/test_console.py::test_get_time PASSED
tests/test_console.py::test_console_style PASSED
tests/test_console.py::test_no_color PASSED
tests/test_console.py::test_quiet PASSED
tests/test_console.py::test_no_nested_live PASSED
tests/test_console.py::test_screen PASSED
tests/test_console.py::test_screen_update PASSED
tests/test_console.py::test_height PASSED
tests/test_console.py::test_columns_env PASSED
tests/test_console.py::test_lines_env PASSED
tests/test_console.py::test_screen_update_class PASSED
tests/test_console.py::test_is_alt_screen PASSED
tests/test_console.py::test_set_console_title PASSED
tests/test_console.py::test_update_screen PASSED
tests/test_console.py::test_update_screen_lines PASSED
tests/test_console.py::test_update_options_markup PASSED
tests/test_console.py::test_print_width_zero PASSED
tests/test_console.py::test_size_properties PASSED
tests/test_console.py::test_print_newline_start PASSED
tests/test_console.py::test_is_terminal_broken_file PASSED
tests/test_console.py::test_detect_color_system PASSED
tests/test_console.py::test_reset_height PASSED
tests/test_console.py::test_render_lines_height_minus_vertical_pad_is_negative PASSED
tests/test_console.py::test_recording_no_stdout_and_no_stderr_files PASSED
tests/test_console.py::test_capturing_no_stdout_and_no_stderr_files PASSED
tests/test_console.py::test_force_color PASSED
tests/test_console.py::test_force_color_jupyter PASSED
tests/test_console.py::test_reenable_highlighting PASSED
tests/test_console.py::test_brokenpipeerror PASSED
tests/test_console.py::test_capture_and_record PASSED
tests/test_constrain.py::test_width_of_none PASSED
tests/test_containers.py::test_renderables_measure PASSED
tests/test_containers.py::test_renderables_empty PASSED
tests/test_containers.py::test_lines_rich_console PASSED
tests/test_containers.py::test_lines_justify PASSED
tests/test_control.py::test_control PASSED
tests/test_control.py::test_strip_control_codes PASSED
tests/test_control.py::test_escape_control_codes PASSED
tests/test_control.py::test_control_move_to PASSED
tests/test_control.py::test_control_move PASSED
tests/test_control.py::test_move_to_column PASSED
tests/test_control.py::test_title PASSED
tests/test_emoji.py::test_no_emoji PASSED
tests/test_emoji.py::test_str_repr PASSED
tests/test_emoji.py::test_replace PASSED
tests/test_emoji.py::test_render PASSED
tests/test_emoji.py::test_variant PASSED
tests/test_emoji.py::test_variant_non_default PASSED
tests/test_file_proxy.py::test_empty_bytes PASSED
tests/test_file_proxy.py::test_flush PASSED
tests/test_file_proxy.py::test_new_lines PASSED
tests/test_filesize.py::test_traditional PASSED
tests/test_filesize.py::test_pick_unit_and_suffix PASSED
tests/test_getfileno.py::test_get_fileno PASSED
tests/test_getfileno.py::test_get_fileno_missing PASSED
tests/test_getfileno.py::test_get_fileno_broken PASSED
tests/test_highlighter.py::test_wrong_type PASSED
tests/test_highlighter.py::test_highlight_regex[-spans0] PASSED
tests/test_highlighter.py::test_highlight_regex[ -spans1] PASSED
tests/test_highlighter.py::test_highlight_regex[<foo>-spans2] PASSED
tests/test_highlighter.py::test_highlight_regex[<foo: 23>-spans3] PASSED
tests/test_highlighter.py::test_highlight_regex[<foo: <bar: 23>>-spans4] PASSED
tests/test_highlighter.py::test_highlight_regex[False True None-spans5] PASSED
tests/test_highlighter.py::test_highlight_regex[foo=bar-spans6] PASSED
tests/test_highlighter.py::test_highlight_regex[foo="bar"-spans7] PASSED
tests/test_highlighter.py::test_highlight_regex[<Permission.WRITE|READ: 3>-spans8] PASSED
tests/test_highlighter.py::test_highlight_regex[( )-spans9] PASSED
tests/test_highlighter.py::test_highlight_regex[[ ]-spans10] PASSED
tests/test_highlighter.py::test_highlight_regex[{ }-spans11] PASSED
tests/test_highlighter.py::test_highlight_regex[ 1 -spans12] PASSED
tests/test_highlighter.py::test_highlight_regex[ 1.2 -spans13] PASSED
tests/test_highlighter.py::test_highlight_regex[ 0xff -spans14] PASSED
tests/test_highlighter.py::test_highlight_regex[ 1e10 -spans15] PASSED
tests/test_highlighter.py::test_highlight_regex[ 1j -spans16] PASSED
tests/test_highlighter.py::test_highlight_regex[ 3.14j -spans17] PASSED
tests/test_highlighter.py::test_highlight_regex[ (3.14+2.06j) -spans18] PASSED
tests/test_highlighter.py::test_highlight_regex[ (3+2j) -spans19] PASSED
tests/test_highlighter.py::test_highlight_regex[ (123456.4321-1234.5678j) -spans20] PASSED
tests/test_highlighter.py::test_highlight_regex[ (-123123-2.1312342342423422e+25j) -spans21] PASSED
tests/test_highlighter.py::test_highlight_regex[ /foo -spans22] PASSED
tests/test_highlighter.py::test_highlight_regex[ /foo/bar.html -spans23] PASSED
tests/test_highlighter.py::test_highlight_regex[01-23-45-67-89-AB-spans24] PASSED
tests/test_highlighter.py::test_highlight_regex[01-23-45-FF-FE-67-89-AB-spans25] PASSED
tests/test_highlighter.py::test_highlight_regex[01:23:45:67:89:AB-spans26] PASSED
tests/test_highlighter.py::test_highlight_regex[01:23:45:FF:FE:67:89:AB-spans27] PASSED
tests/test_highlighter.py::test_highlight_regex[0123.4567.89AB-spans28] PASSED
tests/test_highlighter.py::test_highlight_regex[0123.45FF.FE67.89AB-spans29] PASSED
tests/test_highlighter.py::test_highlight_regex[ed-ed-ed-ed-ed-ed-spans30] PASSED
tests/test_highlighter.py::test_highlight_regex[ED-ED-ED-ED-ED-ED-spans31] PASSED
tests/test_highlighter.py::test_highlight_regex[Ed-Ed-Ed-Ed-Ed-Ed-spans32] PASSED
tests/test_highlighter.py::test_highlight_regex[0-00-1-01-2-02-spans33] PASSED
tests/test_highlighter.py::test_highlight_regex[ https://example.org -spans34] PASSED
tests/test_highlighter.py::test_highlight_regex[ http://example.org -spans35] PASSED
tests/test_highlighter.py::test_highlight_regex[ http://example.org/index.html -spans36] PASSED
tests/test_highlighter.py::test_highlight_regex[ http://example.org/index.html#anchor -spans37] PASSED
tests/test_highlighter.py::test_highlight_regex[https://www.youtube.com/@LinusTechTips-spans38] PASSED
tests/test_highlighter.py::test_highlight_regex[ http://example.org/index.html?param1=value1 -spans39] PASSED
tests/test_highlighter.py::test_highlight_regex[ http://example.org/~folder -spans40] PASSED
tests/test_highlighter.py::test_highlight_regex[No place like 127.0.0.1-spans41] PASSED
tests/test_highlighter.py::test_highlight_regex[''-spans42] PASSED
tests/test_highlighter.py::test_highlight_regex['hello'-spans43] PASSED
tests/test_highlighter.py::test_highlight_regex['''hello'''-spans44] PASSED
tests/test_highlighter.py::test_highlight_regex[""-spans45] PASSED
tests/test_highlighter.py::test_highlight_regex["hello"-spans46] PASSED
tests/test_highlighter.py::test_highlight_regex["""hello"""-spans47] PASSED
tests/test_highlighter.py::test_highlight_regex[\\'foo'-spans48] PASSED
tests/test_highlighter.py::test_highlight_regex[it's no 'string'-spans49] PASSED
tests/test_highlighter.py::test_highlight_regex[78351748-9b32-4e08-ad3e-7e9ff124d541-spans50] PASSED
tests/test_highlighter.py::test_highlight_json_with_indent PASSED
tests/test_highlighter.py::test_highlight_json_string_only PASSED
tests/test_highlighter.py::test_highlight_json_empty_string_only PASSED
tests/test_highlighter.py::test_highlight_json_no_indent PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-spans0] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30-spans1] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[20080830-spans2] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-243-spans3] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008243-spans4] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-W35-spans5] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008W35-spans6] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-W35-6-spans7] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008W356-spans8] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[17:21-spans9] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[1721-spans10] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[172159-spans11] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[Z-spans12] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[+07-spans13] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[+07:00-spans14] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[17:21:59+07:00-spans15] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[172159+0700-spans16] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[172159+07-spans17] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30 17:21:59-spans18] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[20080830 172159-spans19] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30-spans20] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30+07:00-spans21] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[01:45:36-spans22] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[01:45:36.123+07:00-spans23] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[01:45:36.123+07:00-spans24] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30T01:45:36-spans25] PASSED
tests/test_highlighter.py::test_highlight_iso8601_regex[2008-08-30T01:45:36.123Z-spans26] PASSED
tests/test_inspect.py::test_render PASSED
tests/test_inspect.py::test_inspect_text PASSED
tests/test_inspect.py::test_inspect_empty_dict PASSED
tests/test_inspect.py::test_inspect_builtin_function_except_python311 PASSED
tests/test_inspect.py::test_inspect_builtin_function_only_python311 SKIPPED
tests/test_inspect.py::test_inspect_coroutine PASSED
tests/test_inspect.py::test_inspect_integer PASSED
tests/test_inspect.py::test_inspect_integer_with_value PASSED
tests/test_inspect.py::test_inspect_integer_with_methods_python38_and_python39 PASSED
tests/test_inspect.py::test_inspect_integer_with_methods_python310only SKIPPED
tests/test_inspect.py::test_inspect_integer_with_methods_python311 SKIPPED
tests/test_inspect.py::test_broken_call_attr PASSED
tests/test_inspect.py::test_inspect_swig_edge_case PASSED
tests/test_inspect.py::test_inspect_module_with_class PASSED
tests/test_inspect.py::test_can_handle_special_characters_in_docstrings[\x07-\\a] PASSED
tests/test_inspect.py::test_can_handle_special_characters_in_docstrings[\x08-\\b] PASSED
tests/test_inspect.py::test_can_handle_special_characters_in_docstrings[\x0c-\\f] PASSED
tests/test_inspect.py::test_can_handle_special_characters_in_docstrings[\r-\\r] PASSED
tests/test_inspect.py::test_can_handle_special_characters_in_docstrings[\x0b-\\v] PASSED
tests/test_inspect.py::test_object_types_mro[object-expected_result0] PASSED
tests/test_inspect.py::test_object_types_mro[obj1-expected_result1] PASSED
tests/test_inspect.py::test_object_types_mro[hi-expected_result2] PASSED
tests/test_inspect.py::test_object_types_mro[str-expected_result3] PASSED
tests/test_inspect.py::test_object_types_mro[obj4-expected_result4] PASSED
tests/test_inspect.py::test_object_types_mro[Foo-expected_result5] PASSED
tests/test_inspect.py::test_object_types_mro[obj6-expected_result6] PASSED
tests/test_inspect.py::test_object_types_mro[FooSubclass-expected_result7] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[hi-expected_result0] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[str-expected_result1] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[obj2-expected_result2] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[Foo-expected_result3] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[obj4-expected_result4] PASSED
tests/test_inspect.py::test_object_types_mro_as_strings[FooSubclass-expected_result5] PASSED
tests/test_inspect.py::test_object_is_one_of_types[hi-types0-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[str-types1-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[hi-types2-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[str-types3-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[obj4-types4-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[Foo-types5-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[obj6-types6-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[Foo-types7-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[obj8-types8-False] PASSED
tests/test_inspect.py::test_object_is_one_of_types[Foo-types9-False] PASSED
tests/test_inspect.py::test_object_is_one_of_types[obj10-types10-True] PASSED
tests/test_inspect.py::test_object_is_one_of_types[Foo-types11-True] PASSED
tests/test_json.py::test_print_json_data_with_default PASSED
tests/test_jupyter.py::test_jupyter PASSED
tests/test_jupyter.py::test_jupyter_columns_env PASSED
tests/test_jupyter.py::test_jupyter_lines_env PASSED
tests/test_layout.py::test_no_layout PASSED
tests/test_layout.py::test_add_split PASSED
tests/test_layout.py::test_unsplit PASSED
tests/test_layout.py::test_render PASSED
tests/test_layout.py::test_tree PASSED
tests/test_layout.py::test_refresh_screen PASSED
tests/test_live.py::test_live_state PASSED
tests/test_live.py::test_growing_display PASSED
tests/test_live.py::test_growing_display_transient PASSED
tests/test_live.py::test_growing_display_overflow_ellipsis PASSED
tests/test_live.py::test_growing_display_overflow_crop PASSED
tests/test_live.py::test_growing_display_overflow_visible PASSED
tests/test_live.py::test_growing_display_autorefresh PASSED
tests/test_live.py::test_growing_display_console_redirect PASSED
tests/test_live.py::test_growing_display_file_console PASSED
tests/test_live.py::test_live_screen PASSED
tests/test_live_render.py::test_renderable PASSED
tests/test_live_render.py::test_position_cursor PASSED
tests/test_live_render.py::test_restore_cursor PASSED
tests/test_live_render.py::test_rich_console PASSED
tests/test_log.py::test_log PASSED
tests/test_log.py::test_log_caller_frame_info PASSED
tests/test_log.py::test_justify PASSED
tests/test_logging.py::test_exception PASSED
tests/test_logging.py::test_exception_with_extra_lines PASSED
tests/test_logging.py::test_stderr_and_stdout_are_none PASSED
tests/test_logging.py::test_markup_and_highlight PASSED
tests/test_markdown.py::test_markdown_render PASSED
tests/test_markdown.py::test_inline_code PASSED
tests/test_markdown.py::test_markdown_table PASSED
tests/test_markdown.py::test_inline_styles_in_table PASSED
tests/test_markdown.py::test_inline_styles_with_justification PASSED
tests/test_markdown.py::test_partial_table PASSED
tests/test_markdown.py::test_table_with_empty_cells PASSED
tests/test_markdown_no_hyperlinks.py::test_markdown_render PASSED
tests/test_markup.py::test_re_no_match PASSED
tests/test_markup.py::test_re_match PASSED
tests/test_markup.py::test_escape PASSED
tests/test_markup.py::test_escape_backslash_end PASSED
tests/test_markup.py::test_render_escape PASSED
tests/test_markup.py::test_parse PASSED
tests/test_markup.py::test_parse_link PASSED
tests/test_markup.py::test_render PASSED
tests/test_markup.py::test_render_not_tags PASSED
tests/test_markup.py::test_render_link PASSED
tests/test_markup.py::test_render_combine PASSED
tests/test_markup.py::test_render_overlap PASSED
tests/test_markup.py::test_adjoint PASSED
tests/test_markup.py::test_render_close PASSED
tests/test_markup.py::test_render_close_ambiguous PASSED
tests/test_markup.py::test_markup_error PASSED
tests/test_markup.py::test_markup_escape PASSED
tests/test_markup.py::test_escape_escape PASSED
tests/test_markup.py::test_events PASSED
tests/test_markup.py::test_events_broken PASSED
tests/test_markup.py::test_render_meta PASSED
tests/test_measure.py::test_span PASSED
tests/test_measure.py::test_no_renderable PASSED
tests/test_measure.py::test_measure_renderables PASSED
tests/test_measure.py::test_clamp PASSED
tests/test_null_file.py::test_null_file PASSED
tests/test_padding.py::test_repr PASSED
tests/test_padding.py::test_indent PASSED
tests/test_padding.py::test_unpack PASSED
tests/test_padding.py::test_expand_false PASSED
tests/test_padding.py::test_rich_console PASSED
tests/test_palette.py::test_rich_cast PASSED
tests/test_panel.py::test_render_panel[panel0-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello, World                                    \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel1-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello, World\u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel2-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello, World\u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel3-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello,\u2502\n\u2502World \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel4-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\u2502\n\u2502\u2502Hello, World                                  \u2502\u2502\n\u2502\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel5-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 FOO \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello, World                                    \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_render_panel[panel6-\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502Hello, World                                    \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 FOO \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n] PASSED
tests/test_panel.py::test_console_width PASSED
tests/test_panel.py::test_fixed_width PASSED
tests/test_panel.py::test_render_size PASSED
tests/test_panel.py::test_title_text PASSED
tests/test_pick.py::test_pick_bool PASSED
tests/test_pretty.py::test_install PASSED
tests/test_pretty.py::test_install_max_depth PASSED
tests/test_pretty.py::test_ipy_display_hook__repr_html PASSED
tests/test_pretty.py::test_ipy_display_hook__multiple_special_reprs PASSED
tests/test_pretty.py::test_ipy_display_hook__no_special_repr_methods PASSED
tests/test_pretty.py::test_ipy_display_hook__special_repr_raises_exception PASSED
tests/test_pretty.py::test_ipy_display_hook__console_renderables_on_newline PASSED
tests/test_pretty.py::test_pretty PASSED
tests/test_pretty.py::test_pretty_dataclass PASSED
tests/test_pretty.py::test_empty_dataclass PASSED
tests/test_pretty.py::test_pretty_namedtuple PASSED
tests/test_pretty.py::test_pretty_namedtuple_length_one_no_trailing_comma PASSED
tests/test_pretty.py::test_pretty_namedtuple_empty PASSED
tests/test_pretty.py::test_pretty_namedtuple_custom_repr PASSED
tests/test_pretty.py::test_pretty_namedtuple_fields_invalid_type PASSED
tests/test_pretty.py::test_pretty_namedtuple_max_depth PASSED
tests/test_pretty.py::test_small_width PASSED
tests/test_pretty.py::test_ansi_in_pretty_repr PASSED
tests/test_pretty.py::test_broken_repr PASSED
tests/test_pretty.py::test_broken_getattr PASSED
tests/test_pretty.py::test_reference_cycle_container PASSED
tests/test_pretty.py::test_reference_cycle_namedtuple PASSED
tests/test_pretty.py::test_reference_cycle_dataclass PASSED
tests/test_pretty.py::test_reference_cycle_attrs PASSED
tests/test_pretty.py::test_reference_cycle_custom_repr PASSED
tests/test_pretty.py::test_max_depth PASSED
tests/test_pretty.py::test_max_depth_rich_repr PASSED
tests/test_pretty.py::test_max_depth_attrs PASSED
tests/test_pretty.py::test_max_depth_dataclass PASSED
tests/test_pretty.py::test_defaultdict PASSED
tests/test_pretty.py::test_deque PASSED
tests/test_pretty.py::test_array PASSED
tests/test_pretty.py::test_tuple_of_one PASSED
tests/test_pretty.py::test_node PASSED
tests/test_pretty.py::test_indent_lines PASSED
tests/test_pretty.py::test_pprint PASSED
tests/test_pretty.py::test_pprint_max_values PASSED
tests/test_pretty.py::test_pprint_max_items PASSED
tests/test_pretty.py::test_pprint_max_string PASSED
tests/test_pretty.py::test_tuples PASSED
tests/test_pretty.py::test_newline PASSED
tests/test_pretty.py::test_empty_repr PASSED
tests/test_pretty.py::test_attrs PASSED
tests/test_pretty.py::test_attrs_empty PASSED
tests/test_pretty.py::test_attrs_broken PASSED
tests/test_pretty.py::test_attrs_broken_310 SKIPPED (rendered differ...)
tests/test_pretty.py::test_user_dict PASSED
tests/test_pretty.py::test_lying_attribute PASSED
tests/test_pretty.py::test_measure_pretty PASSED
tests/test_pretty.py::test_tuple_rich_repr PASSED
tests/test_pretty.py::test_tuple_rich_repr_default PASSED
tests/test_pretty.py::test_dataclass_no_attribute PASSED
tests/test_progress.py::test_bar_columns PASSED
tests/test_progress.py::test_text_column PASSED
tests/test_progress.py::test_time_elapsed_column PASSED
tests/test_progress.py::test_time_remaining_column PASSED
tests/test_progress.py::test_compact_time_remaining_column[None---:--] PASSED
tests/test_progress.py::test_compact_time_remaining_column[0-00:00] PASSED
tests/test_progress.py::test_compact_time_remaining_column[59-00:59] PASSED
tests/test_progress.py::test_compact_time_remaining_column[71-01:11] PASSED
tests/test_progress.py::test_compact_time_remaining_column[4210-1:10:10] PASSED
tests/test_progress.py::test_time_remaining_column_elapsed_when_finished PASSED
tests/test_progress.py::test_renderable_column PASSED
tests/test_progress.py::test_spinner_column PASSED
tests/test_progress.py::test_download_progress_uses_decimal_units PASSED
tests/test_progress.py::test_download_progress_uses_binary_units PASSED
tests/test_progress.py::test_task_ids PASSED
tests/test_progress.py::test_finished PASSED
tests/test_progress.py::test_expand_bar PASSED
tests/test_progress.py::test_progress_with_none_total_renders_a_pulsing_bar PASSED
tests/test_progress.py::test_render PASSED
tests/test_progress.py::test_track PASSED
tests/test_progress.py::test_progress_track PASSED
tests/test_progress.py::test_columns PASSED
tests/test_progress.py::test_using_default_columns PASSED
tests/test_progress.py::test_task_create PASSED
tests/test_progress.py::test_task_start PASSED
tests/test_progress.py::test_task_zero_total PASSED
tests/test_progress.py::test_progress_create PASSED
tests/test_progress.py::test_track_thread PASSED
tests/test_progress.py::test_reset PASSED
tests/test_progress.py::test_progress_max_refresh PASSED
tests/test_progress.py::test_live_is_started_if_progress_is_enabled PASSED
tests/test_progress.py::test_live_is_not_started_if_progress_is_disabled PASSED
tests/test_progress.py::test_no_output_if_progress_is_disabled PASSED
tests/test_progress.py::test_open PASSED
tests/test_progress.py::test_open_text_mode PASSED
tests/test_progress.py::test_wrap_file PASSED
tests/test_progress.py::test_wrap_file_task_total PASSED
tests/test_progress.py::test_task_progress_column_speed PASSED
tests/test_prompt.py::test_prompt_str PASSED
tests/test_prompt.py::test_prompt_str_case_insensitive PASSED
tests/test_prompt.py::test_prompt_str_default PASSED
tests/test_prompt.py::test_prompt_int PASSED
tests/test_prompt.py::test_prompt_confirm_no PASSED
tests/test_prompt.py::test_prompt_confirm_yes PASSED
tests/test_prompt.py::test_prompt_confirm_default PASSED
tests/test_protocol.py::test_rich_cast PASSED
tests/test_protocol.py::test_rich_cast_fake PASSED
tests/test_protocol.py::test_rich_cast_container PASSED
tests/test_protocol.py::test_abc PASSED
tests/test_protocol.py::test_cast_deep PASSED
tests/test_protocol.py::test_cast_recursive PASSED
tests/test_ratio.py::test_ratio_reduce[20-ratios0-maximums0-values0-result0] PASSED
tests/test_ratio.py::test_ratio_reduce[20-ratios1-maximums1-values1-result1] PASSED
tests/test_ratio.py::test_ratio_reduce[20-ratios2-maximums2-values2-result2] PASSED
tests/test_ratio.py::test_ratio_reduce[3-ratios3-maximums3-values3-result3] PASSED
tests/test_ratio.py::test_ratio_reduce[3-ratios4-maximums4-values4-result4] PASSED
tests/test_ratio.py::test_ratio_reduce[3-ratios5-maximums5-values5-result5] PASSED
tests/test_ratio.py::test_ratio_resolve PASSED
tests/test_repr.py::test_rich_repr PASSED
tests/test_repr.py::test_rich_repr_positional_only PASSED
tests/test_repr.py::test_rich_angular PASSED
tests/test_repr.py::test_rich_repr_auto PASSED
tests/test_repr.py::test_rich_repr_auto_angular PASSED
tests/test_repr.py::test_broken_egg PASSED
tests/test_repr.py::test_rich_pretty PASSED
tests/test_repr.py::test_rich_pretty_angular PASSED
tests/test_rich_print.py::test_get_console PASSED
tests/test_rich_print.py::test_reconfigure_console PASSED
tests/test_rich_print.py::test_rich_print PASSED
tests/test_rich_print.py::test_rich_print_json PASSED
tests/test_rich_print.py::test_rich_print_json_round_trip PASSED
tests/test_rich_print.py::test_rich_print_json_no_truncation PASSED
tests/test_rich_print.py::test_rich_print_X PASSED
tests/test_rule.py::test_rule PASSED
tests/test_rule.py::test_rule_error PASSED
tests/test_rule.py::test_rule_align PASSED
tests/test_rule.py::test_rule_cjk PASSED
tests/test_rule.py::test_rule_not_enough_space_for_title_text[center-\u2500\u2500\u2500\n] PASSED
tests/test_rule.py::test_rule_not_enough_space_for_title_text[left-\u2026 \u2500\n] PASSED
tests/test_rule.py::test_rule_not_enough_space_for_title_text[right-\u2500 \u2026\n] PASSED
tests/test_rule.py::test_rule_center_aligned_title_not_enough_space_for_rule PASSED
tests/test_rule.py::test_rule_side_aligned_not_enough_space_for_rule[left] PASSED
tests/test_rule.py::test_rule_side_aligned_not_enough_space_for_rule[right] PASSED
tests/test_rule.py::test_rule_just_enough_width_available_for_title[center-\u2500 \u2026 \u2500\n] PASSED
tests/test_rule.py::test_rule_just_enough_width_available_for_title[left-AB\u2026 \u2500\n] PASSED
tests/test_rule.py::test_rule_just_enough_width_available_for_title[right-\u2500 AB\u2026\n] PASSED
tests/test_rule.py::test_characters PASSED
tests/test_rule.py::test_repr PASSED
tests/test_rule.py::test_error PASSED
tests/test_rule_in_table.py::test_rule_in_unexpanded_table[expand_kwarg0] PASSED
tests/test_rule_in_table.py::test_rule_in_unexpanded_table[expand_kwarg1] PASSED
tests/test_rule_in_table.py::test_rule_in_expanded_table PASSED
tests/test_rule_in_table.py::test_rule_in_ratio_table PASSED
tests/test_screen.py::test_screen PASSED
tests/test_segment.py::test_repr PASSED
tests/test_segment.py::test_line PASSED
tests/test_segment.py::test_apply_style PASSED
tests/test_segment.py::test_split_lines PASSED
tests/test_segment.py::test_split_and_crop_lines PASSED
tests/test_segment.py::test_adjust_line_length PASSED
tests/test_segment.py::test_get_line_length PASSED
tests/test_segment.py::test_get_shape PASSED
tests/test_segment.py::test_set_shape PASSED
tests/test_segment.py::test_simplify PASSED
tests/test_segment.py::test_filter_control PASSED
tests/test_segment.py::test_strip_styles PASSED
tests/test_segment.py::test_strip_links PASSED
tests/test_segment.py::test_remove_color PASSED
tests/test_segment.py::test_is_control PASSED
tests/test_segment.py::test_segments_renderable PASSED
tests/test_segment.py::test_divide PASSED
tests/test_segment.py::test_divide_complex PASSED
tests/test_segment.py::test_divide_emoji PASSED
tests/test_segment.py::test_divide_edge PASSED
tests/test_segment.py::test_divide_edge_2 PASSED
tests/test_segment.py::test_split_cells_emoji[XX-4-result0] PASSED
tests/test_segment.py::test_split_cells_emoji[X-1-result1] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9-1-result2] PASSED
tests/test_segment.py::test_split_cells_emoji[XY-1-result3] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9X-1-result4] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9\U0001f4a9-1-result5] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9Y-2-result6] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9YZ-2-result7] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9\U0001f4a9Z-2-result8] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9\U0001f4a9Z-3-result9] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9\U0001f4a9Z-4-result10] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9\U0001f4a9Z-5-result11] PASSED
tests/test_segment.py::test_split_cells_emoji[X\U0001f4a9\U0001f4a9Z-6-result12] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC\U0001f4a9\U0001f4a9-6-result13] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC\U0001f4a9\U0001f4a9-7-result14] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC\U0001f4a9\U0001f4a9-8-result15] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC\U0001f4a9\U0001f4a9-9-result16] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC\U0001f4a9\U0001f4a9-10-result17] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9-3-result18] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9-4-result19] PASSED
tests/test_segment.py::test_split_cells_emoji[\U0001f4a9X\U0001f4a9Y\U0001f4a9Z\U0001f4a9A\U0001f4a9-4-result20] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC-4-result21] PASSED
tests/test_segment.py::test_split_cells_emoji[XYZABC-5-result22] PASSED
tests/test_segment.py::test_split_cells_emoji[a1\u3042\uff11\uff11bcdaef-9-result23] PASSED
tests/test_segment.py::test_split_cells_mixed[segment0] PASSED
tests/test_segment.py::test_split_cells_mixed[segment1] PASSED
tests/test_segment.py::test_split_cells_mixed[segment2] PASSED
tests/test_segment.py::test_split_cells_mixed[segment3] PASSED
tests/test_segment.py::test_split_cells_mixed[segment4] PASSED
tests/test_segment.py::test_split_cells_mixed[segment5] PASSED
tests/test_segment.py::test_split_cells_mixed[segment6] PASSED
tests/test_segment.py::test_split_cells_mixed[segment7] PASSED
tests/test_segment.py::test_split_cells_doubles PASSED
tests/test_segment.py::test_split_cells_single PASSED
tests/test_segment.py::test_segment_lines_renderable PASSED
tests/test_segment.py::test_align_top PASSED
tests/test_segment.py::test_align_middle PASSED
tests/test_segment.py::test_align_bottom PASSED
tests/test_spinner.py::test_spinner_create PASSED
tests/test_spinner.py::test_spinner_render PASSED
tests/test_spinner.py::test_spinner_update PASSED
tests/test_spinner.py::test_rich_measure PASSED
tests/test_spinner.py::test_spinner_markup PASSED
tests/test_stack.py::test_stack PASSED
tests/test_status.py::test_status PASSED
tests/test_status.py::test_renderable PASSED
tests/test_style.py::test_str PASSED
tests/test_style.py::test_ansi_codes PASSED
tests/test_style.py::test_repr PASSED
tests/test_style.py::test_eq PASSED
tests/test_style.py::test_hash PASSED
tests/test_style.py::test_empty PASSED
tests/test_style.py::test_bool PASSED
tests/test_style.py::test_color_property PASSED
tests/test_style.py::test_bgcolor_property PASSED
tests/test_style.py::test_parse PASSED
tests/test_style.py::test_link_id PASSED
tests/test_style.py::test_get_html_style PASSED
tests/test_style.py::test_chain PASSED
tests/test_style.py::test_copy PASSED
tests/test_style.py::test_render PASSED
tests/test_style.py::test_test PASSED
tests/test_style.py::test_add PASSED
tests/test_style.py::test_iadd PASSED
tests/test_style.py::test_style_stack PASSED
tests/test_style.py::test_pick_first PASSED
tests/test_style.py::test_background_style PASSED
tests/test_style.py::test_without_color PASSED
tests/test_style.py::test_meta PASSED
tests/test_style.py::test_from_meta PASSED
tests/test_style.py::test_on PASSED
tests/test_style.py::test_clear_meta_and_links PASSED
tests/test_style.py::test_clear_meta_and_links_clears_hash PASSED
tests/test_styled.py::test_styled PASSED
tests/test_syntax.py::test_blank_lines PASSED
tests/test_syntax.py::test_python_render PASSED
tests/test_syntax.py::test_python_render_simple PASSED
tests/test_syntax.py::test_python_render_simple_passing_lexer_instance PASSED
tests/test_syntax.py::test_python_render_simple_indent_guides PASSED
tests/test_syntax.py::test_python_render_line_range_indent_guides PASSED
tests/test_syntax.py::test_python_render_indent_guides PASSED
tests/test_syntax.py::test_pygments_syntax_theme_non_str PASSED
tests/test_syntax.py::test_pygments_syntax_theme PASSED
tests/test_syntax.py::test_get_line_color_none PASSED
tests/test_syntax.py::test_highlight_background_color PASSED
tests/test_syntax.py::test_get_number_styles PASSED
tests/test_syntax.py::test_get_style_for_token PASSED
tests/test_syntax.py::test_option_no_wrap PASSED
tests/test_syntax.py::test_syntax_highlight_ranges PASSED
tests/test_syntax.py::test_ansi_theme PASSED
tests/test_syntax.py::test_from_path PASSED
tests/test_syntax.py::test_from_path_unknown_lexer PASSED
tests/test_syntax.py::test_from_path_lexer_override PASSED
tests/test_syntax.py::test_from_path_lexer_override_invalid_lexer PASSED
tests/test_syntax.py::test_syntax_guess_lexer PASSED
tests/test_syntax.py::test_syntax_padding PASSED
tests/test_syntax.py::test_syntax_measure PASSED
tests/test_syntax.py::test_background_color_override_includes_padding PASSED
tests/test_table.py::test_render_table PASSED
tests/test_table.py::test_not_renderable PASSED
tests/test_table.py::test_init_append_column PASSED
tests/test_table.py::test_rich_measure PASSED
tests/test_table.py::test_min_width PASSED
tests/test_table.py::test_no_columns PASSED
tests/test_table.py::test_get_row_style PASSED
tests/test_table.py::test_vertical_align_top PASSED
tests/test_table.py::test_table_show_header_false_substitution[None- 1  2 \n 3  4 \n] PASSED
tests/test_table.py::test_table_show_header_false_substitution[box1-\u250c\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2510\n\u2502 1 \u2502 2 \u2502\n\u2502 3 \u2502 4 \u2502\n\u2514\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2518\n] PASSED
tests/test_table.py::test_table_show_header_false_substitution[box2-\u250c\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2510\n\u2502 1 \u2502 2 \u2502\n\u2502 3 \u2502 4 \u2502\n\u2514\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2518\n] PASSED
tests/test_table.py::test_table_show_header_false_substitution[box3-    \u2577    \n  1 \u2502 2  \n  3 \u2502 4  \n    \u2575    \n] PASSED
tests/test_table.py::test_table_show_header_false_substitution[box4-    \u2577    \n  1 \u2502 2  \n  3 \u2502 4  \n    \u2575    \n] PASSED
tests/test_table.py::test_table_show_header_false_substitution[box5-+---+---+\n| 1 | 2 |\n| 3 | 4 |\n+---+---+\n] PASSED
tests/test_table.py::test_section PASSED
tests/test_table.py::test_placement_table_box_elements[False-False-abbbbbcbbbbbbbbbcbbbbcbbbbbd\n1Dec  2Skywalker2275M2375M 3\n4May  5Solo     5275M5393M 6\nijjjjjkjjjjjjjjjkjjjjkjjjjjl\n7Dec  8Last Jedi8262M81333M9\nqrrrrrsrrrrrrrrrsrrrrsrrrrrt\n] PASSED
tests/test_table.py::test_placement_table_box_elements[True-False-abbbbbcbbbbbbbbbcbbbbcbbbbbd\n1Month2Nickname 2Cost2Gross3\nefffffgfffffffffgffffgfffffh\n4Dec  5Skywalker5275M5375M 6\n4May  5Solo     5275M5393M 6\nijjjjjkjjjjjjjjjkjjjjkjjjjjl\n7Dec  8Last Jedi8262M81333M9\nqrrrrrsrrrrrrrrrsrrrrsrrrrrt\n] PASSED
tests/test_table.py::test_placement_table_box_elements[False-True-abbbbbcbbbbbbbbbcbbbbcbbbbbd\n1Dec  2Skywalker2275M2375M 3\n4May  5Solo     5275M5393M 6\nijjjjjkjjjjjjjjjkjjjjkjjjjjl\n4Dec  5Last Jedi5262M51333M6\nmnnnnnonnnnnnnnnonnnnonnnnnp\n7MONTH8NICKNAME 8COST8GROSS9\nqrrrrrsrrrrrrrrrsrrrrsrrrrrt\n] PASSED
tests/test_table.py::test_placement_table_box_elements[True-True-abbbbbcbbbbbbbbbcbbbbcbbbbbd\n1Month2Nickname 2Cost2Gross3\nefffffgfffffffffgffffgfffffh\n4Dec  5Skywalker5275M5375M 6\n4May  5Solo     5275M5393M 6\nijjjjjkjjjjjjjjjkjjjjkjjjjjl\n4Dec  5Last Jedi5262M51333M6\nmnnnnnonnnnnnnnnonnnnonnnnnp\n7MONTH8NICKNAME 8COST8GROSS9\nqrrrrrsrrrrrrrrrsrrrrsrrrrrt\n] PASSED
tests/test_table.py::test_columns_highlight_added_by_add_row PASSED
tests/test_text.py::test_span PASSED
tests/test_text.py::test_span_split PASSED
tests/test_text.py::test_span_move PASSED
tests/test_text.py::test_span_right_crop PASSED
tests/test_text.py::test_len PASSED
tests/test_text.py::test_cell_len PASSED
tests/test_text.py::test_bool PASSED
tests/test_text.py::test_str PASSED
tests/test_text.py::test_repr PASSED
tests/test_text.py::test_add PASSED
tests/test_text.py::test_eq PASSED
tests/test_text.py::test_contain PASSED
tests/test_text.py::test_plain_property PASSED
tests/test_text.py::test_plain_property_setter PASSED
tests/test_text.py::test_from_markup PASSED
tests/test_text.py::test_from_ansi PASSED
tests/test_text.py::test_copy PASSED
tests/test_text.py::test_rstrip PASSED
tests/test_text.py::test_rstrip_end PASSED
tests/test_text.py::test_stylize PASSED
tests/test_text.py::test_stylize_before PASSED
tests/test_text.py::test_stylize_negative_index PASSED
tests/test_text.py::test_highlight_regex PASSED
tests/test_text.py::test_highlight_regex_callable PASSED
tests/test_text.py::test_highlight_words PASSED
tests/test_text.py::test_set_length PASSED
tests/test_text.py::test_console_width PASSED
tests/test_text.py::test_join PASSED
tests/test_text.py::test_trim_spans PASSED
tests/test_text.py::test_pad_left PASSED
tests/test_text.py::test_pad_right PASSED
tests/test_text.py::test_append PASSED
tests/test_text.py::test_append_text PASSED
tests/test_text.py::test_end PASSED
tests/test_text.py::test_split PASSED
tests/test_text.py::test_split_spans PASSED
tests/test_text.py::test_divide PASSED
tests/test_text.py::test_right_crop PASSED
tests/test_text.py::test_wrap_3 PASSED
tests/test_text.py::test_wrap_4 PASSED
tests/test_text.py::test_wrap_wrapped_word_length_greater_than_available_width PASSED
tests/test_text.py::test_wrap_cjk PASSED
tests/test_text.py::test_wrap_cjk_width_mid_character PASSED
tests/test_text.py::test_wrap_cjk_mixed PASSED
tests/test_text.py::test_wrap_long PASSED
tests/test_text.py::test_wrap_overflow PASSED
tests/test_text.py::test_wrap_overflow_long PASSED
tests/test_text.py::test_wrap_long_words PASSED
tests/test_text.py::test_wrap_long_words_2 PASSED
tests/test_text.py::test_wrap_long_words_followed_by_other_words PASSED
tests/test_text.py::test_wrap_long_word_preceeded_by_word_of_full_line_length PASSED
tests/test_text.py::test_wrap_multiple_consecutive_spaces PASSED
tests/test_text.py::test_wrap_long_words_justify_left PASSED
tests/test_text.py::test_wrap_leading_and_trailing_whitespace PASSED
tests/test_text.py::test_no_wrap_no_crop PASSED
tests/test_text.py::test_fit PASSED
tests/test_text.py::test_wrap_tabs PASSED
tests/test_text.py::test_render PASSED
tests/test_text.py::test_render_simple PASSED
tests/test_text.py::test_print[.-.\n] PASSED
tests/test_text.py::test_print[print_text1-. .\n] PASSED
tests/test_text.py::test_print[print_text2-Hello World !\n] PASSED
tests/test_text.py::test_print_sep_end[.-.X] PASSED
tests/test_text.py::test_print_sep_end[print_text1-..X] PASSED
tests/test_text.py::test_print_sep_end[print_text2-HelloWorld!X] PASSED
tests/test_text.py::test_tabs_to_spaces PASSED
tests/test_text.py::test_tabs_to_spaces_spans[-4--expected_spans0] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[\t-4-    -expected_spans1] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[\tbar-4-    bar-expected_spans2] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[foo\tbar-4-foo bar-expected_spans3] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[foo\nbar\nbaz-4-foo\nbar\nbaz-expected_spans4] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[bold]foo\tbar-4-foo bar-expected_spans5] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[bold]\tbar-4-    bar-expected_spans6] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[\t[bold]bar-4-    bar-expected_spans7] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[red]foo\tbar\n[green]egg\tbaz-8-foo     bar\negg     baz-expected_spans8] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[bold]X\tY-8-X       Y-expected_spans9] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[bold]\U0001f4a9\t\U0001f4a9-8-\U0001f4a9      \U0001f4a9-expected_spans10] PASSED
tests/test_text.py::test_tabs_to_spaces_spans[[bold]\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9\t\U0001f4a9-8-\U0001f4a9\U0001f4a9\U0001f4a9\U0001f4a9        \U0001f4a9-expected_spans11] PASSED
tests/test_text.py::test_markup_switch PASSED
tests/test_text.py::test_emoji PASSED
tests/test_text.py::test_emoji_switch PASSED
tests/test_text.py::test_assemble PASSED
tests/test_text.py::test_assemble_meta PASSED
tests/test_text.py::test_styled PASSED
tests/test_text.py::test_strip_control_codes PASSED
tests/test_text.py::test_get_style_at_offset PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-10-Hello] PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-5-Hello] PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-4-Hel\u2026] PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-3-He\u2026] PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-2-H\u2026] PASSED
tests/test_text.py::test_truncate_ellipsis[Hello-1-\u2026] PASSED
tests/test_text.py::test_truncate_ellipsis_pad[Hello-5-Hello] PASSED
tests/test_text.py::test_truncate_ellipsis_pad[Hello-10-Hello     ] PASSED
tests/test_text.py::test_truncate_ellipsis_pad[Hello-3-He\u2026] PASSED
tests/test_text.py::test_pad PASSED
tests/test_text.py::test_align_left PASSED
tests/test_text.py::test_align_right PASSED
tests/test_text.py::test_align_center PASSED
tests/test_text.py::test_detect_indentation PASSED
tests/test_text.py::test_indentation_guides PASSED
tests/test_text.py::test_slice PASSED
tests/test_text.py::test_wrap_invalid_style PASSED
tests/test_text.py::test_apply_meta PASSED
tests/test_text.py::test_on PASSED
tests/test_text.py::test_markup_property PASSED
tests/test_text.py::test_extend_style PASSED
tests/test_text.py::test_append_tokens PASSED
tests/test_text.py::test_append_loop_regression PASSED
tests/test_theme.py::test_inherit PASSED
tests/test_theme.py::test_config PASSED
tests/test_theme.py::test_from_file PASSED
tests/test_theme.py::test_read PASSED
tests/test_theme.py::test_theme_stack PASSED
tests/test_tools.py::test_loop_first PASSED
tests/test_tools.py::test_loop_last PASSED
tests/test_tools.py::test_loop_first_last PASSED
tests/test_tools.py::test_ratio_distribute PASSED
tests/test_traceback.py::test_handler PASSED
tests/test_traceback.py::test_capture PASSED
tests/test_traceback.py::test_no_exception PASSED
tests/test_traceback.py::test_print_exception PASSED
tests/test_traceback.py::test_print_exception_no_msg PASSED
tests/test_traceback.py::test_print_exception_locals PASSED
tests/test_traceback.py::test_syntax_error PASSED
tests/test_traceback.py::test_nested_exception PASSED
tests/test_traceback.py::test_caused_exception PASSED
tests/test_traceback.py::test_filename_with_bracket PASSED
tests/test_traceback.py::test_filename_not_a_file PASSED
tests/test_traceback.py::test_traceback_console_theme_applies PASSED
tests/test_traceback.py::test_broken_str PASSED
tests/test_traceback.py::test_guess_lexer PASSED
tests/test_traceback.py::test_guess_lexer_yaml_j2 PASSED
tests/test_traceback.py::test_recursive PASSED
tests/test_traceback.py::test_suppress PASSED
tests/test_traceback.py::test_rich_traceback_omit_optional_local_flag[True-3-expected_frame_names0] PASSED
tests/test_traceback.py::test_rich_traceback_omit_optional_local_flag[False-4-expected_frame_names1] PASSED
tests/test_traceback.py::test_traceback_finely_grained_missing PASSED
tests/test_traceback.py::test_traceback_finely_grained SKIPPED (Not ...)
tests/test_tree.py::test_render_single_node PASSED
tests/test_tree.py::test_render_single_branch PASSED
tests/test_tree.py::test_render_double_branch PASSED
tests/test_tree.py::test_render_ascii PASSED
tests/test_tree.py::test_render_tree_non_win32 PASSED
tests/test_tree.py::test_render_tree_win32 SKIPPED (Windows specific)
tests/test_tree.py::test_render_tree_hide_root_non_win32 PASSED
tests/test_tree.py::test_render_tree_hide_root_win32 SKIPPED (Window...)
tests/test_tree.py::test_tree_measure PASSED
tests/test_windows_renderer.py::test_text_only SKIPPED (windows only)
tests/test_windows_renderer.py::test_text_multiple_segments SKIPPED
tests/test_windows_renderer.py::test_text_with_style SKIPPED (window...)
tests/test_windows_renderer.py::test_control_cursor_move_to SKIPPED
tests/test_windows_renderer.py::test_control_carriage_return SKIPPED
tests/test_windows_renderer.py::test_control_home SKIPPED (windows only)
tests/test_windows_renderer.py::test_control_cursor_single_cell_movement[ControlType.CURSOR_UP-move_cursor_up] SKIPPED
tests/test_windows_renderer.py::test_control_cursor_single_cell_movement[ControlType.CURSOR_DOWN-move_cursor_down] SKIPPED
tests/test_windows_renderer.py::test_control_cursor_single_cell_movement[ControlType.CURSOR_FORWARD-move_cursor_forward] SKIPPED
tests/test_windows_renderer.py::test_control_cursor_single_cell_movement[ControlType.CURSOR_BACKWARD-move_cursor_backward] SKIPPED
tests/test_windows_renderer.py::test_control_erase_line[0-erase_end_of_line] SKIPPED
tests/test_windows_renderer.py::test_control_erase_line[1-erase_start_of_line] SKIPPED
tests/test_windows_renderer.py::test_control_erase_line[2-erase_line] SKIPPED
tests/test_windows_renderer.py::test_control_show_cursor SKIPPED (wi...)
tests/test_windows_renderer.py::test_control_hide_cursor SKIPPED (wi...)
tests/test_windows_renderer.py::test_control_cursor_move_to_column SKIPPED
tests/test_windows_renderer.py::test_control_set_terminal_window_title SKIPPED


======== 850 passed, 24 skipped ========
  py$(PYV): OK
  congratulations :)