// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "net/quic/test_tools/mock_clock.h"

namespace net {

MockClock::MockClock() : now_(QuicTime::Zero()) {
}

MockClock::~MockClock() {
}

void MockClock::AdvanceTime(QuicTime::Delta delta) {
  now_ = now_.Add(delta);
}

QuicTime MockClock::Now() const {
  return now_;
}

QuicTime MockClock::ApproximateNow() const {
  return now_;
}

QuicWallTime MockClock::WallNow() const {
  return QuicWallTime::FromUNIXSeconds(
      now_.Subtract(QuicTime::Zero()).ToSeconds());
}

base::TimeTicks MockClock::NowInTicks() const {
  base::TimeTicks ticks;
  return ticks + base::TimeDelta::FromMicroseconds(
      now_.Subtract(QuicTime::Zero()).ToMicroseconds());
}

}  // namespace net