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

Side by Side Diff: chrome/browser/media_galleries/linux/mtp_device_object_enumerator_unittest.cc

Issue 2358493002: Remove MTP support on Linux. (Closed)
Patch Set: move files Created 4 years, 2 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include <stddef.h>
6 #include <stdint.h>
7
8 #include "base/macros.h"
9 #include "chrome/browser/media_galleries/linux/mtp_device_object_enumerator.h"
10 #include "testing/gtest/include/gtest/gtest.h"
11
12 namespace {
13
14 struct MtpFileEntryData {
15 const char* const name;
16 int64_t size;
17 bool is_directory;
18 time_t modification_time;
19 };
20
21 const MtpFileEntryData kTestCases[] = {
22 { "Foo", 123, false, 321 },
23 { "Bar", 234, true, 432 },
24 { "Baaz", 345, false, 543 },
25 };
26
27 void TestEnumeratorIsEmpty(MTPDeviceObjectEnumerator* enumerator) {
28 EXPECT_EQ(0, enumerator->Size());
29 EXPECT_FALSE(enumerator->IsDirectory());
30 EXPECT_TRUE(enumerator->LastModifiedTime().is_null());
31 }
32
33 void TestNextEntryIsEmpty(MTPDeviceObjectEnumerator* enumerator) {
34 EXPECT_TRUE(enumerator->Next().empty());
35 }
36
37 typedef testing::Test MTPDeviceObjectEnumeratorTest;
38
39 TEST_F(MTPDeviceObjectEnumeratorTest, Empty) {
40 std::vector<MtpFileEntry> entries;
41 MTPDeviceObjectEnumerator enumerator(entries);
42 TestEnumeratorIsEmpty(&enumerator);
43 TestNextEntryIsEmpty(&enumerator);
44 TestNextEntryIsEmpty(&enumerator);
45 TestEnumeratorIsEmpty(&enumerator);
46 }
47
48 TEST_F(MTPDeviceObjectEnumeratorTest, Traversal) {
49 std::vector<MtpFileEntry> entries;
50 for (size_t i = 0; i < arraysize(kTestCases); ++i) {
51 MtpFileEntry entry;
52 entry.set_file_name(kTestCases[i].name);
53 entry.set_file_size(kTestCases[i].size);
54 entry.set_file_type(kTestCases[i].is_directory ?
55 MtpFileEntry::FILE_TYPE_FOLDER :
56 MtpFileEntry::FILE_TYPE_OTHER);
57 entry.set_modification_time(kTestCases[i].modification_time);
58 entries.push_back(entry);
59 }
60 MTPDeviceObjectEnumerator enumerator(entries);
61 TestEnumeratorIsEmpty(&enumerator);
62 TestEnumeratorIsEmpty(&enumerator);
63 for (size_t i = 0; i < arraysize(kTestCases); ++i) {
64 EXPECT_EQ(kTestCases[i].name, enumerator.Next().value());
65 EXPECT_EQ(kTestCases[i].size, enumerator.Size());
66 EXPECT_EQ(kTestCases[i].is_directory, enumerator.IsDirectory());
67 EXPECT_EQ(kTestCases[i].modification_time,
68 enumerator.LastModifiedTime().ToTimeT());
69 }
70 TestNextEntryIsEmpty(&enumerator);
71 TestNextEntryIsEmpty(&enumerator);
72 TestEnumeratorIsEmpty(&enumerator);
73 TestNextEntryIsEmpty(&enumerator);
74 TestEnumeratorIsEmpty(&enumerator);
75 }
76
77 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698