SequenceGeneratorTests.cpp 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #include <AzNetworking/ConnectionLayer/SequenceGenerator.h>
  9. #include <AzCore/UnitTest/TestTypes.h>
  10. namespace UnitTest
  11. {
  12. TEST(SequenceGenerator, Basic8BitSequenceTest)
  13. {
  14. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint8_t(0), uint8_t(1)));
  15. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint8_t(1), uint8_t(2)));
  16. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint8_t(1), uint8_t(0)));
  17. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint8_t(2), uint8_t(1)));
  18. }
  19. TEST(SequenceGenerator, Wraparound8BitSequenceTest)
  20. {
  21. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint8_t(254), uint8_t(255)));
  22. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint8_t(255), uint8_t( 0)));
  23. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint8_t(255), uint8_t(254)));
  24. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint8_t( 0), uint8_t(255)));
  25. }
  26. TEST(SequenceGenerator, Basic16BitSequenceTest)
  27. {
  28. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint16_t(0), uint16_t(1)));
  29. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint16_t(1), uint16_t(2)));
  30. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint16_t(1), uint16_t(0)));
  31. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint16_t(2), uint16_t(1)));
  32. }
  33. TEST(SequenceGenerator, Wraparound16BitSequenceTest)
  34. {
  35. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint16_t(65534), uint16_t(65535)));
  36. EXPECT_FALSE(AzNetworking::SequenceMoreRecent(uint16_t(65535), uint16_t( 0)));
  37. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint16_t(65535), uint16_t(65534)));
  38. EXPECT_TRUE (AzNetworking::SequenceMoreRecent(uint16_t( 0), uint16_t(65535)));
  39. }
  40. }