12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- // Copyright 2022 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #include "components/browsing_topics/topic_and_domains.h"
- #include "testing/gtest/include/gtest/gtest.h"
- namespace browsing_topics {
- class TopicAndDomainsTest : public testing::Test {};
- TEST_F(TopicAndDomainsTest, FromEmptyDictionaryValue) {
- TopicAndDomains read_topic_and_domains =
- TopicAndDomains::FromDictValue(base::Value::Dict());
- EXPECT_FALSE(read_topic_and_domains.IsValid());
- EXPECT_EQ(read_topic_and_domains.topic(), Topic(0));
- EXPECT_TRUE(read_topic_and_domains.hashed_domains().empty());
- }
- TEST_F(TopicAndDomainsTest, EmptyTopicAndDomains_ToAndFromDictValue) {
- TopicAndDomains topic_and_domains;
- base::Value::Dict dict_value = topic_and_domains.ToDictValue();
- TopicAndDomains read_topic_and_domains =
- TopicAndDomains::FromDictValue(dict_value);
- EXPECT_FALSE(read_topic_and_domains.IsValid());
- EXPECT_EQ(read_topic_and_domains.topic(), Topic(0));
- EXPECT_TRUE(read_topic_and_domains.hashed_domains().empty());
- }
- TEST_F(TopicAndDomainsTest, PopulatedTopicAndDomains_ToAndFromValue) {
- TopicAndDomains topic_and_domains(
- Topic(2),
- /*hashed_domains=*/{HashedDomain(123), HashedDomain(456)});
- base::Value::Dict dict_value = topic_and_domains.ToDictValue();
- TopicAndDomains read_topic_and_domains =
- TopicAndDomains::FromDictValue(dict_value);
- EXPECT_TRUE(read_topic_and_domains.IsValid());
- EXPECT_EQ(read_topic_and_domains.topic(), Topic(2));
- EXPECT_EQ(read_topic_and_domains.hashed_domains(),
- std::set({HashedDomain(123), HashedDomain(456)}));
- }
- TEST_F(TopicAndDomainsTest, ClearDomain) {
- TopicAndDomains topic_and_domains(
- Topic(2),
- /*hashed_domains=*/{HashedDomain(123), HashedDomain(456)});
- topic_and_domains.ClearDomain(HashedDomain(123));
- EXPECT_EQ(topic_and_domains.topic(), Topic(2));
- EXPECT_EQ(topic_and_domains.hashed_domains().size(), 1u);
- EXPECT_EQ(*topic_and_domains.hashed_domains().begin(), HashedDomain(456));
- }
- } // namespace browsing_topics
|