testing.c 652 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include <stdio.h>
  2. #include <zivuos.h>
  3. void check(zv_mutex_t *self) {
  4. if (zv_mutex_is_free(self)) {
  5. puts("Mutex is free.");
  6. } else {
  7. puts("Mutex is locked.");
  8. }
  9. }
  10. void catch(zv_mutex_t *self) {
  11. if (zv_mutex_try_lock(self)) {
  12. puts("Locking mutex.");
  13. } else {
  14. puts("Mutex is already locker.");
  15. }
  16. }
  17. int main() {
  18. puts("ZivuOS default test unit.");
  19. zv_mutex_t lock = zv_mutex_create();
  20. check(&lock);
  21. catch(&lock);
  22. catch(&lock);
  23. check(&lock);
  24. zv_mutex_unlock(&lock);
  25. check(&lock);
  26. catch(&lock);
  27. check(&lock);
  28. zv_mutex_unlock(&lock);
  29. return 0;
  30. }