1dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file. 4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 5731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick#ifndef CHROME_BROWSER_AUTOFILL_AUTOFILL_COMMON_TEST_H_ 6731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick#define CHROME_BROWSER_AUTOFILL_AUTOFILL_COMMON_TEST_H_ 73345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#pragma once 8c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 9ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenclass AutofillProfile; 10c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochclass CreditCard; 11731df977c0511bca2206b5f333555b1205ff1f43Iain Merrickclass Profile; 12c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 13c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochnamespace webkit_glue { 14ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenstruct FormField; 15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch} // namespace webkit_glue 16c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 17ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// Common utilities shared amongst Autofill tests. 18731df977c0511bca2206b5f333555b1205ff1f43Iain Merricknamespace autofill_test { 19c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 20c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Provides a quick way to populate a FormField with c-strings. 21c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochvoid CreateTestFormField(const char* label, 22c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* name, 23c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* value, 24c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* type, 25c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch webkit_glue::FormField* field); 26c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 27ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// A unit testing utility that is common to a number of the Autofill unit 28c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// tests. |SetProfileInfo| provides a quick way to populate a profile with 29c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// c-strings. 30ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvoid SetProfileInfo(AutofillProfile* profile, 31dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen const char* first_name, const char* middle_name, 32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* last_name, const char* email, const char* company, 33c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* address1, const char* address2, const char* city, 34c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* state, const char* zipcode, const char* country, 35c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const char* phone, const char* fax); 36c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 37ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvoid SetProfileInfoWithGuid(AutofillProfile* profile, 383f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen const char* guid, const char* first_name, const char* middle_name, 393f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen const char* last_name, const char* email, const char* company, 403f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen const char* address1, const char* address2, const char* city, 413f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen const char* state, const char* zipcode, const char* country, 423f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen const char* phone, const char* fax); 433f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen 44ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// A unit testing utility that is common to a number of the Autofill unit 45c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// tests. |SetCreditCardInfo| provides a quick way to populate a credit card 46c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// with c-strings. 47c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochvoid SetCreditCardInfo(CreditCard* credit_card, 48dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen const char* name_on_card, const char* card_number, 49513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch const char* expiration_month, const char* expiration_year); 50c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 51731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// TODO(isherman): We should do this automatically for all tests, not manually 52731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// on a per-test basis: http://crbug.com/57221 53731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick// Disables or mocks out code that would otherwise reach out to system services. 54731df977c0511bca2206b5f333555b1205ff1f43Iain Merrickvoid DisableSystemServices(Profile* profile); 55c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 56731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick} // namespace autofill_test 57731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 58731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick#endif // CHROME_BROWSER_AUTOFILL_AUTOFILL_COMMON_TEST_H_ 59