summaryrefslogtreecommitdiff
path: root/components/utilities
AgeCommit message (Collapse)Author
2026-10-09[components][ulog] 用仓库的 clang-format 整理 ulog.c陈谋顺
按根目录 .clang-format 跑过 clang-format 19.1.7。 颜色复位仍在换行之前。
2026-10-09[components][ulog] 带颜色日志先恢复默认颜色再换行陈谋顺
Fixes #11296 ulog_tail_formater() 原来先写换行再写 CSI_END,颜色复位落在下一行开头, shell 提示符不会回到默认颜色。现在先写 CSI_END,再写换行。
2026-09-01[utest][rtc] Add RTC time and alarm testsCYFS
2026-09-01[utest][pwm] Add configurable PWM matrix testCYFS
2026-08-21[fix][libc] fix timegm month overflow calculationHui Su
The original overflow logic used __spm[tm_mon] as the current month's length when normalizing tm_mday. This produced incorrect dates after crossing month boundaries and left zero or negative days unnormalized. Use the difference between adjacent cumulative day offsets with leap-year handling. Normalize overflow in tm_sec, tm_min, tm_hour, tm_mday, and tm_mon to keep the affected broken-down fields normalized. Add regression tests for month boundaries, leap years, large offsets, zero and negative days, negative time fields, combined overflow, and boundary carry cases. Close #11686 Signed-off-by: Hui Su <[email protected]>
2026-07-07rt-link: reject frame offset at frame limitOld-Ding
The receive sequence filter maps incoming data-frame sequence numbers to zero-based frame offsets. RT_LINK_FRAMES_MAX is the maximum number of split frames, so valid offsets are 0 through RT_LINK_FRAMES_MAX - 1. Reject offset == RT_LINK_FRAMES_MAX before frame handling instead of letting it reach long-frame assembly. Generated-by: OpenAI Codex Signed-off-by: Old-Ding <[email protected]>
2026-07-04[components][spi] add utest casesCYFS
2026-06-30[components][ulog] include stdlib.h for atoiOld-Ding
2026-06-23[utest] fix testcase init failure summaryCYFS
2026-06-22[utest][pin] add pin loopback utest (#11445)CYFS
* [utest][pin] add pin loopback utest * [utest][pin] add BSP CI coverage * [utest][pin] fix BSP CI config * [utest][pin] fix ra8p1 utest link section
2026-06-17fix: stabilize smp_bind_affinity_tc on SMP CIGuEe-GUI
This change fixes intermittent failures of the `core.smp_bind_affinity` utest across SMP CI targets. The original failure was a flaky assertion on unbound threads (`thread_inc[x] != thread_tic[x]` in thread_entry), not incorrect bind_cpu behavior. CI logs already showed T0 binding worked (thread_inc[0] == thread_tic[0] == 100) while the not_equal check failed. The root issue is that unbound-thread CPU placement is platform-dependent and outside the bind_cpu contract. On dual-core RISC-V/ARMv7 CI, an unbound thread may legitimately run all iterations on core 0 while T0 delays on the same core, so any assertion requiring cross-core migration (thread_inc != thread_tic, or core_mask with multiple bits) remains flaky. This patch narrows the test to what bind_affinity actually verifies: T0 bound to core 0 must always execute on core 0. Unbound threads only add scheduling pressure; their core_mask is printed for observation but not asserted. Changes: - Sample `rt_hw_cpu_id()` and update counters under `rt_sched_lock` to avoid migration skew between counting and CPU sampling. - Track `thread_core_mask` for diagnostics; assert only T0 binding via `thread_inc[0] == thread_tic[0]` and `thread_core_mask[0] == 1`. - Remove flaky unbound-thread assertions (`thread_inc != thread_tic` and multi-core core_mask checks). - Move T0 assertions to the main test thread after all workers finish. - Use atomic `finsh_flag`; reset counters and `threads[]` in `utest_tc_init`. - Spin in worker loops after `run_num` until cleanup deletes them (do not return from thread_entry or use `RT_WAITING_FOREVER` with `rt_thread_delay`). - Guard `rt_thread_delete` in cleanup with non-NULL checks. Signed-off-by: GuEe-GUI <[email protected]>
2026-06-12utest: move ci configs to github directoryCYFS
Signed-off-by: CYFS <[email protected]>
2026-06-12utest: move utestcases Kconfig to utest componentCYFS
Signed-off-by: CYFS <[email protected]>
2026-05-07Modify the ymodem component to support multi-file receptionwdfk-prog
Co-authored-by: CUGLIJIE
2026-02-27fix(ymodem): improve send read loop and unify session cleanupwdfk-prog
- Accumulate short reads, mark finishing on EOF - Track begin/end callback states and cleanup on error paths - Add ACK handling with retry/error counting in send flow
2026-02-13fix(ulog): Avoid async ulog empty wakeups and missed notificationswdfk-prog
2026-02-13refactor(ulog): Unify ulog warning output with ulog_warn_oncewdfk-prog
2025-12-08[rt-link] fix the compiling issue under 64bit arch #11018Bernard Xiong
2025-11-18feat(ulog): Add a one-time warning when the log line buffer is insufficientwdfk-prog
2025-11-07feat[ulog]: 增加 Kconfig 选项以控制 Finsh/MSH 命令wdfk-prog
2025-10-27fix:[ulog][backend]filter不应与ULOG_USING_COLOR及ULOG_USING_SYSLOG配置 ↵wdfk-prog
有关
2025-10-20utest/msh: supports autocomplete of utest cases for utest_run (#10701)Yuqiang Wang
* utest/msh: supports autocomplete of utest cases for utest_run * docs/utest: explanation of adding the automatic completion function for utest_run * fix[utest]: Improvement of annotation description * remove outdated code
2025-10-16utest: Improve the strings displayed in the menuChen Wang
Use "Test" instead of "Unit Testcases" to make string shorter. Use uppercase to make it look more eye-catching. Signed-off-by: Chen Wang <[email protected]>
2025-10-15utest: UTEST_SELF_PASS_TC -> RT_UTEST_SELF_PASSChen Wang
Signed-off-by: Chen Wang <[email protected]>
2025-09-26utest: remove RT_UTEST_USING_ALL_CASESChen Wang
Many modules' utests currently don't support enabling all tests at once. Furthermore, some modules' tests are complex, for example due to their numerous dependencies on other modules. This makes it nearly impossible to enable all tests with a single global switch. Consequently, the previously defined `RT_UTEST_USING_ALL_CASES` has lost its original meaning. We recommend deprecating this configuration switch. If a module needs to enable a group of functional tests through its own configuration, this local enable all switch should be implemented by the module itself, and a global RTT enable switch will no longer be provided. If such a requirement arises in the future, we recommend careful design, especially considering how to ensure that turning on a single switch enables all dependencies for all involved modules for ease of use. Signed-off-by: Chen Wang <[email protected]>
2025-09-24RT_TIMER_CTRL_SET_TIME only accept rt_tick_t, pass rt_tick_t instead ↵Yonggang Luo
int/rt_int32_t
2025-09-15utest: update naems using new ruleChen Wang
The names of the utest cases defined in their respective modules have been updated. Some utest case names are not yet in their respective modules because their paths need to be finalized before their unique names can be determined. Currently, these names do not appear to conflict with the unified names. These include: - utest cases still in examples - bsp/qemu-virt64-riscv/applications/test/test_vector/test_vector.c. The entire test case should probably be placed in libcpu/risc-v rather than bsp. Signed-off-by: Chen Wang <[email protected]>
2025-09-06feat: Initialize local variables to prevent GCC compilation warningswdfk-prog
2025-09-02utest/utest: intergare testcases into utest framework (#10665)Chen Wang
* utest: move testcases of Utest from example to Utest folder Create unit-test-cases for the Utest framework subsystem according to "How to add utest cases into RT-Thread for your module." [1] Link: https://rt-thread.github.io/rt-thread/page_component_utest.html#autotoc_md804 [1] The original `components/utilities/utest` directory already has unit testcases, which are more comprehensive than the testcases in `examples/utest/testcases/utest/`. Therefore, simply deleted the test cases in `examples` and used the existing testcases in the utest framework. Signed-off-by: Chen Wang <[email protected]> * utest/utest: rename name and add license text Signed-off-by: Chen Wang <[email protected]> --------- Signed-off-by: Chen Wang <[email protected]>
2025-09-01fix: warnings generated by Kconfig.maosql
2025-06-10componnets: utest: fix case-name matching problemChen Wang
There is a problem with the matching of case names in the original code. Due to original code use memcmp with len, if the input case name and the existing case name have an inclusion relationship, for example, if the actual case name is "gpip_irq", and run `utest_run gpio` will also match successfully, but it's not expected. Modify the logic of exact matching and use strcmp instead. Keep the original wildcard logic, that is, `utest_run gpio*` can match both "gpio_irq" and "gpio". Signed-off-by: Chen Wang <[email protected]>
2025-05-16[building] rename the group name: LIBADT to Utilities. (#10267)Bernard Xiong
* [building] rename the group name: LIBADT to Utilities.
2025-03-10feat: ci script associated with auto_utest. (#9933)Yuqiang Wang
* feat: ci script associated with auto_utest.
2025-02-18[ulog]Fix the problem of file_buf being released incorrectlyRbb666
2025-01-15[utest] fix twice operation of uassertMeco Man
2025-01-09[utest] make RT_USING_CI_ACTION to be clearMeco Man
RT_USING_CI_ACTION will select RT_UTEST_USING_AUTO_RUN and RT_UTEST_USING_ALL_CASES
2025-01-07[utest] 修复UTEST_UNIT_RUN嵌套宏时将宏直接输出的问题Meco Man
2025-01-07[utest] add float operatorsMeco Man
uassert_float_equal and uassert_float_not_equal
2025-01-03[utest] add rt_memset test caseMeco Man
2024-12-24[utest] implement uassert_ptr_equal and uassert_ptr_not_equalMeco Man
2024-12-21[utest] optimize the utest to support new CIMeco Man
2024-12-21[klibc] format codeMeco Man
2024-12-20kernel: cleanup debug APIsChen Wang
- `dbg_log` is a “NOT RECOMMENDED API”, convert the calling of this API to LOG_x and remove this API. - `dbg_here`/`dbg_enter`/`dbg_exit`: no one use these APIs, remove them directly. Signed-off-by: Chen Wang <[email protected]>
2024-11-26[components][ulog]add some comments to ulog for supplement.ligr
2024-11-24[klibc] add rt_vsnprintf_std.c and rename RT_KLIBC_USING_VSNPRINTF_LONGLONGMeco Man
2024-11-18[utest] format code and remove duplicate header fileMeco Man
2024-10-07[Bug] [ymodem] last frame's data_sz issue, fixed.sulfurandcu
2024-10-03[components][ulog] ULOG_OUTPUT_LEVEL未定义时,level_output_info产生警告wdfk-prog
2024-07-22[BSP/Phytium]适配最新裸机驱动张衍
2024-06-26fix Compilation error in "driver.c", "completion_up.c", "syslog.c" and ↵Rui
"dlmodule.c". (#9093)