1*635a8641SAndroid Build Coastguard Worker // This file was GENERATED by command: 2*635a8641SAndroid Build Coastguard Worker // pump.py mock_callback.h.pump 3*635a8641SAndroid Build Coastguard Worker // DO NOT EDIT BY HAND!!! 4*635a8641SAndroid Build Coastguard Worker 5*635a8641SAndroid Build Coastguard Worker // Copyright 2017 The Chromium Authors. All rights reserved. 6*635a8641SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 7*635a8641SAndroid Build Coastguard Worker // found in the LICENSE file. 8*635a8641SAndroid Build Coastguard Worker 9*635a8641SAndroid Build Coastguard Worker // Analogous to GMock's built-in MockFunction, but for base::Callback instead of 10*635a8641SAndroid Build Coastguard Worker // std::function. It takes the full callback type as a parameter, so that it can 11*635a8641SAndroid Build Coastguard Worker // support both OnceCallback and RepeatingCallback. 12*635a8641SAndroid Build Coastguard Worker // 13*635a8641SAndroid Build Coastguard Worker // Use: 14*635a8641SAndroid Build Coastguard Worker // using FooCallback = base::Callback<int(std::string)>; 15*635a8641SAndroid Build Coastguard Worker // 16*635a8641SAndroid Build Coastguard Worker // TEST(FooTest, RunsCallbackWithBarArgument) { 17*635a8641SAndroid Build Coastguard Worker // base::MockCallback<FooCallback> callback; 18*635a8641SAndroid Build Coastguard Worker // EXPECT_CALL(callback, Run("bar")).WillOnce(Return(1)); 19*635a8641SAndroid Build Coastguard Worker // Foo(callback.Get()); 20*635a8641SAndroid Build Coastguard Worker // } 21*635a8641SAndroid Build Coastguard Worker // 22*635a8641SAndroid Build Coastguard Worker // Can be used with StrictMock and NiceMock. Caller must ensure that it outlives 23*635a8641SAndroid Build Coastguard Worker // any base::Callback obtained from it. 24*635a8641SAndroid Build Coastguard Worker 25*635a8641SAndroid Build Coastguard Worker #ifndef BASE_TEST_MOCK_CALLBACK_H_ 26*635a8641SAndroid Build Coastguard Worker #define BASE_TEST_MOCK_CALLBACK_H_ 27*635a8641SAndroid Build Coastguard Worker 28*635a8641SAndroid Build Coastguard Worker #include "base/bind.h" 29*635a8641SAndroid Build Coastguard Worker #include "base/callback.h" 30*635a8641SAndroid Build Coastguard Worker #include "base/macros.h" 31*635a8641SAndroid Build Coastguard Worker #include "testing/gmock/include/gmock/gmock.h" 32*635a8641SAndroid Build Coastguard Worker 33*635a8641SAndroid Build Coastguard Worker namespace base { 34*635a8641SAndroid Build Coastguard Worker 35*635a8641SAndroid Build Coastguard Worker // clang-format off 36*635a8641SAndroid Build Coastguard Worker 37*635a8641SAndroid Build Coastguard Worker template <typename F> 38*635a8641SAndroid Build Coastguard Worker class MockCallback; 39*635a8641SAndroid Build Coastguard Worker 40*635a8641SAndroid Build Coastguard Worker template <typename R> 41*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R()>> { 42*635a8641SAndroid Build Coastguard Worker public: 43*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 44*635a8641SAndroid Build Coastguard Worker MOCK_METHOD0_T(Run, R()); 45*635a8641SAndroid Build Coastguard Worker Get()46*635a8641SAndroid Build Coastguard Worker Callback<R()> Get() { 47*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 48*635a8641SAndroid Build Coastguard Worker } 49*635a8641SAndroid Build Coastguard Worker 50*635a8641SAndroid Build Coastguard Worker private: 51*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 52*635a8641SAndroid Build Coastguard Worker }; 53*635a8641SAndroid Build Coastguard Worker 54*635a8641SAndroid Build Coastguard Worker template <typename R> 55*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R()>> { 56*635a8641SAndroid Build Coastguard Worker public: 57*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 58*635a8641SAndroid Build Coastguard Worker MOCK_METHOD0_T(Run, R()); 59*635a8641SAndroid Build Coastguard Worker Get()60*635a8641SAndroid Build Coastguard Worker OnceCallback<R()> Get() { 61*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 62*635a8641SAndroid Build Coastguard Worker } 63*635a8641SAndroid Build Coastguard Worker 64*635a8641SAndroid Build Coastguard Worker private: 65*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 66*635a8641SAndroid Build Coastguard Worker }; 67*635a8641SAndroid Build Coastguard Worker 68*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1> 69*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1)>> { 70*635a8641SAndroid Build Coastguard Worker public: 71*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 72*635a8641SAndroid Build Coastguard Worker MOCK_METHOD1_T(Run, R(A1)); 73*635a8641SAndroid Build Coastguard Worker Get()74*635a8641SAndroid Build Coastguard Worker Callback<R(A1)> Get() { 75*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 76*635a8641SAndroid Build Coastguard Worker } 77*635a8641SAndroid Build Coastguard Worker 78*635a8641SAndroid Build Coastguard Worker private: 79*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 80*635a8641SAndroid Build Coastguard Worker }; 81*635a8641SAndroid Build Coastguard Worker 82*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1> 83*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1)>> { 84*635a8641SAndroid Build Coastguard Worker public: 85*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 86*635a8641SAndroid Build Coastguard Worker MOCK_METHOD1_T(Run, R(A1)); 87*635a8641SAndroid Build Coastguard Worker Get()88*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1)> Get() { 89*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 90*635a8641SAndroid Build Coastguard Worker } 91*635a8641SAndroid Build Coastguard Worker 92*635a8641SAndroid Build Coastguard Worker private: 93*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 94*635a8641SAndroid Build Coastguard Worker }; 95*635a8641SAndroid Build Coastguard Worker 96*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2> 97*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2)>> { 98*635a8641SAndroid Build Coastguard Worker public: 99*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 100*635a8641SAndroid Build Coastguard Worker MOCK_METHOD2_T(Run, R(A1, A2)); 101*635a8641SAndroid Build Coastguard Worker Get()102*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2)> Get() { 103*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 104*635a8641SAndroid Build Coastguard Worker } 105*635a8641SAndroid Build Coastguard Worker 106*635a8641SAndroid Build Coastguard Worker private: 107*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 108*635a8641SAndroid Build Coastguard Worker }; 109*635a8641SAndroid Build Coastguard Worker 110*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2> 111*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2)>> { 112*635a8641SAndroid Build Coastguard Worker public: 113*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 114*635a8641SAndroid Build Coastguard Worker MOCK_METHOD2_T(Run, R(A1, A2)); 115*635a8641SAndroid Build Coastguard Worker Get()116*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2)> Get() { 117*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 118*635a8641SAndroid Build Coastguard Worker } 119*635a8641SAndroid Build Coastguard Worker 120*635a8641SAndroid Build Coastguard Worker private: 121*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 122*635a8641SAndroid Build Coastguard Worker }; 123*635a8641SAndroid Build Coastguard Worker 124*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3> 125*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3)>> { 126*635a8641SAndroid Build Coastguard Worker public: 127*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 128*635a8641SAndroid Build Coastguard Worker MOCK_METHOD3_T(Run, R(A1, A2, A3)); 129*635a8641SAndroid Build Coastguard Worker Get()130*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3)> Get() { 131*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 132*635a8641SAndroid Build Coastguard Worker } 133*635a8641SAndroid Build Coastguard Worker 134*635a8641SAndroid Build Coastguard Worker private: 135*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 136*635a8641SAndroid Build Coastguard Worker }; 137*635a8641SAndroid Build Coastguard Worker 138*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3> 139*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3)>> { 140*635a8641SAndroid Build Coastguard Worker public: 141*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 142*635a8641SAndroid Build Coastguard Worker MOCK_METHOD3_T(Run, R(A1, A2, A3)); 143*635a8641SAndroid Build Coastguard Worker Get()144*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3)> Get() { 145*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 146*635a8641SAndroid Build Coastguard Worker } 147*635a8641SAndroid Build Coastguard Worker 148*635a8641SAndroid Build Coastguard Worker private: 149*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 150*635a8641SAndroid Build Coastguard Worker }; 151*635a8641SAndroid Build Coastguard Worker 152*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4> 153*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4)>> { 154*635a8641SAndroid Build Coastguard Worker public: 155*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 156*635a8641SAndroid Build Coastguard Worker MOCK_METHOD4_T(Run, R(A1, A2, A3, A4)); 157*635a8641SAndroid Build Coastguard Worker Get()158*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4)> Get() { 159*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 160*635a8641SAndroid Build Coastguard Worker } 161*635a8641SAndroid Build Coastguard Worker 162*635a8641SAndroid Build Coastguard Worker private: 163*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 164*635a8641SAndroid Build Coastguard Worker }; 165*635a8641SAndroid Build Coastguard Worker 166*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4> 167*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4)>> { 168*635a8641SAndroid Build Coastguard Worker public: 169*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 170*635a8641SAndroid Build Coastguard Worker MOCK_METHOD4_T(Run, R(A1, A2, A3, A4)); 171*635a8641SAndroid Build Coastguard Worker Get()172*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4)> Get() { 173*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 174*635a8641SAndroid Build Coastguard Worker } 175*635a8641SAndroid Build Coastguard Worker 176*635a8641SAndroid Build Coastguard Worker private: 177*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 178*635a8641SAndroid Build Coastguard Worker }; 179*635a8641SAndroid Build Coastguard Worker 180*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 181*635a8641SAndroid Build Coastguard Worker typename A5> 182*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5)>> { 183*635a8641SAndroid Build Coastguard Worker public: 184*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 185*635a8641SAndroid Build Coastguard Worker MOCK_METHOD5_T(Run, R(A1, A2, A3, A4, A5)); 186*635a8641SAndroid Build Coastguard Worker Get()187*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5)> Get() { 188*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 189*635a8641SAndroid Build Coastguard Worker } 190*635a8641SAndroid Build Coastguard Worker 191*635a8641SAndroid Build Coastguard Worker private: 192*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 193*635a8641SAndroid Build Coastguard Worker }; 194*635a8641SAndroid Build Coastguard Worker 195*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 196*635a8641SAndroid Build Coastguard Worker typename A5> 197*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5)>> { 198*635a8641SAndroid Build Coastguard Worker public: 199*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 200*635a8641SAndroid Build Coastguard Worker MOCK_METHOD5_T(Run, R(A1, A2, A3, A4, A5)); 201*635a8641SAndroid Build Coastguard Worker Get()202*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5)> Get() { 203*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 204*635a8641SAndroid Build Coastguard Worker } 205*635a8641SAndroid Build Coastguard Worker 206*635a8641SAndroid Build Coastguard Worker private: 207*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 208*635a8641SAndroid Build Coastguard Worker }; 209*635a8641SAndroid Build Coastguard Worker 210*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 211*635a8641SAndroid Build Coastguard Worker typename A5, typename A6> 212*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5, A6)>> { 213*635a8641SAndroid Build Coastguard Worker public: 214*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 215*635a8641SAndroid Build Coastguard Worker MOCK_METHOD6_T(Run, R(A1, A2, A3, A4, A5, A6)); 216*635a8641SAndroid Build Coastguard Worker Get()217*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5, A6)> Get() { 218*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 219*635a8641SAndroid Build Coastguard Worker } 220*635a8641SAndroid Build Coastguard Worker 221*635a8641SAndroid Build Coastguard Worker private: 222*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 223*635a8641SAndroid Build Coastguard Worker }; 224*635a8641SAndroid Build Coastguard Worker 225*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 226*635a8641SAndroid Build Coastguard Worker typename A5, typename A6> 227*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5, A6)>> { 228*635a8641SAndroid Build Coastguard Worker public: 229*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 230*635a8641SAndroid Build Coastguard Worker MOCK_METHOD6_T(Run, R(A1, A2, A3, A4, A5, A6)); 231*635a8641SAndroid Build Coastguard Worker Get()232*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5, A6)> Get() { 233*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 234*635a8641SAndroid Build Coastguard Worker } 235*635a8641SAndroid Build Coastguard Worker 236*635a8641SAndroid Build Coastguard Worker private: 237*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 238*635a8641SAndroid Build Coastguard Worker }; 239*635a8641SAndroid Build Coastguard Worker 240*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 241*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7> 242*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5, A6, A7)>> { 243*635a8641SAndroid Build Coastguard Worker public: 244*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 245*635a8641SAndroid Build Coastguard Worker MOCK_METHOD7_T(Run, R(A1, A2, A3, A4, A5, A6, A7)); 246*635a8641SAndroid Build Coastguard Worker Get()247*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5, A6, A7)> Get() { 248*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 249*635a8641SAndroid Build Coastguard Worker } 250*635a8641SAndroid Build Coastguard Worker 251*635a8641SAndroid Build Coastguard Worker private: 252*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 253*635a8641SAndroid Build Coastguard Worker }; 254*635a8641SAndroid Build Coastguard Worker 255*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 256*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7> 257*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5, A6, A7)>> { 258*635a8641SAndroid Build Coastguard Worker public: 259*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 260*635a8641SAndroid Build Coastguard Worker MOCK_METHOD7_T(Run, R(A1, A2, A3, A4, A5, A6, A7)); 261*635a8641SAndroid Build Coastguard Worker Get()262*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5, A6, A7)> Get() { 263*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 264*635a8641SAndroid Build Coastguard Worker } 265*635a8641SAndroid Build Coastguard Worker 266*635a8641SAndroid Build Coastguard Worker private: 267*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 268*635a8641SAndroid Build Coastguard Worker }; 269*635a8641SAndroid Build Coastguard Worker 270*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 271*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8> 272*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5, A6, A7, A8)>> { 273*635a8641SAndroid Build Coastguard Worker public: 274*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 275*635a8641SAndroid Build Coastguard Worker MOCK_METHOD8_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8)); 276*635a8641SAndroid Build Coastguard Worker Get()277*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5, A6, A7, A8)> Get() { 278*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 279*635a8641SAndroid Build Coastguard Worker } 280*635a8641SAndroid Build Coastguard Worker 281*635a8641SAndroid Build Coastguard Worker private: 282*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 283*635a8641SAndroid Build Coastguard Worker }; 284*635a8641SAndroid Build Coastguard Worker 285*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 286*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8> 287*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8)>> { 288*635a8641SAndroid Build Coastguard Worker public: 289*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 290*635a8641SAndroid Build Coastguard Worker MOCK_METHOD8_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8)); 291*635a8641SAndroid Build Coastguard Worker Get()292*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8)> Get() { 293*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 294*635a8641SAndroid Build Coastguard Worker } 295*635a8641SAndroid Build Coastguard Worker 296*635a8641SAndroid Build Coastguard Worker private: 297*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 298*635a8641SAndroid Build Coastguard Worker }; 299*635a8641SAndroid Build Coastguard Worker 300*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 301*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8, typename A9> 302*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9)>> { 303*635a8641SAndroid Build Coastguard Worker public: 304*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 305*635a8641SAndroid Build Coastguard Worker MOCK_METHOD9_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8, A9)); 306*635a8641SAndroid Build Coastguard Worker Get()307*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9)> Get() { 308*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 309*635a8641SAndroid Build Coastguard Worker } 310*635a8641SAndroid Build Coastguard Worker 311*635a8641SAndroid Build Coastguard Worker private: 312*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 313*635a8641SAndroid Build Coastguard Worker }; 314*635a8641SAndroid Build Coastguard Worker 315*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 316*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8, typename A9> 317*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9)>> { 318*635a8641SAndroid Build Coastguard Worker public: 319*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 320*635a8641SAndroid Build Coastguard Worker MOCK_METHOD9_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8, A9)); 321*635a8641SAndroid Build Coastguard Worker Get()322*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9)> Get() { 323*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 324*635a8641SAndroid Build Coastguard Worker } 325*635a8641SAndroid Build Coastguard Worker 326*635a8641SAndroid Build Coastguard Worker private: 327*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 328*635a8641SAndroid Build Coastguard Worker }; 329*635a8641SAndroid Build Coastguard Worker 330*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 331*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8, typename A9, 332*635a8641SAndroid Build Coastguard Worker typename A10> 333*635a8641SAndroid Build Coastguard Worker class MockCallback<Callback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)>> { 334*635a8641SAndroid Build Coastguard Worker public: 335*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 336*635a8641SAndroid Build Coastguard Worker MOCK_METHOD10_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)); 337*635a8641SAndroid Build Coastguard Worker Get()338*635a8641SAndroid Build Coastguard Worker Callback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)> Get() { 339*635a8641SAndroid Build Coastguard Worker return Bind(&MockCallback::Run, Unretained(this)); 340*635a8641SAndroid Build Coastguard Worker } 341*635a8641SAndroid Build Coastguard Worker 342*635a8641SAndroid Build Coastguard Worker private: 343*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 344*635a8641SAndroid Build Coastguard Worker }; 345*635a8641SAndroid Build Coastguard Worker 346*635a8641SAndroid Build Coastguard Worker template <typename R, typename A1, typename A2, typename A3, typename A4, 347*635a8641SAndroid Build Coastguard Worker typename A5, typename A6, typename A7, typename A8, typename A9, 348*635a8641SAndroid Build Coastguard Worker typename A10> 349*635a8641SAndroid Build Coastguard Worker class MockCallback<OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)>> { 350*635a8641SAndroid Build Coastguard Worker public: 351*635a8641SAndroid Build Coastguard Worker MockCallback() = default; 352*635a8641SAndroid Build Coastguard Worker MOCK_METHOD10_T(Run, R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)); 353*635a8641SAndroid Build Coastguard Worker Get()354*635a8641SAndroid Build Coastguard Worker OnceCallback<R(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)> Get() { 355*635a8641SAndroid Build Coastguard Worker return BindOnce(&MockCallback::Run, Unretained(this)); 356*635a8641SAndroid Build Coastguard Worker } 357*635a8641SAndroid Build Coastguard Worker 358*635a8641SAndroid Build Coastguard Worker private: 359*635a8641SAndroid Build Coastguard Worker DISALLOW_COPY_AND_ASSIGN(MockCallback); 360*635a8641SAndroid Build Coastguard Worker }; 361*635a8641SAndroid Build Coastguard Worker 362*635a8641SAndroid Build Coastguard Worker // clang-format on 363*635a8641SAndroid Build Coastguard Worker 364*635a8641SAndroid Build Coastguard Worker } // namespace base 365*635a8641SAndroid Build Coastguard Worker 366*635a8641SAndroid Build Coastguard Worker #endif // BASE_TEST_MOCK_CALLBACK_H_ 367