Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6329)

Unified Diff: chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm

Issue 2799343003: Add support for native extension notifications (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm
diff --git a/chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm b/chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm
index ee12b3dc48902be8ef25422886ad2979cf28434a..3bfb753eb21edce83f2244516b2cf00721093ea5 100644
--- a/chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm
+++ b/chrome/browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm
@@ -115,6 +115,53 @@ TEST(NotificationBuilderMacTest, TestNotificationTwoButtons) {
EXPECT_EQ("Settings", base::SysNSStringToUTF8([buttons objectAtIndex:2]));
}
+TEST(NotificationBuilderMacTest, TestNotificationExtensionNoButtons) {
+ base::scoped_nsobject<NotificationBuilder> builder(
+ [[NotificationBuilder alloc] initWithCloseLabel:@"Close"
+ optionsLabel:@"Options"
+ settingsLabel:@"Settings"]);
+ [builder setTitle:@"Title"];
+ [builder setSubTitle:@"https://www.miguel.com"];
+ [builder setContextMessage:@"SubTitle"];
+ [builder setNotificationId:@"notificationId"];
+ [builder setProfileId:@"profileId"];
+ [builder setIncognito:false];
+ [builder
+ setNotificationType:[NSNumber
+ numberWithInt:NotificationCommon::EXTENSION]];
+
+ NSUserNotification* notification = [builder buildUserNotification];
+
+ EXPECT_FALSE(notification.hasActionButton);
+ EXPECT_EQ("Close", base::SysNSStringToUTF8([notification otherButtonTitle]));
+}
+
+TEST(NotificationBuilderMacTest, TestNotificationExtensionButtons) {
+ base::scoped_nsobject<NotificationBuilder> builder(
+ [[NotificationBuilder alloc] initWithCloseLabel:@"Close"
+ optionsLabel:@"Options"
+ settingsLabel:@"Settings"]);
+ [builder setTitle:@"Title"];
+ [builder setSubTitle:@"https://www.miguel.com"];
+ [builder setContextMessage:@"SubTitle"];
+ [builder setButtons:@"Button1" secondaryButton:@"Button2"];
+ [builder setNotificationId:@"notificationId"];
+ [builder setProfileId:@"profileId"];
+ [builder setIncognito:false];
+ [builder
+ setNotificationType:[NSNumber
+ numberWithInt:NotificationCommon::EXTENSION]];
+
+ NSUserNotification* notification = [builder buildUserNotification];
+
+ NSArray* buttons = [notification valueForKey:@"_alternateActionButtonTitles"];
+
+ // No settings button
+ ASSERT_EQ(2u, buttons.count);
+ EXPECT_EQ("Button1", base::SysNSStringToUTF8([buttons objectAtIndex:0]));
+ EXPECT_EQ("Button2", base::SysNSStringToUTF8([buttons objectAtIndex:1]));
+}
+
TEST(NotificationBuilderMacTest, TestUserInfo) {
base::scoped_nsobject<NotificationBuilder> builder(
[[NotificationBuilder alloc] initWithCloseLabel:@"Close"

Powered by Google App Engine
This is Rietveld 408576698