Skip to content

Implement teardown contract for ESPWorker#2

Merged
zekageri merged 1 commit intomainfrom
feature/esp-worker/teardown/teardown-contract-esp-worker
Feb 24, 2026
Merged

Implement teardown contract for ESPWorker#2
zekageri merged 1 commit intomainfrom
feature/esp-worker/teardown/teardown-contract-esp-worker

Conversation

@zekageri
Copy link
Collaborator

Summary

  • add public isInitialized() const to ESPWorker
  • harden teardown state handling by making _initialized atomic and centralizing deinit state reset
  • add lifecycle teardown tests (pre-init deinit, idempotent deinit, re-init, destructor teardown)
  • add host test stubs for FreeRTOS/heap APIs and wire tests into CMake
  • update README and examples to show explicit deinit() usage

Verification

  • g++ -std=gnu++17 test/esp_worker_lifecycle_tests.cpp test/worker_test_stubs.cpp src/esp_worker/worker.cpp -Isrc -Itest/stubs -Itest -pthread -o /tmp/esp_worker_lifecycle_tests && /tmp/esp_worker_lifecycle_tests

@zekageri zekageri merged commit cf6d4b4 into main Feb 24, 2026
10 checks passed
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.

1 participant