bookmark_sync_promo_view_unittest.cc revision 58537e28ecd584eab876aee8be7156509866d23a
1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chrome/browser/ui/views/bookmarks/bookmark_sync_promo_view.h" 6 7#include "base/basictypes.h" 8#include "base/compiler_specific.h" 9#include "base/memory/scoped_ptr.h" 10#include "chrome/browser/ui/bookmarks/bookmark_bubble_delegate.h" 11#include "testing/gtest/include/gtest/gtest.h" 12#include "ui/base/events/event_constants.h" 13#include "ui/gfx/range/range.h" 14 15class BookmarkSyncPromoViewTest : public BookmarkBubbleDelegate, 16 public testing::Test { 17 public: 18 BookmarkSyncPromoViewTest() : sign_in_clicked_count_(0) {} 19 20 protected: 21 // BookmarkBubbleDelegate: 22 virtual void OnSignInLinkClicked() OVERRIDE { 23 ++sign_in_clicked_count_; 24 } 25 26 // Number of times that OnSignInLinkClicked has been called. 27 int sign_in_clicked_count_; 28 29 private: 30 DISALLOW_COPY_AND_ASSIGN(BookmarkSyncPromoViewTest); 31}; 32 33TEST_F(BookmarkSyncPromoViewTest, SignInLink) { 34 scoped_ptr<BookmarkSyncPromoView> sync_promo; 35 sync_promo.reset(new BookmarkSyncPromoView(this)); 36 37 // Simulate clicking the "Sign in" link. 38 views::StyledLabelListener* listener = sync_promo.get(); 39 listener->StyledLabelLinkClicked(gfx::Range(), ui::EF_NONE); 40 41 EXPECT_EQ(1, sign_in_clicked_count_); 42} 43