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

Side by Side Diff: content/browser/notifications/notification_database_data_unittest.cc

Issue 1054573002: Implement support for notification.vibrate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/strings/utf_string_conversions.h" 5 #include "base/strings/utf_string_conversions.h"
6 #include "content/browser/notifications/notification_database_data.pb.h" 6 #include "content/browser/notifications/notification_database_data.pb.h"
7 #include "content/browser/notifications/notification_database_data_conversions.h " 7 #include "content/browser/notifications/notification_database_data_conversions.h "
8 #include "content/public/browser/notification_database_data.h" 8 #include "content/public/browser/notification_database_data.h"
9 #include "testing/gmock/include/gmock/gmock.h"
9 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
10 11
11 namespace content { 12 namespace content {
12 13
13 const int64_t kNotificationId = 42; 14 const int64_t kNotificationId = 42;
14 const int64_t kServiceWorkerRegistrationId = 9001; 15 const int64_t kServiceWorkerRegistrationId = 9001;
15 16
16 const char kOrigin[] = "https://example.com/"; 17 const char kOrigin[] = "https://example.com/";
17 const char kNotificationTitle[] = "My Notification"; 18 const char kNotificationTitle[] = "My Notification";
18 const char kNotificationLang[] = "nl"; 19 const char kNotificationLang[] = "nl";
19 const char kNotificationBody[] = "Hello, world!"; 20 const char kNotificationBody[] = "Hello, world!";
20 const char kNotificationTag[] = "my_tag"; 21 const char kNotificationTag[] = "my_tag";
21 const char kNotificationIconUrl[] = "https://example.com/icon.png"; 22 const char kNotificationIconUrl[] = "https://example.com/icon.png";
23 const int kNotificationVibrationPattern[] = { 100, 200, 300 };
22 const unsigned char kNotificationData[] = { 0xdf, 0xff, 0x0, 0x0, 0xff, 0xdf }; 24 const unsigned char kNotificationData[] = { 0xdf, 0xff, 0x0, 0x0, 0xff, 0xdf };
23 25
24 TEST(NotificationDatabaseDataTest, SerializeAndDeserializeData) { 26 TEST(NotificationDatabaseDataTest, SerializeAndDeserializeData) {
27 std::vector<int> vibration_pattern(
28 kNotificationVibrationPattern,
29 kNotificationVibrationPattern + arraysize(kNotificationVibrationPattern));
30
25 std::vector<char> developer_data( 31 std::vector<char> developer_data(
26 kNotificationData, kNotificationData + arraysize(kNotificationData)); 32 kNotificationData, kNotificationData + arraysize(kNotificationData));
27 33
28 PlatformNotificationData notification_data; 34 PlatformNotificationData notification_data;
29 notification_data.title = base::ASCIIToUTF16(kNotificationTitle); 35 notification_data.title = base::ASCIIToUTF16(kNotificationTitle);
30 notification_data.direction = 36 notification_data.direction =
31 PlatformNotificationData::NotificationDirectionRightToLeft; 37 PlatformNotificationData::NotificationDirectionRightToLeft;
32 notification_data.lang = kNotificationLang; 38 notification_data.lang = kNotificationLang;
33 notification_data.body = base::ASCIIToUTF16(kNotificationBody); 39 notification_data.body = base::ASCIIToUTF16(kNotificationBody);
34 notification_data.tag = kNotificationTag; 40 notification_data.tag = kNotificationTag;
35 notification_data.icon = GURL(kNotificationIconUrl); 41 notification_data.icon = GURL(kNotificationIconUrl);
42 notification_data.vibration_pattern = vibration_pattern;
36 notification_data.silent = true; 43 notification_data.silent = true;
37 notification_data.data = developer_data; 44 notification_data.data = developer_data;
38 45
39 NotificationDatabaseData database_data; 46 NotificationDatabaseData database_data;
40 database_data.notification_id = kNotificationId; 47 database_data.notification_id = kNotificationId;
41 database_data.origin = GURL(kOrigin); 48 database_data.origin = GURL(kOrigin);
42 database_data.service_worker_registration_id = kServiceWorkerRegistrationId; 49 database_data.service_worker_registration_id = kServiceWorkerRegistrationId;
43 database_data.notification_data = notification_data; 50 database_data.notification_data = notification_data;
44 51
45 std::string serialized_data; 52 std::string serialized_data;
(...skipping 15 matching lines...) Expand all
61 68
62 const PlatformNotificationData& copied_notification_data = 69 const PlatformNotificationData& copied_notification_data =
63 copied_data.notification_data; 70 copied_data.notification_data;
64 71
65 EXPECT_EQ(notification_data.title, copied_notification_data.title); 72 EXPECT_EQ(notification_data.title, copied_notification_data.title);
66 EXPECT_EQ(notification_data.direction, copied_notification_data.direction); 73 EXPECT_EQ(notification_data.direction, copied_notification_data.direction);
67 EXPECT_EQ(notification_data.lang, copied_notification_data.lang); 74 EXPECT_EQ(notification_data.lang, copied_notification_data.lang);
68 EXPECT_EQ(notification_data.body, copied_notification_data.body); 75 EXPECT_EQ(notification_data.body, copied_notification_data.body);
69 EXPECT_EQ(notification_data.tag, copied_notification_data.tag); 76 EXPECT_EQ(notification_data.tag, copied_notification_data.tag);
70 EXPECT_EQ(notification_data.icon, copied_notification_data.icon); 77 EXPECT_EQ(notification_data.icon, copied_notification_data.icon);
78
79 EXPECT_THAT(copied_notification_data.vibration_pattern,
80 testing::ElementsAreArray(kNotificationVibrationPattern));
81
71 EXPECT_EQ(notification_data.silent, copied_notification_data.silent); 82 EXPECT_EQ(notification_data.silent, copied_notification_data.silent);
72 83
73 ASSERT_EQ(developer_data.size(), copied_notification_data.data.size()); 84 ASSERT_EQ(developer_data.size(), copied_notification_data.data.size());
74 for (size_t i = 0; i < developer_data.size(); ++i) 85 for (size_t i = 0; i < developer_data.size(); ++i)
75 EXPECT_EQ(developer_data[i], copied_notification_data.data[i]); 86 EXPECT_EQ(developer_data[i], copied_notification_data.data[i]);
76 } 87 }
77 88
78 } // namespace content 89 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698