172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian 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
5dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "chrome/browser/ui/gtk/bookmarks/bookmark_utils_gtk.h"
6c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#include "testing/gtest/include/gtest/gtest.h"
772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "ui/base/dragdrop/gtk_dnd_util.h"
8c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
9c407dc5cd9bdc5668497f21b26b09d988ab439deBen MurdochTEST(BookmarkUtilsGtkTest, GetNodesFromSelectionInvalid) {
10c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  std::vector<const BookmarkNode*> nodes;
11c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  nodes = bookmark_utils::GetNodesFromSelection(NULL, NULL, 0, NULL, NULL,
12c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch                                                NULL);
13c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  EXPECT_EQ(0u, nodes.size());
14c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  GtkSelectionData data;
16c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.data = NULL;
17c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.length = 0;
18c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  nodes = bookmark_utils::GetNodesFromSelection(NULL, &data, 0, NULL, NULL,
19c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch                                                NULL);
20c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  EXPECT_EQ(0u, nodes.size());
21c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
22c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  nodes = bookmark_utils::GetNodesFromSelection(NULL, NULL,
2372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen      ui::CHROME_BOOKMARK_ITEM, NULL, NULL, NULL);
24c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  EXPECT_EQ(0u, nodes.size());
25c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
26c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.data = NULL;
27c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.length = 0;
28c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  nodes = bookmark_utils::GetNodesFromSelection(NULL, &data,
2972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen      ui::CHROME_BOOKMARK_ITEM, NULL, NULL, NULL);
30c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  EXPECT_EQ(0u, nodes.size());
31c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  guchar test_data[] = "";
33c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.data = test_data;
34c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  data.length = 0;
35c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  nodes = bookmark_utils::GetNodesFromSelection(NULL, &data,
3672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen      ui::CHROME_BOOKMARK_ITEM, NULL, NULL, NULL);
37c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  EXPECT_EQ(0u, nodes.size());
38c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}
39