1 // 2 // Copyright (C) 2014 The Android Open Source Project 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 // 16 17 #ifndef UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_ 18 #define UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_ 19 20 #include "update_engine/update_manager/fake_variable.h" 21 #include "update_engine/update_manager/shill_provider.h" 22 23 namespace chromeos_update_manager { 24 25 // Fake implementation of the ShillProvider base class. 26 class FakeShillProvider : public ShillProvider { 27 public: FakeShillProvider()28 FakeShillProvider() {} 29 var_is_connected()30 FakeVariable<bool>* var_is_connected() override { return &var_is_connected_; } 31 var_conn_type()32 FakeVariable<chromeos_update_engine::ConnectionType>* var_conn_type() 33 override { 34 return &var_conn_type_; 35 } 36 37 FakeVariable<chromeos_update_engine::ConnectionTethering>* var_conn_tethering()38 var_conn_tethering() override { 39 return &var_conn_tethering_; 40 } 41 var_conn_last_changed()42 FakeVariable<base::Time>* var_conn_last_changed() override { 43 return &var_conn_last_changed_; 44 } 45 46 private: 47 FakeVariable<bool> var_is_connected_{"is_connected", kVariableModePoll}; 48 FakeVariable<chromeos_update_engine::ConnectionType> var_conn_type_{ 49 "conn_type", kVariableModePoll}; 50 FakeVariable<chromeos_update_engine::ConnectionTethering> var_conn_tethering_{ 51 "conn_tethering", kVariableModePoll}; 52 FakeVariable<base::Time> var_conn_last_changed_{"conn_last_changed", 53 kVariableModePoll}; 54 55 DISALLOW_COPY_AND_ASSIGN(FakeShillProvider); 56 }; 57 58 } // namespace chromeos_update_manager 59 60 #endif // UPDATE_ENGINE_UPDATE_MANAGER_FAKE_SHILL_PROVIDER_H_ 61