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

Side by Side Diff: chrome/test/data/file_manager/unit_tests/importer_common_unittest.js

Issue 778123006: Include MTP devices in Cloud Import happiness. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add test files missing from CL. Created 6 years 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 2014 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 /** @type {!MockVolumeManager} */
6 var volumeManager;
7
8 /** @type {!VolumeInfo} */
9 var cameraVolume;
10
11 /** @type {!VolumeInfo} */
12 var sdVolume;
13
14 /** @type {!VolumeInfo} */
mtomasz 2014/12/11 01:51:52 Some variables are !Foobar, and some !Foobar|undef
Steve McKay 2014/12/11 02:12:57 Nuked |undefined which was unnecessary. Plus we do
15 var driveVolume;
16
17 /** @type {!MockFileEntry|undefined} */
18 var cameraFileEntry;
19
20 /** @type {!MockFileEntry|undefined} */
21 var sdFileEntry;
22
23 /** @type {!MockFileEntry|undefined} */
24 var driveFileEntry;
25
26 /** @type {!MockDirectoryEntry|undefined} */
27 var mediaDirectory;
28
29 /** @type {!MockDirectoryEntry|undefined} */
30 var nonMediaDirectory;
31
32 // Set up the test components.
33 function setUp() {
34 // Sadly, boilerplate setup necessary to include test support classes.
35 loadTimeData.data = {
36 DRIVE_DIRECTORY_LABEL: 'My Drive',
37 DOWNLOADS_DIRECTORY_LABEL: 'Downloads'
38 };
39
40 var cameraFileSystem = new MockFileSystem(
41 'camera-fs', 'filesystem:camera-123');
42 var sdFileSystem = new MockFileSystem(
43 'sd-fs', 'filesystem:sd-123');
44
45 cameraVolume = MockVolumeManager.createMockVolumeInfo(
46 VolumeManagerCommon.VolumeType.MTP,
47 'camera-fs',
48 'Some Camera');
49
50 sdVolume = MockVolumeManager.createMockVolumeInfo(
51 VolumeManagerCommon.VolumeType.REMOVABLE,
52 'sd-fs',
53 'Some SD Card');
54
55 volumeManager = new MockVolumeManager();
56 volumeManager.volumeInfoList.push(cameraVolume);
57 volumeManager.volumeInfoList.push(sdVolume);
58
59 driveVolume = volumeManager.getCurrentProfileVolumeInfo(
60 VolumeManagerCommon.VolumeType.DRIVE);
61
62 cameraFileEntry = createFileEntry(cameraVolume, '/DCIM/poodles.jpg');
63 sdFileEntry = createFileEntry(sdVolume, '/dcim/a-z/IMG1234.jpg');
64 driveFileEntry = createFileEntry(driveVolume, '/someotherfile.jpg');
65
66 mediaDirectory = createDirectoryEntry(sdVolume, '/DCIM');
67 nonMediaDirectory = createDirectoryEntry(driveVolume, '/blabbity');
68 }
69
70 function createFileEntry(volume, path) {
71 var entry = new MockFileEntry(
72 volume.fileSystem,
73 path, {
74 size: 1234,
75 modificationTime: new Date().toString()
76 });
77 // Ensure the file entry has a volumeID...necessary for lookups
78 // via the VolumeManager.
79 entry.volumeId = volume.volumeId;
80 return entry;
81 }
82
83 function createDirectoryEntry(volume, path) {
84 var entry = new MockDirectoryEntry(volume.fileSystem, '/DCIM');
85 // Ensure the file entry has a volumeID...necessary for lookups
86 // via the VolumeManager.
87 entry.volumeId = volume.volumeId;
88 return entry;
89 }
90
91 function testIsMediaEntry() {
92 assertTrue(importer.isMediaEntry(cameraFileEntry));
93 assertFalse(importer.isMediaEntry(driveFileEntry));
94 }
95
96 function testIsEligibleVolume() {
97 assertTrue(importer.isEligibleVolume(cameraVolume));
98 assertTrue(importer.isEligibleVolume(sdVolume));
99 assertFalse(importer.isEligibleVolume(driveVolume));
100 }
101
102 function testIsEligibleEntry() {
103 assertTrue(importer.isEligibleEntry(volumeManager, cameraFileEntry));
104 assertTrue(importer.isEligibleEntry(volumeManager, sdFileEntry));
105 assertFalse(importer.isEligibleEntry(volumeManager, driveFileEntry));
106 }
107
108 function testIsMediaDirectory() {
109 assertTrue(importer.isMediaDirectory(mediaDirectory, volumeManager));
mtomasz 2014/12/11 01:51:52 Can we add more edge cases: Eg. /DCIM vs. /DCIM/,
Steve McKay 2014/12/11 02:12:57 Done.
110 assertFalse(importer.isMediaDirectory(nonMediaDirectory, volumeManager));
111 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698