OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #import <Cocoa/Cocoa.h> | 5 #import <Cocoa/Cocoa.h> |
6 | 6 |
7 #include "base/strings/string16.h" | 7 #include "base/strings/string16.h" |
8 #include "base/strings/sys_string_conversions.h" | 8 #include "base/strings/sys_string_conversions.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "chrome/browser/bookmarks/bookmark_model_factory.h" | 10 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
252 }; | 252 }; |
253 | 253 |
254 TEST_F(BookmarkEditorControllerUtf8NodeTest, DisplayUtf8Name) { | 254 TEST_F(BookmarkEditorControllerUtf8NodeTest, DisplayUtf8Name) { |
255 // The "http://" prefix is trimmed, but the UTF-8 formatted characters remain. | 255 // The "http://" prefix is trimmed, but the UTF-8 formatted characters remain. |
256 EXPECT_NSEQ([NSString stringWithCString:"www.foobar.com/心得寫作" | 256 EXPECT_NSEQ([NSString stringWithCString:"www.foobar.com/心得寫作" |
257 encoding:NSUTF8StringEncoding], | 257 encoding:NSUTF8StringEncoding], |
258 [controller_ displayURL]); | 258 [controller_ displayURL]); |
259 [controller_ cancel:nil]; | 259 [controller_ cancel:nil]; |
260 } | 260 } |
261 | 261 |
| 262 using BookmarkEditorControllerEditKeepsSchemeTest = CocoaProfileTest; |
| 263 TEST_F(BookmarkEditorControllerEditKeepsSchemeTest, EditKeepsScheme) { |
| 264 // Edits the bookmark and ensures resulting URL keeps the same scheme, even |
| 265 // when userinfo is present in the URL |
| 266 ASSERT_TRUE(profile()); |
| 267 |
| 268 BookmarkModel* model = BookmarkModelFactory::GetForBrowserContext(profile()); |
| 269 const BookmarkNode* kParent = model->bookmark_bar_node(); |
| 270 const base::string16 kTitle = ASCIIToUTF16("EditingKeepsScheme"); |
| 271 |
| 272 const GURL kUrl = GURL("http://javascript:scripttext@example.com/"); |
| 273 const BookmarkNode* kNode = model->AddURL(kParent, 0, base::string16(), kUrl); |
| 274 |
| 275 BookmarkEditorController* controller = [[BookmarkEditorController alloc] |
| 276 initWithParentWindow:test_window() |
| 277 profile:profile() |
| 278 parent:kParent |
| 279 node:kNode |
| 280 url:GURL() |
| 281 title:base::string16() |
| 282 configuration:BookmarkEditor::SHOW_TREE]; |
| 283 |
| 284 [controller runAsModalSheet]; |
| 285 |
| 286 // We expect only the trailing / to be trimmed when userinfo is present |
| 287 EXPECT_NSEQ(base::SysUTF8ToNSString(kUrl.spec()), |
| 288 [[controller displayURL] stringByAppendingString:@"/"]); |
| 289 |
| 290 [controller setDisplayName:base::SysUTF16ToNSString(kTitle)]; |
| 291 |
| 292 EXPECT_TRUE([controller okButtonEnabled]); |
| 293 [controller ok:nil]; |
| 294 |
| 295 ASSERT_EQ(1, kParent->child_count()); |
| 296 const BookmarkNode* kChild = kParent->GetChild(0); |
| 297 EXPECT_EQ(kTitle, kChild->GetTitle()); |
| 298 EXPECT_EQ(kUrl, kChild->url()); |
| 299 } |
| 300 |
262 class BookmarkEditorControllerTreeTest : public CocoaProfileTest { | 301 class BookmarkEditorControllerTreeTest : public CocoaProfileTest { |
263 | 302 |
264 public: | 303 public: |
265 BookmarkEditorController* controller_; | 304 BookmarkEditorController* controller_; |
266 const BookmarkNode* folder_a_; | 305 const BookmarkNode* folder_a_; |
267 const BookmarkNode* folder_b_; | 306 const BookmarkNode* folder_b_; |
268 const BookmarkNode* folder_bb_; | 307 const BookmarkNode* folder_bb_; |
269 const BookmarkNode* folder_c_; | 308 const BookmarkNode* folder_c_; |
270 const BookmarkNode* bookmark_bb_3_; | 309 const BookmarkNode* bookmark_bb_3_; |
271 GURL bb3_url_1_; | 310 GURL bb3_url_1_; |
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 | 519 |
481 TEST_F(BookmarkEditorControllerTreeNoNodeTest, NewBookmarkNoNode) { | 520 TEST_F(BookmarkEditorControllerTreeNoNodeTest, NewBookmarkNoNode) { |
482 [controller_ setDisplayName:@"NEW BOOKMARK"]; | 521 [controller_ setDisplayName:@"NEW BOOKMARK"]; |
483 [controller_ setDisplayURL:@"http://NEWURL.com"]; | 522 [controller_ setDisplayURL:@"http://NEWURL.com"]; |
484 [controller_ ok:nil]; | 523 [controller_ ok:nil]; |
485 const BookmarkNode* new_node = folder_bb_->GetChild(5); | 524 const BookmarkNode* new_node = folder_bb_->GetChild(5); |
486 ASSERT_EQ(0, new_node->child_count()); | 525 ASSERT_EQ(0, new_node->child_count()); |
487 EXPECT_EQ(new_node->GetTitle(), ASCIIToUTF16("NEW BOOKMARK")); | 526 EXPECT_EQ(new_node->GetTitle(), ASCIIToUTF16("NEW BOOKMARK")); |
488 EXPECT_EQ(new_node->url(), GURL("http://NEWURL.com")); | 527 EXPECT_EQ(new_node->url(), GURL("http://NEWURL.com")); |
489 } | 528 } |
OLD | NEW |