From: Simon Marchi Date: Sat, 16 Sep 2017 12:16:27 +0000 (+0200) Subject: Add unit test for xml_escape_text X-Git-Tag: users/ARM/embedded-binutils-master-2017q4~1036 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c3d7b541fa920e6ecb0f06ffe1e0e3f070fa295d;p=external%2Fbinutils.git Add unit test for xml_escape_text The following patch modifies xml_escape_text, so I took the opportunity to write a unit test for it. gdb/ChangeLog: * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add new source file. (SUBDIR_UNITTESTS_OBS): Add new object file. * unittests/xml-utils-selftests.c: New file. --- 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 + * 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 + * 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 . */ + +#include "defs.h" +#include "xml-utils.h" +#include "selftest.h" + +namespace selftests { +namespace xml_utils { + +static void test_xml_escape_text () +{ + const char *input = " &"; + 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); +}