OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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/bind.h" | 5 #include "base/bind.h" |
6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
7 #include "base/values.h" | 7 #include "base/values.h" |
8 #include "chrome/browser/chromeos/cros/cros_network_functions.h" | 8 #include "chrome/browser/chromeos/cros/cros_network_functions.h" |
9 #include "chrome/browser/chromeos/cros/gvalue_util.h" | 9 #include "chrome/browser/chromeos/cros/gvalue_util.h" |
10 #include "chrome/browser/chromeos/cros/mock_chromeos_network.h" | 10 #include "chrome/browser/chromeos/cros/mock_chromeos_network.h" |
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
350 property_changed_callback_.Run(path.c_str(), key.c_str(), gvalue.get()); | 350 property_changed_callback_.Run(path.c_str(), key.c_str(), gvalue.get()); |
351 | 351 |
352 // Stop monitoring. | 352 // Stop monitoring. |
353 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 353 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
354 DisconnectNetworkPropertiesMonitor(_)).Times(1); | 354 DisconnectNetworkPropertiesMonitor(_)).Times(1); |
355 delete watcher; | 355 delete watcher; |
356 } | 356 } |
357 | 357 |
358 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosMonitorCellularDataPlan) { | 358 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosMonitorCellularDataPlan) { |
359 MonitorDataPlanCallback callback = | 359 MonitorDataPlanCallback callback = |
360 reinterpret_cast<MonitorDataPlanCallback>(42); // Dummy value. | 360 reinterpret_cast<MonitorDataPlanCallback>(42); // Dummy value. |
satorux1
2012/04/23 17:15:20
casting 42 to a callback object looks scary...
hashimoto
2012/04/24 04:29:46
Done.
| |
361 void* object = reinterpret_cast<void*>(84); // Dummy value. | 361 void* object = reinterpret_cast<void*>(84); // Dummy value. |
362 | 362 |
363 // Start monitoring. | 363 // Start monitoring. |
364 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 364 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
365 MonitorCellularDataPlan(callback, object)).Times(1); | 365 MonitorCellularDataPlan(callback, object)).Times(1); |
366 CrosNetworkWatcher* watcher = CrosMonitorCellularDataPlan(callback, object); | 366 CrosNetworkWatcher* watcher = CrosMonitorCellularDataPlan(callback, object); |
367 | 367 |
368 // Stop monitoring. | 368 // Stop monitoring. |
369 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 369 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
370 DisconnectDataPlanUpdateMonitor(_)).Times(1); | 370 DisconnectDataPlanUpdateMonitor(_)).Times(1); |
(...skipping 12 matching lines...) Expand all Loading... | |
383 .Times(1); | 383 .Times(1); |
384 CrosNetworkWatcher* watcher = CrosMonitorSMS( | 384 CrosNetworkWatcher* watcher = CrosMonitorSMS( |
385 modem_device_path, callback, object); | 385 modem_device_path, callback, object); |
386 | 386 |
387 // Stop monitoring. | 387 // Stop monitoring. |
388 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 388 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
389 DisconnectSMSMonitor(_)).Times(1); | 389 DisconnectSMSMonitor(_)).Times(1); |
390 delete watcher; | 390 delete watcher; |
391 } | 391 } |
392 | 392 |
393 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestNetworkServiceConnect) { | |
394 const std::string service_path = "service path"; | |
395 void* object = reinterpret_cast<void*>(42); // dummy | |
satorux1
2012/04/23 17:15:20
I'm guessing that you are using 42 because you can
hashimoto
2012/04/24 04:29:46
I can pass NULL, but I just want to make sure that
| |
396 EXPECT_CALL(*MockChromeOSNetwork::Get(), | |
397 RequestNetworkServiceConnect(StrEq(service_path), | |
398 &OnNetworkAction, | |
399 object)).Times(1); | |
400 CrosRequestNetworkServiceConnect(service_path, &OnNetworkAction, object); | |
401 } | |
402 | |
393 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestNetworkManagerProperties) { | 403 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestNetworkManagerProperties) { |
394 const std::string key1 = "key1"; | 404 const std::string key1 = "key1"; |
395 const std::string value1 = "value1"; | 405 const std::string value1 = "value1"; |
396 const std::string key2 = "key.2."; | 406 const std::string key2 = "key.2."; |
397 const std::string value2 = "value2"; | 407 const std::string value2 = "value2"; |
398 // Create result value. | 408 // Create result value. |
399 base::DictionaryValue result; | 409 base::DictionaryValue result; |
400 result.SetWithoutPathExpansion(key1, base::Value::CreateStringValue(value1)); | 410 result.SetWithoutPathExpansion(key1, base::Value::CreateStringValue(value1)); |
401 result.SetWithoutPathExpansion(key2, base::Value::CreateStringValue(value2)); | 411 result.SetWithoutPathExpansion(key2, base::Value::CreateStringValue(value2)); |
402 result_ghash_table_.reset( | 412 result_ghash_table_.reset( |
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
589 } | 599 } |
590 | 600 |
591 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestNetworkDeviceEnable) { | 601 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestNetworkDeviceEnable) { |
592 const bool kEnable = true; | 602 const bool kEnable = true; |
593 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 603 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
594 RequestNetworkDeviceEnable(StrEq(flimflam::kTypeWifi), kEnable)) | 604 RequestNetworkDeviceEnable(StrEq(flimflam::kTypeWifi), kEnable)) |
595 .Times(1); | 605 .Times(1); |
596 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kEnable); | 606 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kEnable); |
597 } | 607 } |
598 | 608 |
609 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestRequirePin) { | |
610 const std::string device_path = "/device/path"; | |
611 const std::string pin = "123456"; | |
612 const bool kEnable = true; | |
613 void* object = reinterpret_cast<void*>(42); // dummy | |
614 EXPECT_CALL(*MockChromeOSNetwork::Get(), RequestRequirePin( | |
615 StrEq(device_path), StrEq(pin), kEnable, &OnNetworkAction, object)) | |
616 .Times(1); | |
617 CrosRequestRequirePin(device_path, pin, kEnable, &OnNetworkAction, object); | |
618 } | |
619 | |
620 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestEnterPin) { | |
621 const std::string device_path = "/device/path"; | |
622 const std::string pin = "123456"; | |
623 void* object = reinterpret_cast<void*>(42); // dummy | |
624 EXPECT_CALL(*MockChromeOSNetwork::Get(), RequestEnterPin( | |
625 StrEq(device_path), StrEq(pin), &OnNetworkAction, object)).Times(1); | |
626 CrosRequestEnterPin(device_path, pin, &OnNetworkAction, object); | |
627 } | |
628 | |
629 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestUnblockPin) { | |
630 const std::string device_path = "/device/path"; | |
631 const std::string unblock_code = "987654"; | |
632 const std::string pin = "123456"; | |
633 void* object = reinterpret_cast<void*>(42); // dummy | |
634 EXPECT_CALL(*MockChromeOSNetwork::Get(), RequestUnblockPin( | |
635 StrEq(device_path), StrEq(unblock_code), StrEq(pin), &OnNetworkAction, | |
636 object)).Times(1); | |
637 CrosRequestUnblockPin(device_path, unblock_code, pin, &OnNetworkAction, | |
638 object); | |
639 } | |
640 | |
641 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestChangePin) { | |
642 const std::string device_path = "/device/path"; | |
643 const std::string old_pin = "123456"; | |
644 const std::string new_pin = "234567"; | |
645 void* object = reinterpret_cast<void*>(42); // dummy | |
646 EXPECT_CALL(*MockChromeOSNetwork::Get(), RequestChangePin( | |
647 StrEq(device_path), StrEq(old_pin), StrEq(new_pin), &OnNetworkAction, | |
648 object)).Times(1); | |
649 CrosRequestChangePin(device_path, old_pin, new_pin, &OnNetworkAction, object); | |
650 } | |
651 | |
652 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRequestCellularRegister) { | |
653 const std::string device_path = "/device/path"; | |
654 const std::string network_id = "networkid"; | |
655 void* object = reinterpret_cast<void*>(42); // dummy | |
656 EXPECT_CALL(*MockChromeOSNetwork::Get(), RequestCellularRegister( | |
657 StrEq(device_path), StrEq(network_id), &OnNetworkAction, object)) | |
658 .Times(1); | |
659 CrosRequestCellularRegister(device_path, network_id, &OnNetworkAction, | |
660 object); | |
661 } | |
662 | |
599 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosAddIPConfig) { | 663 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosAddIPConfig) { |
600 const std::string device_path = "/device/path"; | 664 const std::string device_path = "/device/path"; |
601 EXPECT_CALL(*MockChromeOSNetwork::Get(), | 665 EXPECT_CALL(*MockChromeOSNetwork::Get(), |
602 AddIPConfig(StrEq(device_path), IPCONFIG_TYPE_DHCP)).Times(1); | 666 AddIPConfig(StrEq(device_path), IPCONFIG_TYPE_DHCP)).Times(1); |
603 CrosAddIPConfig(device_path, IPCONFIG_TYPE_DHCP); | 667 CrosAddIPConfig(device_path, IPCONFIG_TYPE_DHCP); |
604 } | 668 } |
605 | 669 |
606 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRemoveIPConfig) { | 670 TEST_F(CrosNetworkFunctionsLibcrosTest, CrosRemoveIPConfig) { |
607 IPConfig config = {}; | 671 IPConfig config = {}; |
608 config.path = "/path"; | 672 config.path = "/path"; |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
715 } | 779 } |
716 | 780 |
717 // Handles responses for GetEntry method calls. | 781 // Handles responses for GetEntry method calls. |
718 void OnGetEntry( | 782 void OnGetEntry( |
719 const dbus::ObjectPath& profile_path, | 783 const dbus::ObjectPath& profile_path, |
720 const std::string& entry_path, | 784 const std::string& entry_path, |
721 const FlimflamClientHelper::DictionaryValueCallback& callback) { | 785 const FlimflamClientHelper::DictionaryValueCallback& callback) { |
722 callback.Run(DBUS_METHOD_CALL_SUCCESS, *dictionary_value_result_); | 786 callback.Run(DBUS_METHOD_CALL_SUCCESS, *dictionary_value_result_); |
723 } | 787 } |
724 | 788 |
789 // Mock NetworkActionCallback. | |
790 MOCK_METHOD4(MockNetworkActionCallback, void(void* object, | |
791 const char* path, | |
792 NetworkMethodErrorType error, | |
793 const char* error_message)); | |
794 static void MockNetworkActionCallbackThunk(void* object, | |
795 const char* path, | |
796 NetworkMethodErrorType error, | |
797 const char* error_message) { | |
798 static_cast<CrosNetworkFunctionsTest*>(object)->MockNetworkActionCallback( | |
799 object, path, error, error_message); | |
800 } | |
801 | |
725 protected: | 802 protected: |
726 MockCashewClient* mock_cashew_client_; | 803 MockCashewClient* mock_cashew_client_; |
727 MockFlimflamDeviceClient* mock_device_client_; | 804 MockFlimflamDeviceClient* mock_device_client_; |
728 MockFlimflamIPConfigClient* mock_ipconfig_client_; | 805 MockFlimflamIPConfigClient* mock_ipconfig_client_; |
729 MockFlimflamManagerClient* mock_manager_client_; | 806 MockFlimflamManagerClient* mock_manager_client_; |
730 MockFlimflamProfileClient* mock_profile_client_; | 807 MockFlimflamProfileClient* mock_profile_client_; |
731 MockFlimflamServiceClient* mock_service_client_; | 808 MockFlimflamServiceClient* mock_service_client_; |
732 const base::DictionaryValue* dictionary_value_result_; | 809 const base::DictionaryValue* dictionary_value_result_; |
733 }; | 810 }; |
734 | 811 |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1001 EXPECT_CALL(*mock_manager_client_, | 1078 EXPECT_CALL(*mock_manager_client_, |
1002 EnableTechnology(flimflam::kTypeWifi, _)).Times(1); | 1079 EnableTechnology(flimflam::kTypeWifi, _)).Times(1); |
1003 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kEnable); | 1080 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kEnable); |
1004 | 1081 |
1005 const bool kDisable = false; | 1082 const bool kDisable = false; |
1006 EXPECT_CALL(*mock_manager_client_, | 1083 EXPECT_CALL(*mock_manager_client_, |
1007 DisableTechnology(flimflam::kTypeWifi, _)).Times(1); | 1084 DisableTechnology(flimflam::kTypeWifi, _)).Times(1); |
1008 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kDisable); | 1085 CrosRequestNetworkDeviceEnable(flimflam::kTypeWifi, kDisable); |
1009 } | 1086 } |
1010 | 1087 |
1088 TEST_F(CrosNetworkFunctionsTest, CrosRequestRequirePin) { | |
1089 const std::string device_path = "/device/path"; | |
1090 const std::string pin = "123456"; | |
1091 const bool kRequire = true; | |
1092 void* object = this; | |
1093 | |
1094 // Set expectations. | |
1095 base::Closure callback; | |
1096 EXPECT_CALL(*mock_device_client_, | |
1097 RequirePin(dbus::ObjectPath(device_path), pin, kRequire, _, _)) | |
1098 .WillOnce(SaveArg<3>(&callback)); | |
1099 EXPECT_CALL(*this, MockNetworkActionCallback( | |
1100 object, StrEq(device_path), NETWORK_METHOD_ERROR_NONE, _)).Times(1); | |
1101 CrosRequestRequirePin(device_path, pin, kRequire, | |
1102 &MockNetworkActionCallbackThunk, this); | |
1103 // Run saved callback. | |
1104 callback.Run(); | |
1105 } | |
1106 | |
1107 TEST_F(CrosNetworkFunctionsTest, CrosRequestEnterPin) { | |
1108 const std::string device_path = "/device/path"; | |
1109 const std::string pin = "123456"; | |
1110 void* object = this; | |
1111 | |
1112 // Set expectations. | |
1113 base::Closure callback; | |
1114 EXPECT_CALL(*mock_device_client_, | |
1115 EnterPin(dbus::ObjectPath(device_path), pin, _, _)) | |
1116 .WillOnce(SaveArg<2>(&callback)); | |
1117 EXPECT_CALL(*this, MockNetworkActionCallback( | |
1118 object, StrEq(device_path), NETWORK_METHOD_ERROR_NONE, _)).Times(1); | |
1119 CrosRequestEnterPin(device_path, pin, &MockNetworkActionCallbackThunk, this); | |
1120 // Run saved callback. | |
1121 callback.Run(); | |
1122 } | |
1123 | |
1124 TEST_F(CrosNetworkFunctionsTest, CrosRequestUnblockPin) { | |
1125 const std::string device_path = "/device/path"; | |
1126 const std::string unblock_code = "987654"; | |
1127 const std::string pin = "123456"; | |
1128 void* object = this; | |
1129 | |
1130 // Set expectations. | |
1131 base::Closure callback; | |
1132 EXPECT_CALL( | |
1133 *mock_device_client_, | |
1134 UnblockPin(dbus::ObjectPath(device_path), unblock_code, pin, _, _)) | |
1135 .WillOnce(SaveArg<3>(&callback)); | |
1136 EXPECT_CALL(*this, MockNetworkActionCallback( | |
1137 object, StrEq(device_path), NETWORK_METHOD_ERROR_NONE, _)).Times(1); | |
1138 CrosRequestUnblockPin(device_path, unblock_code, pin, | |
1139 &MockNetworkActionCallbackThunk, object); | |
1140 // Run saved callback. | |
1141 callback.Run(); | |
1142 } | |
1143 | |
1144 TEST_F(CrosNetworkFunctionsTest, CrosRequestChangePin) { | |
1145 const std::string device_path = "/device/path"; | |
1146 const std::string old_pin = "123456"; | |
1147 const std::string new_pin = "234567"; | |
1148 void* object = this; | |
1149 | |
1150 // Set expectations. | |
1151 base::Closure callback; | |
1152 EXPECT_CALL(*mock_device_client_, | |
1153 ChangePin(dbus::ObjectPath(device_path), old_pin, new_pin, _, _)) | |
1154 .WillOnce(SaveArg<3>(&callback)); | |
1155 EXPECT_CALL(*this, MockNetworkActionCallback( | |
1156 object, StrEq(device_path), NETWORK_METHOD_ERROR_NONE, _)).Times(1); | |
1157 CrosRequestChangePin(device_path, old_pin, new_pin, | |
1158 &MockNetworkActionCallbackThunk, object); | |
1159 // Run saved callback. | |
1160 callback.Run(); | |
1161 } | |
1162 | |
1163 TEST_F(CrosNetworkFunctionsTest, CrosRequestCellularRegister) { | |
1164 const std::string device_path = "/device/path"; | |
1165 const std::string network_id = "networkid"; | |
1166 void* object = this; | |
1167 | |
1168 // Set expectations. | |
1169 base::Closure callback; | |
1170 EXPECT_CALL(*mock_device_client_, | |
1171 Register(dbus::ObjectPath(device_path), network_id, _, _)) | |
1172 .WillOnce(SaveArg<2>(&callback)); | |
1173 EXPECT_CALL(*this, MockNetworkActionCallback( | |
1174 object, StrEq(device_path), NETWORK_METHOD_ERROR_NONE, _)).Times(1); | |
1175 CrosRequestCellularRegister(device_path, network_id, | |
1176 &MockNetworkActionCallbackThunk, object); | |
1177 // Run saved callback. | |
1178 callback.Run(); | |
1179 } | |
1180 | |
1011 TEST_F(CrosNetworkFunctionsTest, CrosAddIPConfig) { | 1181 TEST_F(CrosNetworkFunctionsTest, CrosAddIPConfig) { |
1012 const std::string device_path = "/device/path"; | 1182 const std::string device_path = "/device/path"; |
1013 const dbus::ObjectPath result_path("/result/path"); | 1183 const dbus::ObjectPath result_path("/result/path"); |
1014 EXPECT_CALL(*mock_device_client_, | 1184 EXPECT_CALL(*mock_device_client_, |
1015 CallAddIPConfigAndBlock(dbus::ObjectPath(device_path), | 1185 CallAddIPConfigAndBlock(dbus::ObjectPath(device_path), |
1016 flimflam::kTypeDHCP)) | 1186 flimflam::kTypeDHCP)) |
1017 .WillOnce(Return(result_path)); | 1187 .WillOnce(Return(result_path)); |
1018 EXPECT_TRUE(CrosAddIPConfig(device_path, IPCONFIG_TYPE_DHCP)); | 1188 EXPECT_TRUE(CrosAddIPConfig(device_path, IPCONFIG_TYPE_DHCP)); |
1019 } | 1189 } |
1020 | 1190 |
(...skipping 12 matching lines...) Expand all Loading... | |
1033 const std::string string2 = "string2"; | 1203 const std::string string2 = "string2"; |
1034 base::DictionaryValue value; | 1204 base::DictionaryValue value; |
1035 value.SetString(key1, string1); | 1205 value.SetString(key1, string1); |
1036 value.SetString(key2, string2); | 1206 value.SetString(key2, string2); |
1037 EXPECT_CALL(*mock_manager_client_, ConfigureService(IsEqualTo(&value), _)) | 1207 EXPECT_CALL(*mock_manager_client_, ConfigureService(IsEqualTo(&value), _)) |
1038 .Times(1); | 1208 .Times(1); |
1039 CrosConfigureService(value); | 1209 CrosConfigureService(value); |
1040 } | 1210 } |
1041 | 1211 |
1042 } // namespace chromeos | 1212 } // namespace chromeos |
OLD | NEW |