chromium/components/performance_manager/graph/system_node_impl_unittest.cc

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

#include "components/performance_manager/graph/system_node_impl.h"

#include "base/memory/memory_pressure_listener.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "components/memory_pressure/fake_memory_pressure_monitor.h"
#include "components/performance_manager/graph/frame_node_impl.h"
#include "components/performance_manager/graph/page_node_impl.h"
#include "components/performance_manager/graph/process_node_impl.h"
#include "components/performance_manager/test_support/graph_test_harness.h"
#include "components/performance_manager/test_support/mock_graphs.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace performance_manager {

namespace {

// Observer used to make sure that signals are dispatched correctly.
class SystemObserver : public SystemNodeImpl::ObserverDefaultImpl {};

SystemNodeImplTest;

}  // namespace

TEST_F(SystemNodeImplTest, SafeDowncast) {}

SystemNodeImplDeathTest;

TEST_F(SystemNodeImplDeathTest, SafeDowncast) {}

namespace {

class LenientMockObserver : public SystemNodeImpl::Observer {};

MockObserver;

MemoryPressureLevel;
_;
Invoke;
InvokeWithoutArgs;

}  // namespace

TEST_F(SystemNodeImplTest, ObserverWorks) {}

TEST_F(SystemNodeImplTest, MemoryPressureNotification) {}

}  // namespace performance_manager