contact_info_unittest.cc revision c407dc5cd9bdc5668497f21b26b09d988ab439de
1// Copyright (c) 2010 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/autofill/contact_info.h" 6 7#include "base/basictypes.h" 8#include "base/string_util.h" 9#include "chrome/browser/autofill/autofill_type.h" 10#include "chrome/browser/autofill/field_types.h" 11#include "testing/gtest/include/gtest/gtest.h" 12 13class ContactInfoTest : public testing::Test { 14 public: 15 ContactInfoTest() {} 16 17 string16 first(const ContactInfo& contact) { 18 return contact.first(); 19 } 20 string16 middle(const ContactInfo& contact) { 21 return contact.middle(); 22 } 23 string16 last(const ContactInfo& contact) { 24 return contact.last(); 25 } 26 string16 FullName(const ContactInfo& contact) { 27 return contact.FullName(); 28 } 29 void SetFullName(ContactInfo* contact, const string16& full_name) { 30 contact->SetFullName(full_name); 31 } 32 33 private: 34 DISALLOW_COPY_AND_ASSIGN(ContactInfoTest); 35}; 36 37TEST_F(ContactInfoTest, TestSetFullName) { 38 ContactInfo contact_info; 39 SetFullName(&contact_info, ASCIIToUTF16("Virgil")); 40 EXPECT_EQ(first(contact_info), ASCIIToUTF16("Virgil")); 41 EXPECT_EQ(middle(contact_info), ASCIIToUTF16("")); 42 EXPECT_EQ(last(contact_info), ASCIIToUTF16("")); 43 EXPECT_EQ(FullName(contact_info), ASCIIToUTF16("Virgil")); 44 45 SetFullName(&contact_info, ASCIIToUTF16("Murray Gell-Mann")); 46 EXPECT_EQ(first(contact_info), ASCIIToUTF16("Murray")); 47 EXPECT_EQ(middle(contact_info), ASCIIToUTF16("")); 48 EXPECT_EQ(last(contact_info), ASCIIToUTF16("Gell-Mann")); 49 EXPECT_EQ(FullName(contact_info), ASCIIToUTF16("Murray Gell-Mann")); 50 51 SetFullName(&contact_info, 52 ASCIIToUTF16("Mikhail Yevgrafovich Saltykov-Shchedrin")); 53 EXPECT_EQ(first(contact_info), ASCIIToUTF16("Mikhail")); 54 EXPECT_EQ(middle(contact_info), ASCIIToUTF16("Yevgrafovich")); 55 EXPECT_EQ(last(contact_info), ASCIIToUTF16("Saltykov-Shchedrin")); 56 EXPECT_EQ(FullName(contact_info), 57 ASCIIToUTF16("Mikhail Yevgrafovich Saltykov-Shchedrin")); 58 59 SetFullName(&contact_info, ASCIIToUTF16("Arthur Ignatius Conan Doyle")); 60 EXPECT_EQ(first(contact_info), ASCIIToUTF16("Arthur")); 61 EXPECT_EQ(middle(contact_info), ASCIIToUTF16("Ignatius Conan")); 62 EXPECT_EQ(last(contact_info), ASCIIToUTF16("Doyle")); 63 EXPECT_EQ(FullName(contact_info), 64 ASCIIToUTF16("Arthur Ignatius Conan Doyle")); 65} 66 67