summaryrefslogtreecommitdiffstats
path: root/base/debug/task_annotator_unittest.cc
blob: ddffc21ab028cf6bac33122536e655e721086aa2 (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
// 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.

#include "base/debug/task_annotator.h"
#include "base/bind.h"
#include "base/pending_task.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace base {
namespace debug {
namespace {

void TestTask(int* result) {
  *result = 123;
}

}  // namespace

TEST(TaskAnnotatorTest, QueueAndRunTask) {
  int result = 0;
  PendingTask pending_task(FROM_HERE, Bind(&TestTask, &result));

  TaskAnnotator annotator;
  annotator.DidQueueTask("TaskAnnotatorTest::Queue", pending_task);
  EXPECT_EQ(0, result);
  annotator.RunTask(
      "TaskAnnotatorTest::Queue", "TaskAnnotatorTest::Run", pending_task);
  EXPECT_EQ(123, result);
}

}  // namespace debug
}  // namespace base