/**
 * @file tests_config.h
 * @author Radek Krejci <rkrejci@cesnet.cz>
 * @brief cmocka tests configuration header.
 *
 * Copyright (c) 2015 - 2021 CESNET, z.s.p.o.
 *
 * This source code is licensed under BSD 3-Clause License (the "License").
 * You may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://opensource.org/licenses/BSD-3-Clause
 */
#ifndef LYTEST_CONFIG_H_
#define LYTEST_CONFIG_H_

#define TESTS_SRC "@CMAKE_CURRENT_SOURCE_DIR@"
#define TESTS_BIN "@CMAKE_CURRENT_BINARY_DIR@"

#define TESTS_DIR_MODULES_YANG TESTS_SRC"/modules/yang"

/**
 * @brief Macro for support of callgrind header and macros.
 */
#cmakedefine HAVE_CALLGRIND

#endif /* LYTEST_CONFIG_H_ */
