summaryrefslogtreecommitdiffstats
path: root/cc/test/begin_frame_args_test.h
blob: d798094d26ddc5a8401ae7d5d406f4f1891208da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
// Copyright 2014 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.

#ifndef CC_TEST_BEGIN_FRAME_ARGS_TEST_H_
#define CC_TEST_BEGIN_FRAME_ARGS_TEST_H_

#include <stdint.h>

#include <iosfwd>

#include "base/test/simple_test_tick_clock.h"
#include "base/time/time.h"
#include "cc/output/begin_frame_args.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace cc {

// Functions for quickly creating BeginFrameArgs
BeginFrameArgs CreateBeginFrameArgsForTesting(
    BeginFrameArgs::CreationLocation location);
BeginFrameArgs CreateBeginFrameArgsForTesting(
    BeginFrameArgs::CreationLocation location,
    base::TimeTicks frame_time);
BeginFrameArgs CreateBeginFrameArgsForTesting(
    BeginFrameArgs::CreationLocation location,
    int64_t frame_time,
    int64_t deadline,
    int64_t interval);
BeginFrameArgs CreateBeginFrameArgsForTesting(
    BeginFrameArgs::CreationLocation location,
    int64_t frame_time,
    int64_t deadline,
    int64_t interval,
    BeginFrameArgs::BeginFrameArgsType type);

// Creates a BeginFrameArgs using the fake Now value stored on the
// OrderSimpleTaskRunner.
BeginFrameArgs CreateBeginFrameArgsForTesting(
    BeginFrameArgs::CreationLocation location,
    base::SimpleTestTickClock* now_src);

// gtest helpers -- these *must* be in the same namespace as the types they
// operate on.

// Allow "EXPECT_EQ(args1, args2);"
// We don't define operator!= because EXPECT_NE(args1, args2) isn't all that
// sensible.
bool operator==(const BeginFrameArgs& lhs, const BeginFrameArgs& rhs);

// Allow gtest to pretty print begin frame args.
::std::ostream& operator<<(::std::ostream& os, const BeginFrameArgs& args);
void PrintTo(const BeginFrameArgs& args, ::std::ostream* os);

}  // namespace cc

#endif  // CC_TEST_BEGIN_FRAME_ARGS_TEST_H_