chromium/chrome/browser/extensions/api_binding_perf_browsertest.cc

// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/time/time.h"
#include "chrome/browser/extensions/extension_browsertest.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/test/base/ui_test_utils.h"
#include "content/public/test/browser_test.h"
#include "content/public/test/browser_test_utils.h"
#include "extensions/test/test_extension_dir.h"

namespace extensions {
namespace {

// TODO(jbroman, devlin): This should ultimately be replaced with some more
// sophisticated testing (e.g. in Telemetry) which is tracked on the perf bots.

// These tests are designed to exercise the extension API bindings
// system and measure performance with and without native bindings.
// They are designed to be run locally, and there isn't much benefit to
// running them on the bots. For this reason, they are all disabled.
// To run them, append the --gtest_also_run_disabled_tests flag to the
// test executable.
#define LOCAL_TEST(TestName)

class APIBindingPerfBrowserTest : public ExtensionBrowserTest {};

constexpr char kSimpleContentScriptManifest[] =;

IN_PROC_BROWSER_TEST_F(APIBindingPerfBrowserTest,
                       LOCAL_TEST(ManyFramesWithNoContentScript)) {}

IN_PROC_BROWSER_TEST_F(APIBindingPerfBrowserTest,
                       LOCAL_TEST(ManyFramesWithEmptyContentScript)) {}

IN_PROC_BROWSER_TEST_F(APIBindingPerfBrowserTest,
                       LOCAL_TEST(ManyFramesWithStorageAndRuntime)) {}

}  // namespace
}  // namespace extensions