chromium/gpu/command_buffer/service/scheduler_unittest.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 "gpu/command_buffer/service/scheduler.h"

#include <algorithm>

#include "base/feature_list.h"
#include "base/functional/bind.h"
#include "base/task/single_thread_task_runner.h"
#include "base/test/bind.h"
#include "base/test/task_environment.h"
#include "base/test/test_simple_task_runner.h"
#include "base/time/time.h"
#include "gpu/command_buffer/service/sync_point_manager.h"
#include "gpu/config/gpu_finch_features.h"
#include "gpu/config/gpu_preferences.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace gpu {

template <typename T>
void RunFunctor(T functor) {}

template <typename T>
base::OnceClosure GetClosure(T functor) {}

class SchedulerTest : public testing::Test {};

TEST_F(SchedulerTest, ScheduledTasksRunInOrder) {}

TEST_F(SchedulerTest, ScheduledTasksRunAfterReporting) {}

TEST_F(SchedulerTest, ContinuedTasksRunFirst) {}

class SchedulerTaskRunOrderTest : public SchedulerTest {};

TEST_F(SchedulerTaskRunOrderTest, SequencesRunInPriorityOrder) {}

TEST_F(SchedulerTaskRunOrderTest, SequencesOfSamePriorityRunInOrder) {}

TEST_F(SchedulerTaskRunOrderTest, SequenceWaitsForFence) {}

TEST_F(SchedulerTaskRunOrderTest, SequenceWaitsForFenceExternal) {}

TEST_F(SchedulerTaskRunOrderTest, SequenceDoesNotWaitForInvalidFence) {}

TEST_F(SchedulerTaskRunOrderTest, ReleaseSequenceIsPrioritized) {}

TEST_F(SchedulerTaskRunOrderTest, ReleaseSequenceHasPriorityOfWaiter) {}

TEST_F(SchedulerTaskRunOrderTest, ReleaseSequenceRevertsToDefaultPriority) {}

TEST_F(SchedulerTaskRunOrderTest, ReleaseSequenceCircularRelease) {}

TEST_F(SchedulerTaskRunOrderTest, WaitOnSelfShouldNotBlockSequence) {}

TEST_F(SchedulerTest, ReleaseSequenceShouldYield) {}

TEST_F(SchedulerTest, ReentrantEnableSequenceShouldNotDeadlock) {}

TEST_F(SchedulerTest, ClientWaitIsPrioritized) {}

TEST_F(SchedulerTest, StreamPriorities) {}

TEST_F(SchedulerTest, StreamDestroyRemovesPriorities) {}

// crbug.com/781585#5: Test RemoveWait/AddWait/RemoveWait sequence.
TEST_F(SchedulerTest, StreamPriorityChangeWhileReleasing) {}

TEST_F(SchedulerTest, CircularPriorities) {}

}  // namespace gpu