1c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//
2c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// Copyright (C) 2012 The Android Open Source Project
3c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//
4c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// Licensed under the Apache License, Version 2.0 (the "License");
5c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// you may not use this file except in compliance with the License.
6c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// You may obtain a copy of the License at
7c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//
8c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//      http://www.apache.org/licenses/LICENSE-2.0
9c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//
10c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// Unless required by applicable law or agreed to in writing, software
11c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// distributed under the License is distributed on an "AS IS" BASIS,
12c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// See the License for the specific language governing permissions and
14c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu// limitations under the License.
15c0beca55d290fe0b1c96d78cbbcf94b05c23f5a5Peter Qiu//
16975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
17c54afe521739065a5d77e7c049acdb5e603f0592Ben Chan#ifndef SHILL_CELLULAR_MOCK_MODEM_GSM_CARD_PROXY_H_
18c54afe521739065a5d77e7c049acdb5e603f0592Ben Chan#define SHILL_CELLULAR_MOCK_MODEM_GSM_CARD_PROXY_H_
19975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
20ed2c28c6e3c0bc2f9d8832fee083868304178f08Hristo Stefanov#include <string>
21ed2c28c6e3c0bc2f9d8832fee083868304178f08Hristo Stefanov
22cc67c52a2c00f90e877971d552208dd99825d84eBen Chan#include <base/macros.h>
23975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov#include <gmock/gmock.h>
24975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
25c54afe521739065a5d77e7c049acdb5e603f0592Ben Chan#include "shill/cellular/modem_gsm_card_proxy_interface.h"
26975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
27975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkovnamespace shill {
28975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
29975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkovclass MockModemGSMCardProxy : public ModemGSMCardProxyInterface {
30975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov public:
31975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov  MockModemGSMCardProxy();
325ea763b83299b5fad76a87183fb39a74c2d3c61dBen Chan  ~MockModemGSMCardProxy() override;
33975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
342f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD3(GetIMEI, void(Error* error,
352f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                             const GSMIdentifierCallback& callback,
369a24553461df7036755060423f90804011612249Eric Shienbrood                             int timeout));
372f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD3(GetIMSI, void(Error* error,
382f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                             const GSMIdentifierCallback& callback,
399a24553461df7036755060423f90804011612249Eric Shienbrood                             int timeout));
402f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD3(GetSPN, void(Error* error,
412f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                            const GSMIdentifierCallback& callback,
429a24553461df7036755060423f90804011612249Eric Shienbrood                            int timeout));
432f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD3(GetMSISDN, void(Error* error,
442f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                               const GSMIdentifierCallback& callback,
459a24553461df7036755060423f90804011612249Eric Shienbrood                               int timeout));
469a24553461df7036755060423f90804011612249Eric Shienbrood
472f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD5(EnablePIN, void(const std::string& pin, bool enabled,
482f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                               Error* error, const ResultCallback& callback,
499a24553461df7036755060423f90804011612249Eric Shienbrood                               int timeout));
502f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD4(SendPIN, void(const std::string& pin,
512f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                             Error* error, const ResultCallback& callback,
529a24553461df7036755060423f90804011612249Eric Shienbrood                             int timeout));
532f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD5(SendPUK, void(const std::string& puk, const std::string& pin,
542f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                             Error* error, const ResultCallback& callback,
559a24553461df7036755060423f90804011612249Eric Shienbrood                             int timeout));
562f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart  MOCK_METHOD5(ChangePIN, void(const std::string& old_pin,
572f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                               const std::string& new_pin,
582f6c78991e37f5fa71f2ba4d1669be73f0a6dfd4Paul Stewart                               Error* error, const ResultCallback& callback,
599a24553461df7036755060423f90804011612249Eric Shienbrood                               int timeout));
607fab89734d88724a288e96a9996b15548c5294c7Ben Chan  MOCK_METHOD0(EnabledFacilityLocks, uint32_t());
61e42e101ca1e3938ee7c7973a0615154d279c688eDarin Petkov
62975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov private:
63975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov  DISALLOW_COPY_AND_ASSIGN(MockModemGSMCardProxy);
64975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov};
65975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
66975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov}  // namespace shill
67975b5e7f8eae3a22b40f2218ce6f089f1e660d00Darin Petkov
68c54afe521739065a5d77e7c049acdb5e603f0592Ben Chan#endif  // SHILL_CELLULAR_MOCK_MODEM_GSM_CARD_PROXY_H_
69