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

Side by Side Diff: chrome/browser/bookmarks/bookmark_utils_unittest.cc

Issue 102713002: Support folders in bookmark search (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Resolve conflicts with master + .cc handling of clipboard Created 6 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 unified diff | Download patch
OLDNEW
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 #include "chrome/browser/bookmarks/bookmark_utils.h" 5 #include "chrome/browser/bookmarks/bookmark_utils.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
(...skipping 16 matching lines...) Expand all
27 } 27 }
28 28
29 private: 29 private:
30 // Clipboard requires a message loop. 30 // Clipboard requires a message loop.
31 base::MessageLoopForUI loop; 31 base::MessageLoopForUI loop;
32 }; 32 };
33 33
34 TEST_F(BookmarkUtilsTest, GetBookmarksMatchingPropertiesWordPhraseQuery) { 34 TEST_F(BookmarkUtilsTest, GetBookmarksMatchingPropertiesWordPhraseQuery) {
35 BookmarkModel model(NULL); 35 BookmarkModel model(NULL);
36 const BookmarkNode* node1 = model.AddURL(model.other_node(), 36 const BookmarkNode* node1 = model.AddURL(model.other_node(),
37 0, 37 0,
38 ASCIIToUTF16("foo bar"), 38 ASCIIToUTF16("foo bar"),
39 GURL("http://www.google.com")); 39 GURL("http://www.google.com"));
40 const BookmarkNode* node2 = model.AddURL(model.other_node(), 40 const BookmarkNode* node2 = model.AddURL(model.other_node(),
41 0, 41 0,
42 ASCIIToUTF16("baz buz"), 42 ASCIIToUTF16("baz buz"),
43 GURL("http://www.cnn.com")); 43 GURL("http://www.cnn.com"));
44
45 const BookmarkNode* folder1 = model.AddFolder(model.other_node(), 44 const BookmarkNode* folder1 = model.AddFolder(model.other_node(),
46 0, 45 0,
47 ASCIIToUTF16("foo")); 46 ASCIIToUTF16("foo"));
48
49 std::vector<const BookmarkNode*> nodes; 47 std::vector<const BookmarkNode*> nodes;
50 QueryFields query; 48 QueryFields query;
51 query.word_phrase_query.reset(new base::string16); 49 query.word_phrase_query.reset(new base::string16);
50
51 // Node "foo bar" and folder "foo" are returned in search results.
52 *query.word_phrase_query = ASCIIToUTF16("foo"); 52 *query.word_phrase_query = ASCIIToUTF16("foo");
53 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes); 53 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes);
54 ASSERT_EQ(2U, nodes.size()); 54 ASSERT_EQ(2U, nodes.size());
55 EXPECT_TRUE(nodes[0] == folder1); 55 EXPECT_TRUE(nodes[0] == folder1);
56 EXPECT_TRUE(nodes[1] == node1); 56 EXPECT_TRUE(nodes[1] == node1);
57 nodes.clear(); 57 nodes.clear();
58 58
59 // Ensure url matches return in search results.
59 *query.word_phrase_query = ASCIIToUTF16("cnn"); 60 *query.word_phrase_query = ASCIIToUTF16("cnn");
60 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes); 61 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes);
61 ASSERT_EQ(1U, nodes.size()); 62 ASSERT_EQ(1U, nodes.size());
62 EXPECT_TRUE(nodes[0] == node2); 63 EXPECT_TRUE(nodes[0] == node2);
63 nodes.clear(); 64 nodes.clear();
64 65
66 // Ensure folder "foo" is not returned in more specific search.
65 *query.word_phrase_query = ASCIIToUTF16("foo bar"); 67 *query.word_phrase_query = ASCIIToUTF16("foo bar");
66 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes); 68 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes);
67 ASSERT_EQ(1U, nodes.size()); 69 ASSERT_EQ(1U, nodes.size());
68 EXPECT_TRUE(nodes[0] == node1); 70 EXPECT_TRUE(nodes[0] == node1);
69 nodes.clear(); 71 nodes.clear();
72
73 // Bookmark Bar and Other Bookmarks are not returned in search results.
74 *query.word_phrase_query = ASCIIToUTF16("Bookmark");
75 GetBookmarksMatchingProperties(&model, query, 100, string(), &nodes);
76 ASSERT_EQ(0U, nodes.size());
77 nodes.clear();
70 } 78 }
71 79
72 // Check exact matching against a URL query. 80 // Check exact matching against a URL query.
73 TEST_F(BookmarkUtilsTest, GetBookmarksMatchingPropertiesUrl) { 81 TEST_F(BookmarkUtilsTest, GetBookmarksMatchingPropertiesUrl) {
74 BookmarkModel model(NULL); 82 BookmarkModel model(NULL);
75 const BookmarkNode* node1 = model.AddURL(model.other_node(), 83 const BookmarkNode* node1 = model.AddURL(model.other_node(),
76 0, 84 0,
77 ASCIIToUTF16("Google"), 85 ASCIIToUTF16("Google"),
78 GURL("https://www.google.com/")); 86 GURL("https://www.google.com/"));
79 model.AddURL(model.other_node(), 87 model.AddURL(model.other_node(),
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
289 EXPECT_EQ(2u, clone->GetMetaInfoMap()->size()); 297 EXPECT_EQ(2u, clone->GetMetaInfoMap()->size());
290 std::string value; 298 std::string value;
291 EXPECT_TRUE(clone->GetMetaInfo("somekey", &value)); 299 EXPECT_TRUE(clone->GetMetaInfo("somekey", &value));
292 EXPECT_EQ("somevalue", value); 300 EXPECT_EQ("somevalue", value);
293 EXPECT_TRUE(clone->GetMetaInfo("someotherkey", &value)); 301 EXPECT_TRUE(clone->GetMetaInfo("someotherkey", &value));
294 EXPECT_EQ("someothervalue", value); 302 EXPECT_EQ("someothervalue", value);
295 } 303 }
296 304
297 } // namespace 305 } // namespace
298 } // namespace bookmark_utils 306 } // namespace bookmark_utils
OLDNEW
« no previous file with comments | « chrome/browser/bookmarks/bookmark_utils.cc ('k') | chrome/browser/resources/bookmark_manager/js/main.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698