chromium/chrome/browser/ui/autofill/payments/local_card_migration_bubble_controller_impl_unittest.cc

// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/ui/autofill/payments/local_card_migration_bubble_controller_impl.h"

#include <stddef.h>
#include <utility>

#include "base/functional/bind.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "base/values.h"
#include "chrome/browser/ui/autofill/autofill_bubble_base.h"
#include "chrome/browser/ui/autofill/test/test_autofill_bubble_handler.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/test/base/browser_with_test_window_test.h"
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "components/autofill/core/browser/autofill_test_utils.h"
#include "components/autofill/core/browser/metrics/autofill_metrics.h"
#include "components/autofill/core/browser/metrics/payments/local_card_migration_metrics.h"
#include "components/autofill/core/common/autofill_payments_features.h"
#include "content/public/test/mock_navigation_handle.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"

Bucket;
ElementsAre;

namespace autofill {

namespace {

class TestLocalCardMigrationBubbleControllerImpl
    : public LocalCardMigrationBubbleControllerImpl {};

}  // namespace

class LocalCardMigrationBubbleControllerImplTest
    : public BrowserWithTestWindowTest {};

TEST_F(LocalCardMigrationBubbleControllerImplTest,
       Metrics_FirstShow_ShowBubble) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, Metrics_Reshows_ShowBubble) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest,
       OnlyOneActiveBubble_Repeated) {}

// Ensures the bubble should still stick around even if the time since bubble
// showing is longer than kCardBubbleSurviveNavigationTime (5 seconds) when the
// feature is enabled.
TEST_F(LocalCardMigrationBubbleControllerImplTest,
       StickyBubble_ShouldNotDismissUponNavigation) {}

// Test class to ensure the local card migration bubble result is logged
// correctly.
TEST_F(LocalCardMigrationBubbleControllerImplTest, FirstShow_BubbleAccepted) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, FirstShow_BubbleClosed) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest,
       FirstShow_BubbleNotInteracted) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, FirstShow_BubbleLostFocus) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, FirstShow_Unknown) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, Reshows_BubbleAccepted) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, Reshows_BubbleClosed) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest,
       Reshows_BubbleNotInteracted) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, Reshows_BubbleLostFocus) {}

TEST_F(LocalCardMigrationBubbleControllerImplTest, Reshows_Unknown) {}

}  // namespace autofill