| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "chrome/browser/extensions/api/dial/dial_device_data.h" | |
| 6 #include "chrome/common/extensions/api/dial.h" | |
| 7 #include "testing/gtest/include/gtest/gtest.h" | |
| 8 | |
| 9 namespace extensions { | |
| 10 namespace api { | |
| 11 namespace dial { | |
| 12 | |
| 13 namespace { | |
| 14 | |
| 15 // Asserts equality between the two objects. | |
| 16 void ExpectEqual(const DialDeviceData& first, const DialDeviceData& second) { | |
| 17 EXPECT_EQ(first.device_id(), second.device_id()); | |
| 18 EXPECT_EQ(first.label(), second.label()); | |
| 19 EXPECT_EQ(first.device_description_url(), second.device_description_url()); | |
| 20 EXPECT_EQ(first.response_time(), second.response_time()); | |
| 21 EXPECT_EQ(first.max_age(), second.max_age()); | |
| 22 EXPECT_EQ(first.config_id(), second.config_id()); | |
| 23 } | |
| 24 | |
| 25 } // namespace | |
| 26 | |
| 27 TEST(DialDeviceDataTest, TestFillDialDevice) { | |
| 28 api::dial::DialDevice api_device; | |
| 29 | |
| 30 DialDeviceData device; | |
| 31 device.set_device_id("device"); | |
| 32 device.set_label("label"); | |
| 33 device.set_device_description_url(GURL("http://127.0.0.1/dd.xml")); | |
| 34 device.set_config_id(1); | |
| 35 | |
| 36 device.FillDialDevice(&api_device); | |
| 37 EXPECT_EQ(api_device.device_label, device.label()); | |
| 38 EXPECT_EQ(api_device.device_description_url, | |
| 39 device.device_description_url().spec()); | |
| 40 EXPECT_EQ(*(api_device.config_id), device.config_id()); | |
| 41 } | |
| 42 | |
| 43 TEST(DialDeviceDataTest, TestUpdateFrom) { | |
| 44 DialDeviceData original; | |
| 45 original.set_device_id("device_a"); | |
| 46 original.set_label("label_a"); | |
| 47 original.set_device_description_url(GURL("http://127.0.0.1/dd-a.xml")); | |
| 48 original.set_response_time(base::Time::FromInternalValue(1000)); | |
| 49 original.set_max_age(100); | |
| 50 original.set_config_id(1); | |
| 51 | |
| 52 DialDeviceData new_data; | |
| 53 new_data.set_device_id("device_a"); | |
| 54 new_data.set_device_description_url(GURL("http://127.0.0.1/dd-a.xml")); | |
| 55 new_data.set_response_time(base::Time::FromInternalValue(1000)); | |
| 56 new_data.set_max_age(100); | |
| 57 new_data.set_config_id(1); | |
| 58 | |
| 59 DialDeviceData original_1(original); | |
| 60 EXPECT_FALSE(original_1.UpdateFrom(new_data)); | |
| 61 ExpectEqual(original_1, original); | |
| 62 | |
| 63 DialDeviceData original_2(original); | |
| 64 new_data.set_max_age(200); | |
| 65 new_data.set_response_time(base::Time::FromInternalValue(2000)); | |
| 66 EXPECT_FALSE(original_2.UpdateFrom(new_data)); | |
| 67 | |
| 68 EXPECT_EQ("device_a", original_2.device_id()); | |
| 69 EXPECT_EQ(GURL("http://127.0.0.1/dd-a.xml"), | |
| 70 original_2.device_description_url()); | |
| 71 EXPECT_EQ("label_a", original_2.label()); | |
| 72 EXPECT_EQ(200, original_2.max_age()); | |
| 73 EXPECT_EQ(base::Time::FromInternalValue(2000), original_2.response_time()); | |
| 74 EXPECT_EQ(1, original_2.config_id()); | |
| 75 | |
| 76 DialDeviceData original_3(original); | |
| 77 new_data.set_device_description_url(GURL("http://127.0.0.2/dd-b.xml")); | |
| 78 new_data.set_config_id(2); | |
| 79 EXPECT_TRUE(original_3.UpdateFrom(new_data)); | |
| 80 | |
| 81 EXPECT_EQ("device_a", original_3.device_id()); | |
| 82 EXPECT_EQ(GURL("http://127.0.0.2/dd-b.xml"), | |
| 83 original_3.device_description_url()); | |
| 84 EXPECT_EQ("label_a", original_3.label()); | |
| 85 EXPECT_EQ(200, original_3.max_age()); | |
| 86 EXPECT_EQ(base::Time::FromInternalValue(2000), original_3.response_time()); | |
| 87 EXPECT_EQ(2, original_3.config_id()); | |
| 88 } | |
| 89 | |
| 90 TEST(DialDeviceDataTest, TestIsDeviceDescriptionUrl) { | |
| 91 EXPECT_TRUE(DialDeviceData::IsDeviceDescriptionUrl( | |
| 92 GURL("http://some.device.com/dd.xml"))); | |
| 93 EXPECT_TRUE(DialDeviceData::IsDeviceDescriptionUrl( | |
| 94 GURL("https://some.device.com/dd.xml"))); | |
| 95 EXPECT_TRUE(DialDeviceData::IsDeviceDescriptionUrl( | |
| 96 GURL("http://192.168.1.1:1234/dd.xml"))); | |
| 97 EXPECT_TRUE(DialDeviceData::IsDeviceDescriptionUrl( | |
| 98 GURL("https://192.168.1.1:1234/dd.xml"))); | |
| 99 | |
| 100 EXPECT_FALSE(DialDeviceData::IsDeviceDescriptionUrl(GURL())); | |
| 101 EXPECT_FALSE(DialDeviceData::IsDeviceDescriptionUrl(GURL(std::string()))); | |
| 102 EXPECT_FALSE( | |
| 103 DialDeviceData::IsDeviceDescriptionUrl(GURL("file://path/to/file"))); | |
| 104 } | |
| 105 | |
| 106 } // namespace dial | |
| 107 } // namespace api | |
| 108 } // namespace extensions | |
| OLD | NEW |