Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setup Wasm test case #4

Open
wants to merge 4 commits into
base: dev
Choose a base branch
from
Open

Conversation

HoTBAIzZY
Copy link

Summary

Added new test module with initial test cases for libc functions in WASM: Implemented test cases for string.h functions (strlen, strcmp, strcpy) and stdlib.h functions (malloc, free, atoi).
Modified the test suite to only run WebAssembly (WASM) tests when WAMR is enabled: This change prevents WASM-related test failures in environments where WAMR is not available or not desired, making the test suite more robust and configurable.
Added missing key-value database (KVDB) interface implementation to the WebAssembly frameworks layer: This enables WASM applications to access persistent key-value storage functionality, improving feature parity between native and WASM environments.
Removed CONFIG_INTERPRETERS_WAMR_EXTERNAL_MODULE_REGISTRY: This simplifies the build configuration.

Impact

Enables automated testing of core libc functionality: Provides regression testing for critical system functions and improves code quality through test coverage.
Prevents WASM-related test failures in non-WAMR environments: Makes the test suite more robust and configurable.
Enables WASM applications to use KVDB operations: Improves feature parity between native and WASM environments and enables persistent storage use cases in WASM applications.
Simplifies the build configuration: Removes unnecessary complexity by eliminating CONFIG_INTERPRETERS_WAMR_EXTERNAL_MODULE_REGISTRY.

Testing

CI integration added to run tests on every commit: Ensures continuous validation of the codebase.
Verified tests pass when WAMR is enabled: Confirmed that WASM tests are skipped when WAMR is disabled, and ran the full test suite to ensure no regressions in other tests.
Added unit tests for all new KVDB interface methods: Verified KVDB operations work in the WASM runtime and tested with a sample WASM application using KVDB.
Ensured no regressions in existing test suite: Ran the full test suite to confirm stability after changes.

@@ -1,6 +1,6 @@
# Overview

This folder contains the sysroot for the openvela Wasm Application Framework.
This folder contains the sysroot for the Vela Wasm Application Framework.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we keep openvela here?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please update the patch, use openvela instead

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

# limitations under the License.
#

CONFIGURED_APPS += $(APPDIR)/frameworks/runtimes/wasm/test

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we add ifneq/endif

* `libc`: The C standard library for Wasm
* `memory`: Memory aceess management between wasm and native code
* `test`: Unit test cases for each module
* `vela-sysroot`: A collection of extra header files to build WebAssembly applications

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's creae a new patch to change vela-sysroot to sysroot

* `chre`: 该模块提供了从 Context Hub Runtime Environment 到 Wasm 运行时的功能
* `libc`: 用于 Wasm 的 C 标准库
* `memory`: Wasm 和原生代码之间的内存访问管理
* `vela-sysroot`: 用于构建 WebAssembly 应用程序的额外头文件集合

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@xiaoxiang781216
Copy link

xiaoxiang781216 commented Jan 14, 2025

@HoTBAIzZY did these patch already merged into gerrit?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants