Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1641)

Unified Diff: chrome/browser/ui/cocoa/edit_search_engine_cocoa_controller_unittest.mm

Issue 6339002: [Mac] Consolidate all files relating to preferences in a subdir of c/b/ui/coc... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/edit_search_engine_cocoa_controller_unittest.mm
===================================================================
--- chrome/browser/ui/cocoa/edit_search_engine_cocoa_controller_unittest.mm (revision 71447)
+++ chrome/browser/ui/cocoa/edit_search_engine_cocoa_controller_unittest.mm (working copy)
@@ -1,232 +0,0 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "app/l10n_util_mac.h"
-#include "base/scoped_nsobject.h"
-#include "chrome/browser/search_engines/template_url.h"
-#include "chrome/browser/ui/cocoa/browser_test_helper.h"
-#include "chrome/browser/ui/cocoa/cocoa_test_helper.h"
-#import "chrome/browser/ui/cocoa/edit_search_engine_cocoa_controller.h"
-#include "chrome/test/testing_profile.h"
-#include "grit/generated_resources.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#import "testing/gtest_mac.h"
-#include "testing/platform_test.h"
-
-@interface FakeEditSearchEngineController : EditSearchEngineCocoaController {
-}
-@property (nonatomic, readonly) NSTextField* nameField;
-@property (nonatomic, readonly) NSTextField* keywordField;
-@property (nonatomic, readonly) NSTextField* urlField;
-@property (nonatomic, readonly) NSImageView* nameImage;
-@property (nonatomic, readonly) NSImageView* keywordImage;
-@property (nonatomic, readonly) NSImageView* urlImage;
-@property (nonatomic, readonly) NSButton* doneButton;
-@property (nonatomic, readonly) NSImage* goodImage;
-@property (nonatomic, readonly) NSImage* badImage;
-@end
-
-@implementation FakeEditSearchEngineController
-@synthesize nameField = nameField_;
-@synthesize keywordField = keywordField_;
-@synthesize urlField = urlField_;
-@synthesize nameImage = nameImage_;
-@synthesize keywordImage = keywordImage_;
-@synthesize urlImage = urlImage_;
-@synthesize doneButton = doneButton_;
-- (NSImage*)goodImage {
- return goodImage_.get();
-}
-- (NSImage*)badImage {
- return badImage_.get();
-}
-@end
-
-namespace {
-
-class EditSearchEngineControllerTest : public CocoaTest {
- public:
- virtual void SetUp() {
- CocoaTest::SetUp();
- TestingProfile* profile =
- static_cast<TestingProfile*>(browser_helper_.profile());
- profile->CreateTemplateURLModel();
- controller_ = [[FakeEditSearchEngineController alloc]
- initWithProfile:profile
- delegate:nil
- templateURL:nil];
- }
-
- virtual void TearDown() {
- // Force the window to load so we hit |-awakeFromNib| to register as the
- // window's delegate so that the controller can clean itself up in
- // |-windowWillClose:|.
- ASSERT_TRUE([controller_ window]);
-
- [controller_ close];
- CocoaTest::TearDown();
- }
-
- BrowserTestHelper browser_helper_;
- FakeEditSearchEngineController* controller_;
-};
-
-TEST_F(EditSearchEngineControllerTest, ValidImageOriginals) {
- EXPECT_FALSE([controller_ goodImage]);
- EXPECT_FALSE([controller_ badImage]);
-
- EXPECT_TRUE([controller_ window]); // Force the window to load.
-
- EXPECT_TRUE([[controller_ goodImage] isKindOfClass:[NSImage class]]);
- EXPECT_TRUE([[controller_ badImage] isKindOfClass:[NSImage class]]);
-
- // Test window title is set correctly.
- NSString* title = l10n_util::GetNSString(
- IDS_SEARCH_ENGINES_EDITOR_NEW_WINDOW_TITLE);
- EXPECT_NSEQ(title, [[controller_ window] title]);
-}
-
-TEST_F(EditSearchEngineControllerTest, SetImageViews) {
- EXPECT_TRUE([controller_ window]); // Force the window to load.
- EXPECT_EQ([controller_ badImage], [[controller_ nameImage] image]);
- // An empty keyword is not OK.
- EXPECT_EQ([controller_ badImage], [[controller_ keywordImage] image]);
- EXPECT_EQ([controller_ badImage], [[controller_ urlImage] image]);
-}
-
-// This test ensures that on creating a new keyword, we are in an "invalid"
-// state that cannot save.
-TEST_F(EditSearchEngineControllerTest, InvalidState) {
- EXPECT_TRUE([controller_ window]); // Force window to load.
- NSString* toolTip = nil;
- EXPECT_FALSE([controller_ validateFields]);
-
- EXPECT_NSEQ(@"", [[controller_ nameField] stringValue]);
- EXPECT_EQ([controller_ badImage], [[controller_ nameImage] image]);
- toolTip = l10n_util::GetNSString(IDS_SEARCH_ENGINES_INVALID_TITLE_TT);
- EXPECT_NSEQ(toolTip, [[controller_ nameField] toolTip]);
- EXPECT_NSEQ(toolTip, [[controller_ nameImage] toolTip]);
-
- // Keywords can not be empty strings.
- EXPECT_NSEQ(@"", [[controller_ keywordField] stringValue]);
- EXPECT_EQ([controller_ badImage], [[controller_ keywordImage] image]);
- EXPECT_TRUE([[controller_ keywordField] toolTip]);
- EXPECT_TRUE([[controller_ keywordImage] toolTip]);
-
- EXPECT_NSEQ(@"", [[controller_ urlField] stringValue]);
- EXPECT_EQ([controller_ badImage], [[controller_ urlImage] image]);
- toolTip = l10n_util::GetNSString(IDS_SEARCH_ENGINES_INVALID_URL_TT);
- EXPECT_NSEQ(toolTip, [[controller_ urlField] toolTip]);
- EXPECT_NSEQ(toolTip, [[controller_ urlImage] toolTip]);
-}
-
-// Tests that the single name field validates.
-TEST_F(EditSearchEngineControllerTest, ValidateName) {
- EXPECT_TRUE([controller_ window]); // Force window to load.
-
- EXPECT_EQ([controller_ badImage], [[controller_ nameImage] image]);
- EXPECT_FALSE([controller_ validateFields]);
- NSString* toolTip =
- l10n_util::GetNSString(IDS_SEARCH_ENGINES_INVALID_TITLE_TT);
- EXPECT_NSEQ(toolTip, [[controller_ nameField] toolTip]);
- EXPECT_NSEQ(toolTip, [[controller_ nameImage] toolTip]);
- [[controller_ nameField] setStringValue:@"Test Name"];
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ nameImage] image]);
- EXPECT_FALSE([[controller_ nameField] toolTip]);
- EXPECT_FALSE([[controller_ nameImage] toolTip]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
-}
-
-// The keyword field is not valid if it is empty.
-TEST_F(EditSearchEngineControllerTest, ValidateKeyword) {
- EXPECT_TRUE([controller_ window]); // Force window load.
-
- EXPECT_EQ([controller_ badImage], [[controller_ keywordImage] image]);
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_TRUE([[controller_ keywordField] toolTip]);
- EXPECT_TRUE([[controller_ keywordImage] toolTip]);
- [[controller_ keywordField] setStringValue:@"foobar"];
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ keywordImage] image]);
- EXPECT_FALSE([[controller_ keywordField] toolTip]);
- EXPECT_FALSE([[controller_ keywordImage] toolTip]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
-}
-
-// Tests that the URL field validates.
-TEST_F(EditSearchEngineControllerTest, ValidateURL) {
- EXPECT_TRUE([controller_ window]); // Force window to load.
-
- EXPECT_EQ([controller_ badImage], [[controller_ urlImage] image]);
- EXPECT_FALSE([controller_ validateFields]);
- NSString* toolTip =
- l10n_util::GetNSString(IDS_SEARCH_ENGINES_INVALID_URL_TT);
- EXPECT_NSEQ(toolTip, [[controller_ urlField] toolTip]);
- EXPECT_NSEQ(toolTip, [[controller_ urlImage] toolTip]);
- [[controller_ urlField] setStringValue:@"http://foo-bar.com"];
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ urlImage] image]);
- EXPECT_FALSE([[controller_ urlField] toolTip]);
- EXPECT_FALSE([[controller_ urlImage] toolTip]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
-}
-
-// Tests that if the user enters all valid data that the UI reflects that
-// and that they can save.
-TEST_F(EditSearchEngineControllerTest, ValidateFields) {
- EXPECT_TRUE([controller_ window]); // Force window to load.
-
- // State before entering data.
- EXPECT_EQ([controller_ badImage], [[controller_ nameImage] image]);
- EXPECT_EQ([controller_ badImage], [[controller_ keywordImage] image]);
- EXPECT_EQ([controller_ badImage], [[controller_ urlImage] image]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
- EXPECT_FALSE([controller_ validateFields]);
-
- [[controller_ nameField] setStringValue:@"Test Name"];
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ nameImage] image]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
-
- [[controller_ keywordField] setStringValue:@"foobar"];
- EXPECT_FALSE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ keywordImage] image]);
- EXPECT_FALSE([[controller_ doneButton] isEnabled]);
-
- // Once the URL is entered, we should have all 3 valid fields.
- [[controller_ urlField] setStringValue:@"http://foo-bar.com"];
- EXPECT_TRUE([controller_ validateFields]);
- EXPECT_EQ([controller_ goodImage], [[controller_ urlImage] image]);
- EXPECT_TRUE([[controller_ doneButton] isEnabled]);
-}
-
-// Tests editing an existing TemplateURL.
-TEST_F(EditSearchEngineControllerTest, EditTemplateURL) {
- TemplateURL url;
- url.set_short_name(L"Foobar");
- url.set_keyword(L"keyword");
- std::string urlString = TemplateURLRef::DisplayURLToURLRef(
- L"http://foo-bar.com");
- url.SetURL(urlString, 0, 1);
- TestingProfile* profile = browser_helper_.profile();
- FakeEditSearchEngineController *controller =
- [[FakeEditSearchEngineController alloc] initWithProfile:profile
- delegate:nil
- templateURL:&url];
- EXPECT_TRUE([controller window]);
- NSString* title = l10n_util::GetNSString(
- IDS_SEARCH_ENGINES_EDITOR_EDIT_WINDOW_TITLE);
- EXPECT_NSEQ(title, [[controller window] title]);
- NSString* nameString = [[controller nameField] stringValue];
- EXPECT_NSEQ(@"Foobar", nameString);
- NSString* keywordString = [[controller keywordField] stringValue];
- EXPECT_NSEQ(@"keyword", keywordString);
- NSString* urlValueString = [[controller urlField] stringValue];
- EXPECT_NSEQ(@"http://foo-bar.com", urlValueString);
- EXPECT_TRUE([controller validateFields]);
- [controller close];
-}
-
-} // namespace

Powered by Google App Engine
This is Rietveld 408576698