1 /* 2 * Copyright (c) 2021, 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 CPP_WATCHDOG_SERVER_TESTS_MOCKDATAPROCESSOR_H_ 18 #define CPP_WATCHDOG_SERVER_TESTS_MOCKDATAPROCESSOR_H_ 19 20 #include "WatchdogPerfService.h" 21 22 #include <gmock/gmock.h> 23 24 namespace android { 25 namespace automotive { 26 namespace watchdog { 27 28 class MockDataProcessor : virtual public DataProcessorInterface { 29 public: MockDataProcessor()30 MockDataProcessor() { 31 EXPECT_CALL(*this, name()).WillRepeatedly(::testing::Return("MockedDataProcessor")); 32 } 33 MOCK_METHOD(std::string, name, (), (const, override)); 34 MOCK_METHOD(android::base::Result<void>, init, (), (override)); 35 MOCK_METHOD(void, terminate, (), (override)); 36 MOCK_METHOD(android::base::Result<void>, onSystemStartup, (), (override)); 37 MOCK_METHOD(void, onCarWatchdogServiceRegistered, (), (override)); 38 MOCK_METHOD(android::base::Result<void>, onBoottimeCollection, 39 (time_point_millis, const wp<UidStatsCollectorInterface>&, 40 const wp<ProcStatCollectorInterface>&, 41 aidl::android::automotive::watchdog::internal::ResourceStats*), 42 (override)); 43 MOCK_METHOD(android::base::Result<void>, onWakeUpCollection, 44 (time_point_millis, const wp<UidStatsCollectorInterface>&, 45 const wp<ProcStatCollectorInterface>&), 46 (override)); 47 MOCK_METHOD(android::base::Result<void>, onPeriodicCollection, 48 (time_point_millis, SystemState, const wp<UidStatsCollectorInterface>&, 49 const wp<ProcStatCollectorInterface>&, 50 aidl::android::automotive::watchdog::internal::ResourceStats*), 51 (override)); 52 MOCK_METHOD(android::base::Result<void>, onUserSwitchCollection, 53 (time_point_millis, userid_t, userid_t, const wp<UidStatsCollectorInterface>&, 54 const wp<ProcStatCollectorInterface>&), 55 (override)); 56 MOCK_METHOD(android::base::Result<void>, onCustomCollection, 57 (time_point_millis, SystemState, const std::unordered_set<std::string>&, 58 const wp<UidStatsCollectorInterface>&, const wp<ProcStatCollectorInterface>&, 59 aidl::android::automotive::watchdog::internal::ResourceStats*), 60 (override)); 61 MOCK_METHOD(android::base::Result<void>, onPeriodicMonitor, 62 (time_t, const android::wp<ProcDiskStatsCollectorInterface>&, 63 const std::function<void()>&), 64 (override)); 65 MOCK_METHOD(android::base::Result<void>, onDump, (int), (const, override)); 66 MOCK_METHOD(android::base::Result<void>, onDumpProto, 67 (const CollectionIntervals&, android::util::ProtoOutputStream&), (const, override)); 68 MOCK_METHOD(android::base::Result<void>, onCustomCollectionDump, (int), (override)); 69 }; 70 71 } // namespace watchdog 72 } // namespace automotive 73 } // namespace android 74 75 #endif // CPP_WATCHDOG_SERVER_TESTS_MOCKDATAPROCESSOR_H_ 76