From c3484c5d4daa38257c633f74cf86e44ed1bd68fc Mon Sep 17 00:00:00 2001 From: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com> Date: Tue, 12 Jan 2021 04:53:08 -0800 Subject: [PATCH] DateTime: Add unit tests for comparison operators (#1332) Add unit tests for the https://github.com/Azure/azure-sdk-for-cpp/pull/1326 fix. --- sdk/core/azure-core/test/ut/datetime.cpp | 40 ++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/sdk/core/azure-core/test/ut/datetime.cpp b/sdk/core/azure-core/test/ut/datetime.cpp index 258de5b83..c458dcd7d 100644 --- a/sdk/core/azure-core/test/ut/datetime.cpp +++ b/sdk/core/azure-core/test/ut/datetime.cpp @@ -5,6 +5,7 @@ #include +#include #include using namespace Azure::Core; @@ -594,3 +595,42 @@ TEST(DateTime, DefaultConstructible) DateTime dt; EXPECT_EQ(0, dt.time_since_epoch().count()); } + +TEST(DateTime, ComparisonOperators) +{ + std::chrono::system_clock::time_point const chronoPast = std::chrono::system_clock::now(); + std::chrono::system_clock::time_point const chronoFuture = chronoPast + std::chrono::hours(1); + + DateTime const azcorePast = chronoPast; + DateTime const azcoreFuture = chronoFuture; + + EXPECT_LT(azcorePast, chronoFuture); + EXPECT_LT(chronoPast, azcoreFuture); + + EXPECT_GT(azcoreFuture, chronoPast); + EXPECT_GT(chronoFuture, azcorePast); + + EXPECT_NE(azcorePast, chronoFuture); + EXPECT_NE(azcoreFuture, chronoPast); + EXPECT_NE(chronoPast, azcoreFuture); + EXPECT_NE(chronoFuture, azcorePast); + + EXPECT_EQ(azcorePast, chronoPast); + EXPECT_EQ(azcoreFuture, chronoFuture); + EXPECT_EQ(chronoPast, azcorePast); + EXPECT_EQ(chronoFuture, azcoreFuture); + + EXPECT_LE(azcorePast, chronoFuture); + EXPECT_LE(azcorePast, chronoPast); + EXPECT_LE(azcoreFuture, chronoFuture); + EXPECT_LE(chronoPast, azcoreFuture); + EXPECT_LE(chronoPast, azcorePast); + EXPECT_LE(chronoFuture, azcoreFuture); + + EXPECT_GE(azcoreFuture, chronoPast); + EXPECT_GE(azcorePast, chronoPast); + EXPECT_GE(azcoreFuture, chronoFuture); + EXPECT_GE(chronoFuture, azcorePast); + EXPECT_GE(chronoPast, azcorePast); + EXPECT_GE(chronoFuture, azcoreFuture); +}