| Index: chrome/browser/extensions/api/downloads/downloads_api_unittest.cc
|
| diff --git a/chrome/browser/extensions/api/downloads/downloads_api_unittest.cc b/chrome/browser/extensions/api/downloads/downloads_api_unittest.cc
|
| index a2b8a6b229d5c844787fc9b673da09e0d728d0b0..5e9a6d15010305972b4550be705e6e99e4430037 100644
|
| --- a/chrome/browser/extensions/api/downloads/downloads_api_unittest.cc
|
| +++ b/chrome/browser/extensions/api/downloads/downloads_api_unittest.cc
|
| @@ -4,6 +4,8 @@
|
|
|
| #include "chrome/browser/extensions/api/downloads/downloads_api.h"
|
|
|
| +#include <algorithm>
|
| +
|
| #include "base/macros.h"
|
| #include "base/memory/ptr_util.h"
|
| #include "chrome/browser/download/download_core_service_factory.h"
|
| @@ -127,4 +129,49 @@ TEST_F(DownloadsApiUnitTest, ParseSearchQuery) {
|
| RunFunction(new DownloadsSearchFunction, "[{\"totalBytesGreater\":2}]");
|
| }
|
|
|
| +// Marked as an "internal" unit test because it doesn't use the TEST_F macro so
|
| +// the name must be different.
|
| +TEST(DownloadsApiInternalUnitTest, FilterTypeSorted) {
|
| + struct KeyCompare {
|
| + bool operator()(const DownloadQueryFilterTypePair& a,
|
| + const DownloadQueryFilterTypePair& b) const {
|
| + return strcmp(a.first, b.first) < 0;
|
| + }
|
| + };
|
| + EXPECT_TRUE(std::is_sorted(DownloadQueryFilterTypeBeginForTest(),
|
| + DownloadQueryFilterTypeEndForTest(),
|
| + KeyCompare()));
|
| +
|
| + // All items should be found.
|
| + for (const DownloadQueryFilterTypePair* cur =
|
| + DownloadQueryFilterTypeBeginForTest();
|
| + cur != DownloadQueryFilterTypeEndForTest(); ++cur) {
|
| + EXPECT_EQ(cur, FindDownloadFilterTypeByString(cur->first));
|
| + }
|
| +
|
| + EXPECT_EQ(nullptr, FindDownloadFilterTypeByString("NOTFOUND"));
|
| +}
|
| +
|
| +// Marked as an "internal" unit test because it doesn't use the TEST_F macro so
|
| +// the name must be different.
|
| +TEST(DownloadsApiInternalUnitTest, SortTypeSorted) {
|
| + struct KeyCompare {
|
| + bool operator()(const DownloadQuerySortTypePair& a,
|
| + const DownloadQuerySortTypePair& b) const {
|
| + return strcmp(a.first, b.first) < 0;
|
| + }
|
| + };
|
| + EXPECT_TRUE(std::is_sorted(DownloadQuerySortTypeBeginForTest(),
|
| + DownloadQuerySortTypeEndForTest(), KeyCompare()));
|
| +
|
| + // All items should be found.
|
| + for (const DownloadQuerySortTypePair* cur =
|
| + DownloadQuerySortTypeBeginForTest();
|
| + cur != DownloadQuerySortTypeEndForTest(); ++cur) {
|
| + EXPECT_EQ(cur, FindDownloadSortTypeByString(cur->first));
|
| + }
|
| +
|
| + EXPECT_EQ(nullptr, FindDownloadSortTypeByString("NOTFOUND"));
|
| +}
|
| +
|
| } // namespace extensions
|
|
|