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

Zephyr regression tests executed on QEMU #1678

Merged
merged 30 commits into from
Apr 4, 2023
Merged

Zephyr regression tests executed on QEMU #1678

merged 30 commits into from
Apr 4, 2023

Conversation

erlingrj
Copy link
Collaborator

This PR enables running parts of the regression test suite on an QEMU-emulation with Zephyr in CI.
To this we have the following changes:

  • Add a bash script for compiling and running the emulator and parsing its output and killing the emulator either after a timeout or after the LF program has exited and printed "exit"
  • Decouple "TestLevel" from test categories. THis was a change introduced by @arengarajan99, but I don't think it makes sense to say that the GenericTests are bundled with a TestLevel.EXECUTE and ArduinoTests are bundled with TestLevel.BUILD. This change makes the TestLevel and input to the test. This was we can have the buildZephyrGenericTests which configures and builds the GEnericTests for a Zephyr platform.
  • To get this to work I need to configure the regression tests for Zephyr by changing the target property. I need to disable tracing and threading (currently) and also set platform to Zephyr. However, the TestBase.java includes a line that reloads the target properties after the Configurator is applied and thus overwrites these changes. I have commented out this line. But I am guessing that this will lead to some other test failures. So we need to find a workaround there.

@erlingrj
Copy link
Collaborator Author

erlingrj commented Mar 28, 2023

Also fixes this: lf-lang/reactor-c#180 and lf-lang/reactor-c#185

.github/workflows/c-zephyr-tests.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
org.lflang.tests/src/org/lflang/tests/TestBase.java Outdated Show resolved Hide resolved
test/C/src/zephyr/HelloZephyr.lf Outdated Show resolved Hide resolved
@erlingrj erlingrj requested a review from lhstrh March 30, 2023 12:25
@lhstrh lhstrh changed the title Run regression test suite on Zephyr emulation Zephyr regression tests executed on QEMU Mar 30, 2023
@lhstrh lhstrh added the testing label Mar 30, 2023
@lhstrh lhstrh self-requested a review March 31, 2023 20:52
@lhstrh lhstrh merged commit ecd6523 into master Apr 4, 2023
@cmnrd cmnrd deleted the proper-zephyr-ci branch June 8, 2023 07:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants