OLD | NEW |
| (Empty) |
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 "base/strings/utf_string_conversions.h" | |
11 #include "chrome/browser/ui/bookmarks/bookmark_bubble_delegate.h" | |
12 #include "testing/gtest/include/gtest/gtest.h" | |
13 #include "ui/events/event_constants.h" | |
14 #include "ui/gfx/range/range.h" | |
15 #include "ui/views/controls/styled_label.h" | |
16 | |
17 class BookmarkSyncPromoViewTest : public BookmarkBubbleDelegate, | |
18 public testing::Test { | |
19 public: | |
20 BookmarkSyncPromoViewTest() : sign_in_clicked_count_(0) {} | |
21 | |
22 protected: | |
23 // BookmarkBubbleDelegate: | |
24 void OnSignInLinkClicked() override { ++sign_in_clicked_count_; } | |
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 | |
33 TEST_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::StyledLabel styled_label(base::ASCIIToUTF16("test"), nullptr); | |
39 views::StyledLabelListener* listener = sync_promo.get(); | |
40 listener->StyledLabelLinkClicked(&styled_label, gfx::Range(), ui::EF_NONE); | |
41 | |
42 EXPECT_EQ(1, sign_in_clicked_count_); | |
43 } | |
OLD | NEW |