Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

41 рядки
641 B

  1. #pragma once
  2. #include <gtest/gtest.h>
  3. #include <gmock/gmock.h>
  4. #define __asyncpp_has_impl_timer_now
  5. #include <asyncpp/core/misc.h>
  6. struct now_mock;
  7. static now_mock * __now_mock_instance;
  8. struct now_mock
  9. {
  10. public:
  11. inline now_mock()
  12. { __now_mock_instance = this; }
  13. inline ~now_mock()
  14. {
  15. if (__now_mock_instance == this)
  16. __now_mock_instance = nullptr;
  17. }
  18. public:
  19. MOCK_METHOD0(now, asyncpp::time_point());
  20. };
  21. namespace asyncpp
  22. {
  23. time_point now()
  24. {
  25. return __now_mock_instance
  26. ? __now_mock_instance->now()
  27. : std::chrono::steady_clock::now();
  28. }
  29. }