blob: b91cd9425a71d60b1bfbc65f0f3c26bfd9b725d4 [file] [log] [blame]
// Copyright 2022 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/enterprise/idle/action.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace enterprise_idle {
TEST(IdleActionTest, Build) {
auto* factory = ActionFactory::GetInstance();
auto queue = factory->Build(
{ActionType::kCloseBrowsers, ActionType::kShowProfilePicker});
EXPECT_EQ(2u, queue.size());
EXPECT_EQ(0u, queue.top()->priority());
queue.pop();
EXPECT_EQ(1u, queue.top()->priority());
queue = factory->Build({ActionType::kCloseBrowsers});
EXPECT_EQ(1u, queue.size());
EXPECT_EQ(0u, queue.top()->priority());
}
TEST(IdleActionTest, ClearBrowsingDataIsSingleAction) {
auto* factory = ActionFactory::GetInstance();
auto queue = factory->Build(
{ActionType::kClearBrowsingHistory, ActionType::kClearDownloadHistory,
ActionType::kClearCookiesAndOtherSiteData,
ActionType::kClearCachedImagesAndFiles,
ActionType::kClearCachedImagesAndFiles, ActionType::kClearPasswordSignin,
ActionType::kClearAutofill, ActionType::kClearSiteSettings,
ActionType::kClearHostedAppData});
EXPECT_EQ(1u, queue.size());
EXPECT_EQ(2u, queue.top()->priority());
}
} // namespace enterprise_idle