diff options
Diffstat (limited to 'chromium/components/ntp_snippets/contextual/contextual_suggestions_test_utils.h')
-rw-r--r-- | chromium/components/ntp_snippets/contextual/contextual_suggestions_test_utils.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/chromium/components/ntp_snippets/contextual/contextual_suggestions_test_utils.h b/chromium/components/ntp_snippets/contextual/contextual_suggestions_test_utils.h new file mode 100644 index 00000000000..b0265d2310e --- /dev/null +++ b/chromium/components/ntp_snippets/contextual/contextual_suggestions_test_utils.h @@ -0,0 +1,55 @@ +// Copyright 2018 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_NTP_SNIPPETS_CONTEXTUAL_CONTEXTUAL_SUGGESTIONS_TEST_UTILS_H_ +#define COMPONENTS_NTP_SNIPPETS_CONTEXTUAL_CONTEXTUAL_SUGGESTIONS_TEST_UTILS_H_ + +#include "base/bind.h" +#include "components/ntp_snippets/contextual/contextual_suggestions_metrics_reporter.h" +#include "components/ntp_snippets/contextual/contextual_suggestions_result.h" +#include "testing/gtest/include/gtest/gtest.h" + +namespace contextual_suggestions { + +// ClustersCallback implementation for testing purposes that expects to be +// called only once, and remembers the results of that call in public members. +class MockClustersCallback { + public: + MockClustersCallback(); + MockClustersCallback(const MockClustersCallback&); + ~MockClustersCallback(); + + void Done(ContextualSuggestionsResult result); + FetchClustersCallback ToOnceCallback(); + + bool has_run = false; + std::string response_peek_text; + std::vector<Cluster> response_clusters; + PeekConditions peek_conditions; +}; + +class MockMetricsCallback { + public: + MockMetricsCallback(); + ~MockMetricsCallback(); + + void Report(ContextualSuggestionsEvent event); + + std::vector<ContextualSuggestionsEvent> events; +}; + +void ExpectSuggestionsMatch(const ContextualSuggestion& actual, + const ContextualSuggestion& expected); +void ExpectClustersMatch(const Cluster& actual, const Cluster& expected); +void ExpectPeekConditionsMatch(const PeekConditions& actual, + const PeekConditions& expected); + +// Expect that the individual data members saved in |callback| match the +// corresponding data in |expected_result|. +void ExpectResponsesMatch(const MockClustersCallback& callback, + const ContextualSuggestionsResult& expected_result); + +} // namespace contextual_suggestions + +#endif // COMPONENTS_NTP_SNIPPETS_CONTEXTUAL_CONTEXTUAL_SUGGESTIONS_TEST_UTILS_H_ |