123456789101112131415161718192021222324252627282930313233343536373839404142 |
- // Copyright 2021 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef COMPONENTS_REPORTING_CLIENT_MOCK_DM_TOKEN_RETRIEVER_H_
- #define COMPONENTS_REPORTING_CLIENT_MOCK_DM_TOKEN_RETRIEVER_H_
- #include <cstddef>
- #include <string>
- #include "components/reporting/client/dm_token_retriever.h"
- #include "components/reporting/util/statusor.h"
- #include "testing/gmock/include/gmock/gmock.h"
- namespace reporting {
- // A mock |DMTokenRetriever| that stubs out functionality that retrieves the
- // DM token for testing purposes.
- class MockDMTokenRetriever : public DMTokenRetriever {
- public:
- MockDMTokenRetriever();
- MockDMTokenRetriever(const MockDMTokenRetriever&) = delete;
- MockDMTokenRetriever& operator=(const MockDMTokenRetriever&) = delete;
- ~MockDMTokenRetriever() override;
- // Ensures by mocking that RetrieveDMToken is expected to be triggered a
- // specific number of times and runs the completion callback with the
- // specified result on trigger.
- void ExpectRetrieveDMTokenAndReturnResult(
- size_t times,
- const StatusOr<std::string> dm_token_result);
- // Mocked stub that retrieves the DM token and triggers the specified callback
- MOCK_METHOD(void,
- RetrieveDMToken,
- (DMTokenRetriever::CompletionCallback completion_cb),
- (override));
- };
- } // namespace reporting
- #endif // COMPONENTS_REPORTING_CLIENT_MOCK_DM_TOKEN_RETRIEVER_H_
|