chromium/chrome/browser/ui/tabs/tab_collection_unittest.cc

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

#include "chrome/browser/ui/tabs/tab_collection.h"

#include <cstddef>
#include <memory>
#include <optional>

#include "chrome/browser/ui/tabs/features.h"
#include "chrome/browser/ui/tabs/pinned_tab_collection.h"
#include "chrome/browser/ui/tabs/tab_collection_storage.h"
#include "chrome/browser/ui/tabs/tab_group_tab_collection.h"
#include "chrome/browser/ui/tabs/tab_model.h"
#include "chrome/browser/ui/tabs/tab_strip_collection.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/browser/ui/tabs/test_tab_strip_model_delegate.h"
#include "chrome/browser/ui/tabs/test_util.h"
#include "chrome/browser/ui/tabs/unpinned_tab_collection.h"
#include "chrome/browser/ui/ui_features.h"
#include "chrome/test/base/testing_profile.h"
#include "content/public/test/browser_task_environment.h"
#include "content/public/test/test_renderer_host.h"
#include "testing/gtest/include/gtest/gtest.h"

class TabCollectionBaseTest : public ::testing::Test {};

class PinnedTabCollectionTest : public TabCollectionBaseTest {};

TEST_F(PinnedTabCollectionTest, AddOperation) {}

TEST_F(PinnedTabCollectionTest, RemoveOperation) {}

TEST_F(PinnedTabCollectionTest, CloseTabOperation) {}

TEST_F(PinnedTabCollectionTest, CollectionOperationsIsNoop) {}

TEST_F(PinnedTabCollectionTest, MoveOperation) {}

class TabGroupTabCollectionTest : public TabCollectionBaseTest {};

TEST_F(TabGroupTabCollectionTest, AddOperation) {}

TEST_F(TabGroupTabCollectionTest, RemoveOperation) {}

TEST_F(TabGroupTabCollectionTest, MoveOperation) {}

class UnpinnedTabCollectionTest : public TabCollectionBaseTest {};

TEST_F(UnpinnedTabCollectionTest, AddOperation) {}

TEST_F(UnpinnedTabCollectionTest, RemoveOperation) {}

TEST_F(UnpinnedTabCollectionTest, CloseTabOperation) {}

TEST_F(UnpinnedTabCollectionTest, CloseGroupOperation) {}

TEST_F(UnpinnedTabCollectionTest, MoveOperation) {}

class TabStripCollectionTest : public TabCollectionBaseTest {};

TEST_F(TabStripCollectionTest, CollectionOperations) {}

TEST_F(TabStripCollectionTest, TabOperations) {}

// Test for `AddTabRecursive`.
TEST_F(TabStripCollectionTest, RecursiveTabIndexOperationTests) {}

TEST_F(TabStripCollectionTest, RecursiveRemoveTabAtIndex) {}

// TODO(b/332586827): Re-enable death testing.
TEST_F(TabStripCollectionTest, DISABLED_RecursiveTabAddBadInput) {}