Chromium Code Reviews| Index: chrome/browser/media/router/issue_unittest.cc |
| diff --git a/chrome/browser/media/router/issue_unittest.cc b/chrome/browser/media/router/issue_unittest.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..9ff6e75981b16a2e5e9038070be03bcdc8ced559 |
| --- /dev/null |
| +++ b/chrome/browser/media/router/issue_unittest.cc |
| @@ -0,0 +1,148 @@ |
| +// Copyright 2015 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 "chrome/browser/media/router/issue.h" |
| +#include "chrome/grit/generated_resources.h" |
| +#include "testing/gmock/include/gmock/gmock.h" |
| +#include "ui/base/l10n/l10n_util.h" |
| + |
| +namespace media_router { |
| + |
| +class IssueUnitTest : public ::testing::Test { |
|
DaleCurtis
2015/04/30 18:18:15
Just use TEST() instead of TEST_F() and you can re
Kevin M
2015/05/01 17:59:18
Done.
|
| + public: |
| + IssueUnitTest() {} |
| + ~IssueUnitTest() override {} |
| + |
| + private: |
| + DISALLOW_COPY_AND_ASSIGN(IssueUnitTest); |
| +}; |
| + |
| +// Checks static IssueAction factory method. |
| +TEST_F(IssueUnitTest, IssueActionConstructor) { |
| + // Pre-defined "Ok" issue action. |
| + IssueAction action1(IssueAction::OK); |
| + EXPECT_EQ(IssueAction::OK, action1.type()); |
| + |
| + // Pre-defined "Cancel" issue action. |
| + IssueAction action2(IssueAction::CANCEL); |
| + EXPECT_EQ(IssueAction::CANCEL, action2.type()); |
| +} |
| + |
| +// Tests custom Issue factory method without any secondary actions. |
| +TEST_F(IssueUnitTest, CustomIssueConstructionWithNoSecondaryActions) { |
| + std::vector<IssueAction> secondary_actions; |
| + std::string title = "title"; |
| + std::string message = "message"; |
| + |
| + Issue issue1(title, message, IssueAction(IssueAction::OK), secondary_actions, |
| + "", Issue::WARNING, false, "http://www.google.com/"); |
| + |
| + EXPECT_EQ(title, issue1.title()); |
| + EXPECT_EQ(message, issue1.message()); |
| + EXPECT_EQ(IssueAction::OK, issue1.default_action().type()); |
| + EXPECT_TRUE(issue1.secondary_actions().empty()); |
| + EXPECT_EQ(Issue::WARNING, issue1.severity()); |
| + EXPECT_EQ("", issue1.route_id()); |
| + EXPECT_TRUE(issue1.IsGlobal()); |
| + EXPECT_FALSE(issue1.IsBlocking()); |
| + EXPECT_EQ("http://www.google.com/", issue1.help_url().spec()); |
| + |
| + Issue issue2(title, message, IssueAction(IssueAction::OK), secondary_actions, |
| + "routeid", Issue::FATAL, true, "http://www.google.com/"); |
| + |
| + EXPECT_EQ(title, issue2.title()); |
| + EXPECT_EQ(message, issue2.message()); |
| + EXPECT_EQ(IssueAction::OK, issue1.default_action().type()); |
| + EXPECT_TRUE(issue2.secondary_actions().empty()); |
| + EXPECT_EQ(Issue::FATAL, issue2.severity()); |
| + EXPECT_EQ("routeid", issue2.route_id()); |
| + EXPECT_FALSE(issue2.IsGlobal()); |
| + EXPECT_TRUE(issue2.IsBlocking()); |
| + EXPECT_EQ("http://www.google.com/", issue1.help_url().spec()); |
| + |
| + Issue issue3(title, "", IssueAction(IssueAction::OK), secondary_actions, |
| + "routeid", Issue::FATAL, true, "http://www.google.com/"); |
| + |
| + EXPECT_EQ(title, issue3.title()); |
| + EXPECT_EQ("", issue3.message()); |
| + EXPECT_EQ(IssueAction::OK, issue1.default_action().type()); |
| + EXPECT_TRUE(issue3.secondary_actions().empty()); |
| + EXPECT_EQ(Issue::FATAL, issue3.severity()); |
| + EXPECT_EQ("routeid", issue3.route_id()); |
| + EXPECT_FALSE(issue3.IsGlobal()); |
| + EXPECT_TRUE(issue3.IsBlocking()); |
| + EXPECT_EQ("http://www.google.com/", issue1.help_url().spec()); |
| +} |
| + |
| +// Tests custom Issue factory method with secondary actions. |
| +TEST_F(IssueUnitTest, CustomIssueConstructionWithSecondaryActions) { |
| + std::vector<IssueAction> secondary_actions; |
| + secondary_actions.push_back(IssueAction(IssueAction::DISMISS)); |
| + secondary_actions.push_back(IssueAction(IssueAction::CANCEL)); |
| + EXPECT_EQ(2u, secondary_actions.size()); |
| + std::string title = "title"; |
| + std::string message = "message"; |
| + |
| + Issue issue1(title, message, IssueAction(IssueAction::OK), secondary_actions, |
| + "", Issue::WARNING, false, ""); |
| + |
| + EXPECT_EQ(title, issue1.title()); |
| + EXPECT_EQ(message, issue1.message()); |
| + EXPECT_EQ(IssueAction::OK, issue1.default_action().type()); |
| + EXPECT_FALSE(issue1.secondary_actions().empty()); |
| + EXPECT_EQ(2u, issue1.secondary_actions().size()); |
| + EXPECT_EQ(Issue::WARNING, issue1.severity()); |
| + EXPECT_EQ("", issue1.route_id()); |
| + EXPECT_TRUE(issue1.IsGlobal()); |
| + EXPECT_FALSE(issue1.IsBlocking()); |
| + |
| + Issue issue2(title, message, IssueAction(IssueAction::OK), secondary_actions, |
| + "routeid", Issue::FATAL, true, ""); |
| + |
| + EXPECT_EQ(title, issue2.title()); |
| + EXPECT_EQ(message, issue2.message()); |
| + EXPECT_EQ(IssueAction::OK, issue2.default_action().type()); |
| + EXPECT_FALSE(issue2.secondary_actions().empty()); |
| + EXPECT_EQ(2u, issue2.secondary_actions().size()); |
| + EXPECT_EQ(Issue::FATAL, issue2.severity()); |
| + EXPECT_EQ("routeid", issue2.route_id()); |
| + EXPECT_FALSE(issue2.IsGlobal()); |
| + EXPECT_TRUE(issue2.IsBlocking()); |
| + |
| + Issue issue3(title, "", IssueAction(IssueAction::OK), secondary_actions, |
| + "routeid", Issue::FATAL, true, ""); |
| + |
| + EXPECT_EQ(title, issue3.title()); |
| + EXPECT_EQ("", issue3.message()); |
| + EXPECT_EQ(IssueAction::OK, issue3.default_action().type()); |
| + EXPECT_FALSE(issue3.secondary_actions().empty()); |
| + EXPECT_EQ(2u, issue3.secondary_actions().size()); |
| + EXPECT_EQ(Issue::FATAL, issue3.severity()); |
| + EXPECT_EQ("routeid", issue3.route_id()); |
| + EXPECT_FALSE(issue3.IsGlobal()); |
| + EXPECT_TRUE(issue3.IsBlocking()); |
| +} |
| + |
| +// Tests == and != method. |
| +TEST_F(IssueUnitTest, Equal) { |
| + std::vector<IssueAction> secondary_actions; |
| + secondary_actions.push_back(IssueAction(IssueAction::DISMISS)); |
| + secondary_actions.push_back(IssueAction(IssueAction::CANCEL)); |
| + |
| + std::vector<IssueAction> secondary_actions2; |
| + secondary_actions2.push_back(IssueAction(IssueAction::DISMISS)); |
| + |
| + std::string title = "title"; |
| + std::string message = "message"; |
| + |
| + Issue issue1(Issue(title, message, IssueAction(IssueAction::OK), |
| + secondary_actions, "", Issue::WARNING, false, "")); |
| + EXPECT_TRUE(issue1.Equals(issue1)); |
| + |
| + Issue issue2(Issue(title, message, IssueAction(IssueAction::OK), |
| + secondary_actions, "", Issue::WARNING, false, "")); |
| + EXPECT_FALSE(issue1.Equals(issue2)); |
| +} |
| + |
| +} // namespace media_router |