Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(593)

Side by Side Diff: base/test/test_pending_task.h

Issue 491743002: Adding tracing and gtest pretty printing support to TestPendingTask. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: s/::std/std Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/base.gyp ('k') | base/test/test_pending_task.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef BASE_TEST_TEST_PENDING_TASK_H_ 5 #ifndef BASE_TEST_TEST_PENDING_TASK_H_
6 #define BASE_TEST_TEST_PENDING_TASK_H_ 6 #define BASE_TEST_TEST_PENDING_TASK_H_
7 7
8 #include <string>
9
8 #include "base/callback.h" 10 #include "base/callback.h"
11 #include "base/debug/trace_event_argument.h"
9 #include "base/location.h" 12 #include "base/location.h"
10 #include "base/time/time.h" 13 #include "base/time/time.h"
11 14
12 namespace base { 15 namespace base {
13 16
14 // TestPendingTask is a helper class for test TaskRunner 17 // TestPendingTask is a helper class for test TaskRunner
15 // implementations. See test_simple_task_runner.h for example usage. 18 // implementations. See test_simple_task_runner.h for example usage.
16 19
17 struct TestPendingTask { 20 struct TestPendingTask {
18 enum TestNestability { NESTABLE, NON_NESTABLE }; 21 enum TestNestability { NESTABLE, NON_NESTABLE };
(...skipping 25 matching lines...) Expand all
44 // 47 //
45 // - std::max_element 48 // - std::max_element
46 // - std::sort. 49 // - std::sort.
47 bool ShouldRunBefore(const TestPendingTask& other) const; 50 bool ShouldRunBefore(const TestPendingTask& other) const;
48 51
49 tracked_objects::Location location; 52 tracked_objects::Location location;
50 Closure task; 53 Closure task;
51 TimeTicks post_time; 54 TimeTicks post_time;
52 TimeDelta delay; 55 TimeDelta delay;
53 TestNestability nestability; 56 TestNestability nestability;
57
58 // Functions for using test pending task with tracing, useful in unit
59 // testing.
60 void AsValueInto(base::debug::TracedValue* state) const;
61 scoped_refptr<base::debug::ConvertableToTraceFormat> AsValue() const;
62 std::string ToString() const;
54 }; 63 };
55 64
65 // gtest helpers which allow pretty printing of the tasks, very useful in unit
66 // testing.
67 std::ostream& operator<<(std::ostream& os, const TestPendingTask& task);
68 void PrintTo(const TestPendingTask& task, std::ostream* os);
69
56 } // namespace base 70 } // namespace base
57 71
58 #endif // BASE_TEST_TEST_TASK_RUNNER_H_ 72 #endif // BASE_TEST_TEST_PENDING_TASK_H_
OLDNEW
« no previous file with comments | « base/base.gyp ('k') | base/test/test_pending_task.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698