diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 11:36:04 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 11:36:04 +0000 |
commit | 040eee1aa49b49df4698d83a05af57c220127fd1 (patch) | |
tree | f635435954e6ccde5eee9893889e24f30ca68346 /src/lib/dhcpsrv/testutils/config_result_check.h | |
parent | Initial commit. (diff) | |
download | isc-kea-040eee1aa49b49df4698d83a05af57c220127fd1.tar.xz isc-kea-040eee1aa49b49df4698d83a05af57c220127fd1.zip |
Adding upstream version 2.2.0.upstream/2.2.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/lib/dhcpsrv/testutils/config_result_check.h')
-rw-r--r-- | src/lib/dhcpsrv/testutils/config_result_check.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/lib/dhcpsrv/testutils/config_result_check.h b/src/lib/dhcpsrv/testutils/config_result_check.h new file mode 100644 index 0000000..29d4477 --- /dev/null +++ b/src/lib/dhcpsrv/testutils/config_result_check.h @@ -0,0 +1,48 @@ +// Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC") +// +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at http://mozilla.org/MPL/2.0/. + +#ifndef CONFIG_RESULT_CHECK_H +#define CONFIG_RESULT_CHECK_H + +#include <cc/data.h> + +namespace isc { +namespace dhcp { +namespace test { + +/// @brief Checks that the error string created by the configuration parsers +/// contains the location of the data element... +/// +/// This function checks that the error string returned by the configuration +/// parsers contains the position of the element which caused an error. The +/// error string is expected to contain at least one occurrence of the following: +/// +/// @code +/// [filename]:[linenum]:[pos] +/// @endcode +/// +/// where: +/// - [filename] is a configuration file name (provided by a caller), +/// - [linenum] is a line number of the element, +/// - [pos] is a position of the element within the line. +/// +/// Both [linenum] and [pos] must contain decimal digits. The [filename] +/// must match the name provided by the caller. +/// +/// @param error_element A result returned by the configuration. +/// @param file_name A configuration file name. +/// +/// @return true if the provided configuration result comprises a string +/// which holds a position of the data element which caused the error; +/// false otherwise. +bool errorContainsPosition(isc::data::ConstElementPtr error_element, + const std::string& file_name); + +} +} +} + +#endif |