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

Unified Diff: mojo/tests/task_tracker_perftest.cc

Issue 2058943002: Remove //mojo/tests. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/tests/BUILD.gn ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/tests/task_tracker_perftest.cc
diff --git a/mojo/tests/task_tracker_perftest.cc b/mojo/tests/task_tracker_perftest.cc
deleted file mode 100644
index 68822b74f49cff19405f7ff58c10bd9a87e91462..0000000000000000000000000000000000000000
--- a/mojo/tests/task_tracker_perftest.cc
+++ /dev/null
@@ -1,134 +0,0 @@
-// Copyright 2015 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 <numeric>
-
-#include "base/logging.h"
-#include "base/message_loop/message_loop.h"
-#include "base/timer/elapsed_timer.h"
-#include "base/tracked_objects.h"
-#include "mojo/message_pump/message_pump_mojo.h"
-#include "mojo/public/cpp/bindings/binding.h"
-#include "mojo/public/cpp/environment/environment.h"
-#include "mojo/public/cpp/environment/task_tracker.h"
-#include "mojo/public/cpp/test_support/test_support.h"
-#include "mojo/public/interfaces/bindings/tests/sample_interfaces.mojom.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace mojo {
-namespace test {
-namespace {
-
-class ProviderImpl : public sample::Provider {
- public:
- explicit ProviderImpl(InterfaceRequest<sample::Provider> request)
- : binding_(this, request.Pass()) {}
-
- void EchoString(const String& a,
- const Callback<void(String)>& callback) override {
- callback.Run(a);
- }
-
- void EchoStrings(const String& a,
- const String& b,
- const Callback<void(String, String)>& callback) override {
- CHECK(false);
- }
-
- void EchoMessagePipeHandle(
- ScopedMessagePipeHandle a,
- const Callback<void(ScopedMessagePipeHandle)>& callback) override {
- CHECK(false);
- }
-
- void EchoEnum(sample::Enum a,
- const Callback<void(sample::Enum)>& callback) override {
- CHECK(false);
- }
-
- void EchoInt(int32_t a, const EchoIntCallback& callback) override {
- CHECK(false);
- }
-
- Binding<sample::Provider> binding_;
-};
-
-class RequestResponsePerfTest : public testing::Test {
- public:
- RequestResponsePerfTest()
- : loop_(make_scoped_ptr(new common::MessagePumpMojo())) {}
-
- ~RequestResponsePerfTest() override { loop_.RunUntilIdle(); }
-
- void Iterate(size_t count);
- void Measure(const char* case_nam);
-
- void SetUp() override {
- tracked_objects::ThreadData::InitializeAndSetTrackingStatus(
- tracked_objects::ThreadData::PROFILING_ACTIVE);
- }
-
- void TearDown() override {
- tracked_objects::ThreadData::InitializeAndSetTrackingStatus(
- tracked_objects::ThreadData::DEACTIVATED);
- }
-
- void PumpMessages() { loop_.RunUntilIdle(); }
-
- private:
- base::MessageLoop loop_;
-};
-
-const size_t kCallsPerIteration = 1000;
-const size_t kIterations = 1000;
-
-void RequestResponsePerfTest::Iterate(size_t count) {
- sample::ProviderPtr provider;
- ProviderImpl provider_impl(GetProxy(&provider));
-
- size_t remaining = count;
- Callback<void(const String&)> reply =
- [&provider, &reply, &remaining](const String& a) {
- if (!remaining)
- return;
- remaining--;
- provider->EchoString(a, reply);
- };
-
- provider->EchoString(String::From("hello"), reply);
- PumpMessages();
-}
-
-void RequestResponsePerfTest::Measure(const char* case_name) {
- std::vector<double> laps;
- for (size_t i = 0; i < kIterations; ++i) {
- base::ElapsedTimer timer;
- Iterate(kCallsPerIteration);
- laps.push_back(timer.Elapsed().InMillisecondsF());
- }
-
- double avg = std::accumulate(laps.begin(), laps.end(), 0.0) / laps.size();
- double var = std::accumulate(laps.begin(), laps.end(), 0.0, [avg](double acc,
- double x) {
- return acc + (x - avg) * (x - avg);
- }) / laps.size();
-
- double sd = sqrt(var);
- mojo::test::LogPerfResult(case_name, "Avg", avg, "ms/1000call");
- mojo::test::LogPerfResult(case_name, "SD", sd, "ms/1000call");
-}
-
-TEST_F(RequestResponsePerfTest, TrackingEnabled) {
- Environment::GetDefaultTaskTracker()->SetEnabled(true);
- Measure(__FUNCTION__);
- Environment::GetDefaultTaskTracker()->SetEnabled(false);
-}
-
-TEST_F(RequestResponsePerfTest, TrackingDisabled) {
- Measure(__FUNCTION__);
-}
-
-} // namespace
-} // namespace test
-} // namespace mojo
« no previous file with comments | « mojo/tests/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698