1/* Copyright (C) 2023-2024 Free Software Foundation, Inc.
2 Contributed by David Malcolm <dmalcolm@redhat.com>.
3
4This file is part of GCC.
5
6GCC is free software; you can redistribute it and/or modify it under
7the terms of the GNU General Public License as published by the Free
8Software Foundation; either version 3, or (at your option) any later
9version.
10
11GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12WARRANTY; without even the implied warranty of MERCHANTABILITY or
13FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14for more details.
15
16You should have received a copy of the GNU General Public License
17along with GCC; see the file COPYING3. If not see
18<http://www.gnu.org/licenses/>. */
19
20#ifndef GCC_TEXT_ART_SELFTESTS_H
21#define GCC_TEXT_ART_SELFTESTS_H
22
23#if CHECKING_P
24
25namespace text_art {
26 class canvas;
27} // namespace text_art
28
29namespace selftest {
30
31extern void text_art_box_drawing_cc_tests ();
32extern void text_art_canvas_cc_tests ();
33extern void text_art_ruler_cc_tests ();
34extern void text_art_style_cc_tests ();
35extern void text_art_styled_string_cc_tests ();
36extern void text_art_table_cc_tests ();
37extern void text_art_widget_cc_tests ();
38
39extern void text_art_tests ();
40
41extern void assert_canvas_streq (const location &loc,
42 const text_art::canvas &canvas,
43 pretty_printer *pp,
44 const char *expected_str);
45extern void assert_canvas_streq (const location &loc,
46 const text_art::canvas &canvas,
47 bool styled,
48 const char *expected_str);
49
50#define ASSERT_CANVAS_STREQ(CANVAS, STYLED, EXPECTED_STR) \
51 SELFTEST_BEGIN_STMT \
52 assert_canvas_streq ((SELFTEST_LOCATION), \
53 (CANVAS), \
54 (STYLED), \
55 (EXPECTED_STR)); \
56 SELFTEST_END_STMT
57
58} /* end of namespace selftest. */
59
60#endif /* #if CHECKING_P */
61
62#endif /* GCC_TEXT_ART_SELFTESTS_H */
63

source code of gcc/text-art/selftests.h