//! > Test colored printing of parsed code.

//! > test_runner_name
test_colored_parsed_code(expect_diagnostics: true)

//! > cairo_code
>>> file: src/parser_test_data/cairo_test_files/colored.cairo

//! > is_verbose
false

//! > expected_diagnostics

//! > expected_colored
[41m;[0m
[38;2;255;180;255m#[0m[[38;2;255;255;100mattr[0m]
[94mfn[0m [38;2;255;255;100mfoo[0m([38;2;255;255;100mvar1[0m[38;2;255;180;255m:[0m [38;2;255;255;100mint[0m [38;2;255;255;100mvar2[0m[38;2;255;180;255m:[0m [38;2;255;255;100mfelt252[0m) [38;2;255;180;255m->[0m [38;2;255;255;100mint[0m {
    [94mlet[0m [38;2;255;255;100mbla[0m [38;2;255;165;0m=[0m [96m7[0m [95m+[0m [96mtrue[0m [95m+[0m [96m'abc'[0m[38;2;255;180;255m;[0m // comment
    [94mreturn[0m [38;2;255;255;100mbar[0m([38;2;255;255;100mbla[0m)[38;2;255;180;255m;[0m
}

//! > ==========================================================================

//! > Test verbose colored printing of parsed code.

//! > test_runner_name
test_colored_parsed_code(expect_diagnostics: true)

//! > cairo_code
>>> file: src/parser_test_data/cairo_test_files/colored.cairo

//! > is_verbose
true

//! > expected_diagnostics

//! > expected_colored
[41m;[0m
[38;2;255;180;255m#[0m[[38;2;255;255;100mattr[0m]
[94mfn[0m [38;2;255;255;100mfoo[0m[31m<e>[0m([38;2;255;255;100mvar1[0m[38;2;255;180;255m:[0m [38;2;255;255;100mint[0m [31m<m>[0m[38;2;255;255;100mvar2[0m[38;2;255;180;255m:[0m [38;2;255;255;100mfelt252[0m) [38;2;255;180;255m->[0m [38;2;255;255;100mint[0m {
    [94mlet[0m [38;2;255;255;100mbla[0m [31m<e>[0m[38;2;255;165;0m=[0m [96m7[0m [95m+[0m [96mtrue[0m [95m+[0m [96m'abc'[0m[38;2;255;180;255m;[0m // comment
    [94mreturn[0m [38;2;255;255;100mbar[0m([38;2;255;255;100mbla[0m)[38;2;255;180;255m;[0m
}
