lwip_unittests.c 1013 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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 "core/test_mem.h"
  6. #include "core/test_pbuf.h"
  7. #include "etharp/test_etharp.h"
  8. #include "dhcp/test_dhcp.h"
  9. #include "lwip/init.h"
  10. int main()
  11. {
  12. int number_failed;
  13. SRunner *sr;
  14. size_t i;
  15. suite_getter_fn* suites[] = {
  16. udp_suite,
  17. tcp_suite,
  18. tcp_oos_suite,
  19. mem_suite,
  20. pbuf_suite,
  21. etharp_suite,
  22. dhcp_suite
  23. };
  24. size_t num = sizeof(suites)/sizeof(void*);
  25. LWIP_ASSERT("No suites defined", num > 0);
  26. lwip_init();
  27. sr = srunner_create((suites[0])());
  28. for(i = 1; i < num; i++) {
  29. srunner_add_suite(sr, ((suite_getter_fn*)suites[i])());
  30. }
  31. #ifdef LWIP_UNITTESTS_NOFORK
  32. srunner_set_fork_status(sr, CK_NOFORK);
  33. #endif
  34. #ifdef LWIP_UNITTESTS_FORK
  35. srunner_set_fork_status(sr, CK_FORK);
  36. #endif
  37. srunner_run_all(sr, CK_NORMAL);
  38. number_failed = srunner_ntests_failed(sr);
  39. srunner_free(sr);
  40. return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
  41. }