#include "components/autofill/core/browser/payments/virtual_card_enroll_metrics_logger.h"
#include "base/strings/strcat.h"
#include "base/test/bind.h"
#include "base/test/metrics/histogram_tester.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace autofill {
struct EnrollmentSourceVariation { … };
class VirtualCardEnrollMetricsLoggerSourceTest
: public ::testing::TestWithParam<EnrollmentSourceVariation> { … };
static auto kEnrollmentSourceVariations = …;
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(VirtualCardEnrollMetricsLoggerSourceTest, LogsOnCardArtAvailable) { … }
TEST_P(VirtualCardEnrollMetricsLoggerSourceTest, LogsOnShown) { … }
TEST_P(VirtualCardEnrollMetricsLoggerSourceTest, LogsOnShownWhenIsReshow) { … }
struct ReshowVariation { … };
struct StrikesVariation { … };
struct MetricVariation { … };
class VirtualCardEnrollMetricsLoggerMetricsVariationsTest
: public testing::TestWithParam<MetricVariation::TupleT> { … };
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(VirtualCardEnrollMetricsLoggerMetricsVariationsTest, LogsOnDismissed) { … }
}