lwip_unittests.c 835 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #include "lwip_check.h"
  2. #include "udp/test_udp.h"
  3. #include "tcp/test_tcp.h"
  4. #include "tcp/test_tcp_oos.h"
  5. #include "lwip/init.h"
  6. int main()
  7. {
  8. int number_failed;
  9. SRunner *sr;
  10. size_t i;
  11. suite_getter_fn* suites[] = {
  12. udp_suite,
  13. tcp_suite,
  14. tcp_oos_suite,
  15. };
  16. size_t num = sizeof(suites)/sizeof(void*);
  17. LWIP_ASSERT("No suites defined", num > 0);
  18. lwip_init();
  19. sr = srunner_create((suites[0])());
  20. for(i = 1; i < num; i++) {
  21. srunner_add_suite(sr, ((suite_getter_fn*)suites[i])());
  22. }
  23. #ifdef LWIP_UNITTESTS_NOFORK
  24. srunner_set_fork_status(sr, CK_NOFORK);
  25. #endif
  26. #ifdef LWIP_UNITTESTS_FORK
  27. srunner_set_fork_status(sr, CK_FORK);
  28. #endif
  29. srunner_run_all(sr, CK_NORMAL);
  30. number_failed = srunner_ntests_failed(sr);
  31. srunner_free(sr);
  32. return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
  33. }