Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / net / tools / quic / quic_epoll_clock_test.cc
blob1ed1d15c1d7eaa6d541239c240b113c6bb90dbbf
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "net/tools/quic/quic_epoll_clock.h"
7 #include "net/tools/quic/test_tools/mock_epoll_server.h"
8 #include "testing/gmock/include/gmock/gmock.h"
10 namespace net {
11 namespace tools {
12 namespace test {
14 TEST(QuicEpollClockTest, ApproximateNowInUsec) {
15 MockEpollServer epoll_server;
16 QuicEpollClock clock(&epoll_server);
18 epoll_server.set_now_in_usec(1000000);
19 EXPECT_EQ(1000000,
20 clock.ApproximateNow().Subtract(QuicTime::Zero()).ToMicroseconds());
22 epoll_server.AdvanceBy(5);
23 EXPECT_EQ(1000005,
24 clock.ApproximateNow().Subtract(QuicTime::Zero()).ToMicroseconds());
27 TEST(QuicEpollClockTest, NowInUsec) {
28 MockEpollServer epoll_server;
29 QuicEpollClock clock(&epoll_server);
31 epoll_server.set_now_in_usec(1000000);
32 EXPECT_EQ(1000000,
33 clock.Now().Subtract(QuicTime::Zero()).ToMicroseconds());
35 epoll_server.AdvanceBy(5);
36 EXPECT_EQ(1000005,
37 clock.Now().Subtract(QuicTime::Zero()).ToMicroseconds());
40 TEST(QuicEpollClockTest, WallNow) {
41 MockEpollServer epoll_server;
42 QuicEpollClock clock(&epoll_server);
44 base::Time start = base::Time::Now();
45 QuicWallTime now = clock.WallNow();
46 base::Time end = base::Time::Now();
48 // If end > start, then we can check now is between start and end.
49 if (end > start) {
50 EXPECT_LE(static_cast<uint64>(start.ToTimeT()), now.ToUNIXSeconds());
51 EXPECT_LE(now.ToUNIXSeconds(), static_cast<uint64>(end.ToTimeT()));
55 } // namespace test
56 } // namespace tools
57 } // namespace net