|
|
@@ -153,6 +153,19 @@ TEST(PatternLayoutTest, LogMessageIsMToken) {
|
|
|
Eq("HELLO"));
|
|
|
}
|
|
|
|
|
|
+MATCHER_P2(Near, value, error, "") {
|
|
|
+ return std::abs(arg - value) < error;
|
|
|
+}
|
|
|
+
|
|
|
+TEST(PatternLayoutTest, CanOutputTimeSinceCreation) {
|
|
|
+ // Because we're passing in a timestamp of {0, 0} with getpkt(), %r should
|
|
|
+ // produce -1 * time_since_epoch_in_milliseconds().
|
|
|
+ // Since time(NULL) returns seconds, whereas %r returns milliseconds, we
|
|
|
+ // allow a margin of error of +/- 1 second
|
|
|
+ EXPECT_THAT(std::stoll(DoFormat("%r", getpkt(""))),
|
|
|
+ Near(-time(NULL) * 1000, 1000));
|
|
|
+}
|
|
|
+
|
|
|
TEST(PatternLayoutTest, CanOutputLineNumber) {
|
|
|
EXPECT_THAT(std::stoi(DoFormat("%L", getpkt("", log_here))),
|
|
|
testing::Eq(__LINE__ - 1));
|