#include "chrome/browser/notifications/scheduler/internal/scheduled_notification_manager.h"
#include <utility>
#include <vector>
#include "base/containers/contains.h"
#include "base/functional/bind.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/task_environment.h"
#include "base/uuid.h"
#include "chrome/browser/notifications/scheduler/internal/collection_store.h"
#include "chrome/browser/notifications/scheduler/internal/icon_store.h"
#include "chrome/browser/notifications/scheduler/internal/notification_entry.h"
#include "chrome/browser/notifications/scheduler/internal/scheduler_config.h"
#include "chrome/browser/notifications/scheduler/public/notification_params.h"
#include "chrome/browser/notifications/scheduler/public/notification_scheduler_constant.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
_;
Invoke;
Entries;
namespace notifications {
namespace {
const char kGuid[] = …;
const char kNonExistentGuid[] = …;
const char16_t kTitle[] = …;
const char kSmallIconUuid[] = …;
const char kLargeIconUuid[] = …;
NotificationEntry CreateNotificationEntry(SchedulerClientType type) { … }
void VerifyNotificationEntry(const NotificationEntry* entry,
const NotificationEntry* expected) { … }
IconStore::IconTypeBundleMap CreateIcons() { … }
class MockNotificationStore : public CollectionStore<NotificationEntry> { … };
class MockIconStore : public IconStore { … };
class ScheduledNotificationManagerTest : public testing::Test { … };
TEST_F(ScheduledNotificationManagerTest, NotificationDbInitFailed) { … }
TEST_F(ScheduledNotificationManagerTest, IconDbInitFailed) { … }
TEST_F(ScheduledNotificationManagerTest, IconDbInitAndLoadKeys) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleNotification) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleInvalidNotification) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleNotificationDuplicateGuid) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleNotificationEmptyGuid) { … }
TEST_F(ScheduledNotificationManagerTest, DisplayNotification) { … }
TEST_F(ScheduledNotificationManagerTest, DisplayNotificationWithoutEntry) { … }
TEST_F(ScheduledNotificationManagerTest, GetAllNotifications) { … }
TEST_F(ScheduledNotificationManagerTest, GetNotifications) { … }
TEST_F(ScheduledNotificationManagerTest, DeleteNotifications) { … }
TEST_F(ScheduledNotificationManagerTest, PruneNotifications) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleNotificationWithIcons) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleNotificationWithIconsFailed) { … }
TEST_F(ScheduledNotificationManagerTest, ScheduleAddNotificationFailed) { … }
TEST_F(ScheduledNotificationManagerTest, DisplayNotificationWithIcons) { … }
TEST_F(ScheduledNotificationManagerTest, DisplayNotificationWithIconsFailed) { … }
}
}