tests: kconfig: Add tests for Kconfig arithmetrics
Add tests about kconfig function for arithmetric. Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
This commit is contained in:
parent
f99f862a79
commit
e31588fcca
5 changed files with 145 additions and 0 deletions
8
tests/kconfig/functions/CMakeLists.txt
Normal file
8
tests/kconfig/functions/CMakeLists.txt
Normal file
|
@ -0,0 +1,8 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
cmake_minimum_required(VERSION 3.20.0)
|
||||
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
|
||||
project(kconfig_functions)
|
||||
|
||||
FILE(GLOB app_sources src/*.c)
|
||||
target_sources(app PRIVATE ${app_sources})
|
92
tests/kconfig/functions/Kconfig
Normal file
92
tests/kconfig/functions/Kconfig
Normal file
|
@ -0,0 +1,92 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
# Copyright (c) 2022 CSIRO
|
||||
|
||||
config KCONFIG_ARITHMETRIC_ADD_10
|
||||
int
|
||||
default $(add, 10)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_ADD_10_3
|
||||
int
|
||||
default $(add, 10, 3)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_ADD_10_3_2
|
||||
int
|
||||
default $(add, 10, 3, 2)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_SUB_10
|
||||
int
|
||||
default $(sub, 10)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_SUB_10_3
|
||||
int
|
||||
default $(sub, 10, 3)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_SUB_10_3_2
|
||||
int
|
||||
default $(sub, 10, 3, 2)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MUL_10
|
||||
int
|
||||
default $(mul, 10)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MUL_10_3
|
||||
int
|
||||
default $(mul, 10, 3)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MUL_10_3_2
|
||||
int
|
||||
default $(mul, 10, 3, 2)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DIV_10
|
||||
int
|
||||
default $(div, 10)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DIV_10_3
|
||||
int
|
||||
default $(div, 10, 3)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DIV_10_3_2
|
||||
int
|
||||
default $(div, 10, 3, 2)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MOD_10
|
||||
int
|
||||
default $(mod, 10)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MOD_10_3
|
||||
int
|
||||
default $(mod, 10, 3)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_MOD_10_3_2
|
||||
int
|
||||
default $(mod, 10, 3, 2)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_INC_1
|
||||
int
|
||||
default $(inc, 1)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_INC_1_1
|
||||
string
|
||||
default "$(inc, 1, 1)"
|
||||
|
||||
config KCONFIG_ARITHMETRIC_INC_INC_1_1
|
||||
string
|
||||
default "$(inc, $(inc, 1, 1))"
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DEC_1
|
||||
int
|
||||
default $(dec, 1)
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DEC_1_1
|
||||
string
|
||||
default "$(dec, 1, 1)"
|
||||
|
||||
config KCONFIG_ARITHMETRIC_DEC_DEC_1_1
|
||||
string
|
||||
default "$(dec, $(dec, 1, 1))"
|
||||
|
||||
config KCONFIG_ARITHMETRIC_ADD_INC_1_1
|
||||
int
|
||||
default $(add, $(inc, 1, 1))
|
||||
|
||||
source "Kconfig.zephyr"
|
1
tests/kconfig/functions/prj.conf
Normal file
1
tests/kconfig/functions/prj.conf
Normal file
|
@ -0,0 +1 @@
|
|||
CONFIG_ZTEST=y
|
38
tests/kconfig/functions/src/arithmetric.c
Normal file
38
tests/kconfig/functions/src/arithmetric.c
Normal file
|
@ -0,0 +1,38 @@
|
|||
/*
|
||||
* Copyright (c) 2024 TOKITA Hiroshi
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <zephyr/kernel.h>
|
||||
#include <zephyr/sys/__assert.h>
|
||||
#include <zephyr/ztest.h>
|
||||
|
||||
ZTEST(test_kconfig_functions_arithmetric, test_expectedvalues)
|
||||
{
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_ADD_10, 10);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_ADD_10_3, 10 + 3);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_ADD_10_3_2, 10 + 3 + 2);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_SUB_10, 10);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_SUB_10_3, 10 - 3);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_SUB_10_3_2, 10 - 3 - 2);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MUL_10, 10);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MUL_10_3, 10 * 3);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MUL_10_3_2, 10 * 3 * 2);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_DIV_10, 10);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_DIV_10_3, 10 / 3);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_DIV_10_3_2, 10 / 3 / 2);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MOD_10, 10);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MOD_10_3, 10 % 3);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_MOD_10_3_2, 10 % 3 % 2);
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_INC_1, 1 + 1);
|
||||
zassert_str_equal(CONFIG_KCONFIG_ARITHMETRIC_INC_1_1, "2,2");
|
||||
zassert_str_equal(CONFIG_KCONFIG_ARITHMETRIC_INC_INC_1_1, "3,3");
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_DEC_1, 1 - 1);
|
||||
zassert_str_equal(CONFIG_KCONFIG_ARITHMETRIC_DEC_1_1, "0,0");
|
||||
zassert_str_equal(CONFIG_KCONFIG_ARITHMETRIC_DEC_DEC_1_1, "-1,-1");
|
||||
zassert_equal(CONFIG_KCONFIG_ARITHMETRIC_ADD_INC_1_1, (1 + 1) + (1 + 1));
|
||||
}
|
||||
|
||||
ZTEST_SUITE(test_kconfig_functions_arithmetric, NULL, NULL, NULL, NULL, NULL);
|
6
tests/kconfig/functions/testcase.yaml
Normal file
6
tests/kconfig/functions/testcase.yaml
Normal file
|
@ -0,0 +1,6 @@
|
|||
tests:
|
||||
kconfig.functions:
|
||||
tags: kconfig
|
||||
integration_platforms:
|
||||
- native_sim
|
||||
- native_sim/native/64
|
Loading…
Add table
Add a link
Reference in a new issue