diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/Makefile.in | 6 | ||||
-rw-r--r-- | gdb/unittests/xml-utils-selftests.c | 46 |
3 files changed, 56 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 280c344..21c3694 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2017-09-16 Simon Marchi <simon.marchi@ericsson.com> + * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add new source file. + (SUBDIR_UNITTESTS_OBS): Add new object file. + * unittests/xml-utils-selftests.c: New file. + +2017-09-16 Simon Marchi <simon.marchi@ericsson.com> + * common/selftest.h (selftest): New struct/interface. (register_test): Add name parameter, add new overload. (run_tests): Add filter parameter. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 2aa474e..9dfc117 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -532,7 +532,8 @@ SUBDIR_UNITTESTS_SRCS = \ unittests/offset-type-selftests.c \ unittests/optional-selftests.c \ unittests/ptid-selftests.c \ - unittests/scoped_restore-selftests.c + unittests/scoped_restore-selftests.c \ + unittests/xml-utils-selftests.c SUBDIR_UNITTESTS_OBS = \ array-view-selftests.o \ @@ -541,7 +542,8 @@ SUBDIR_UNITTESTS_OBS = \ offset-type-selftests.o \ optional-selftests.o \ ptid-selftests.o \ - scoped_restore-selftests.o + scoped_restore-selftests.o \ + xml-utils-selftests.o # Opcodes currently live in one of two places. Either they are in the # opcode library, typically ../opcodes, or they are in a header file diff --git a/gdb/unittests/xml-utils-selftests.c b/gdb/unittests/xml-utils-selftests.c new file mode 100644 index 0000000..21b506a --- /dev/null +++ b/gdb/unittests/xml-utils-selftests.c @@ -0,0 +1,46 @@ +/* Unit tests for the xml-utils.c file. + + Copyright (C) 2017 Free Software Foundation, Inc. + + This file is part of GDB. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +#include "defs.h" +#include "xml-utils.h" +#include "selftest.h" + +namespace selftests { +namespace xml_utils { + +static void test_xml_escape_text () +{ + const char *input = "<this isn't=\"xml\"> &"; + const char *expected_output = "<this isn't="xml"> &"; + char *actual_output = xml_escape_text (input); + + SELF_CHECK (strcmp (actual_output, expected_output) == 0); + + xfree (actual_output); +} + +} +} + +void +_initialize_xml_utils () +{ + selftests::register_test ("xml_escape_text", + selftests::xml_utils::test_xml_escape_text); +} |