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

Side by Side Diff: ui/file_manager/file_manager/foreground/js/providers_model_unittest.js

Issue 1215533003: Add a refresh button for providers which do not support watchers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed tests. Created 5 years, 5 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 // Set up string assets. 5 // Set up string assets.
6 loadTimeData.data = { 6 loadTimeData.data = {
7 DRIVE_DIRECTORY_LABEL: 'My Drive', 7 DRIVE_DIRECTORY_LABEL: 'My Drive',
8 DOWNLOADS_DIRECTORY_LABEL: 'Downloads' 8 DOWNLOADS_DIRECTORY_LABEL: 'Downloads'
9 }; 9 };
10 10
11 // A providing extension which has mounted a file system, and doesn't support 11 // A providing extension which has mounted a file system, and doesn't support
12 // multiple mounts. 12 // multiple mounts.
13 var MOUNTED_SINGLE_PROVIDING_EXTENSION = { 13 var MOUNTED_SINGLE_PROVIDING_EXTENSION = {
14 extensionId: 'mounted-single-extension-id', 14 extensionId: 'mounted-single-extension-id',
15 name: 'mounted-single-extension-name', 15 name: 'mounted-single-extension-name',
16 configurable: false, 16 configurable: false,
17 watchable: true,
17 multipleMounts: false, 18 multipleMounts: false,
18 source: 'network' 19 source: 'network'
19 }; 20 };
20 21
21 // A providing extension which has not mounted a file system, and doesn't 22 // A providing extension which has not mounted a file system, and doesn't
22 // support multiple mounts. 23 // support multiple mounts.
23 var NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION = { 24 var NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION = {
24 extensionId: 'not-mounted-single-extension-id', 25 extensionId: 'not-mounted-single-extension-id',
25 name: 'not-mounted-single-extension-name', 26 name: 'not-mounted-single-extension-name',
26 configurable: false, 27 configurable: false,
28 watchable: true,
27 multipleMounts: false, 29 multipleMounts: false,
28 source: 'network' 30 source: 'network'
29 }; 31 };
30 // A providing extension which has not mounted a file system, and doesn't 32 // A providing extension which has not mounted a file system, and doesn't
31 // support multiple mounts. 33 // support multiple mounts.
32 var NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION = { 34 var NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION = {
33 extensionId: 'not-mounted-single-extension-id', 35 extensionId: 'not-mounted-single-extension-id',
34 name: 'not-mounted-single-extension-name', 36 name: 'not-mounted-single-extension-name',
35 configurable: false, 37 configurable: false,
38 watchable: true,
36 multipleMounts: false, 39 multipleMounts: false,
37 source: 'network' 40 source: 'network'
38 }; 41 };
39 42
40 // A providing extension which has mounted a file system and supports mounting 43 // A providing extension which has mounted a file system and supports mounting
41 // more. 44 // more.
42 var MOUNTED_MULTIPLE_PROVIDING_EXTENSION = { 45 var MOUNTED_MULTIPLE_PROVIDING_EXTENSION = {
43 extensionId: 'mounted-multiple-extension-id', 46 extensionId: 'mounted-multiple-extension-id',
44 name: 'mounted-multiple-extension-name', 47 name: 'mounted-multiple-extension-name',
45 configurable: true, 48 configurable: true,
49 watchable: false,
46 multipleMounts: true, 50 multipleMounts: true,
47 source: 'network' 51 source: 'network'
48 }; 52 };
49 53
50 // A providing extension which has not mounted a file system but it's of "file" 54 // A providing extension which has not mounted a file system but it's of "file"
51 // source. Such extensions do mounting via file handlers. 55 // source. Such extensions do mounting via file handlers.
52 var NOT_MOUNTED_FILE_PROVIDING_EXTENSION = { 56 var NOT_MOUNTED_FILE_PROVIDING_EXTENSION = {
53 extensionId: 'file-extension-id', 57 extensionId: 'file-extension-id',
54 name: 'file-extension-name', 58 name: 'file-extension-name',
55 configurable: false, 59 configurable: false,
60 watchable: true,
56 multipleMounts: true, 61 multipleMounts: true,
57 source: 'file' 62 source: 'file'
58 }; 63 };
59 64
60 // A providing extension which has not mounted a file system but it's of 65 // A providing extension which has not mounted a file system but it's of
61 // "device" source. Such extensions are not mounted by user, but automatically 66 // "device" source. Such extensions are not mounted by user, but automatically
62 // when the device is attached. 67 // when the device is attached.
63 var NOT_MOUNTED_DEVICE_PROVIDING_EXTENSION = { 68 var NOT_MOUNTED_DEVICE_PROVIDING_EXTENSION = {
64 extensionId: 'device-extension-id', 69 extensionId: 'device-extension-id',
65 name: 'device-extension-name', 70 name: 'device-extension-name',
66 configurable: false, 71 configurable: false,
72 watchable: true,
67 multipleMounts: true, 73 multipleMounts: true,
68 source: 'device' 74 source: 'device'
69 }; 75 };
70 76
71 var volumeManager = null; 77 var volumeManager = null;
72 78
73 function addProvidedVolume(volumeManager, extensionId, volumeId) { 79 function addProvidedVolume(volumeManager, extensionId, volumeId) {
74 var fileSystem = new MockFileSystem(volumeId, 'filesystem:' + volumeId); 80 var fileSystem = new MockFileSystem(volumeId, 'filesystem:' + volumeId);
75 fileSystem.entries['/'] = new MockDirectoryEntry(fileSystem, ''); 81 fileSystem.entries['/'] = new MockDirectoryEntry(fileSystem, '');
76 82
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 var model = new ProvidersModel(volumeManager); 121 var model = new ProvidersModel(volumeManager);
116 reportPromise(model.getInstalledProviders().then( 122 reportPromise(model.getInstalledProviders().then(
117 function(extensions) { 123 function(extensions) {
118 assertEquals(5, extensions.length); 124 assertEquals(5, extensions.length);
119 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId, 125 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId,
120 extensions[0].extensionId); 126 extensions[0].extensionId);
121 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.name, 127 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.name,
122 extensions[0].extensionName); 128 extensions[0].extensionName);
123 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.configurable, 129 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.configurable,
124 extensions[0].configurable); 130 extensions[0].configurable);
131 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.watchable,
132 extensions[0].watchable);
125 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.multipleMounts, 133 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.multipleMounts,
126 extensions[0].multipleMounts); 134 extensions[0].multipleMounts);
127 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.source, 135 assertEquals(MOUNTED_SINGLE_PROVIDING_EXTENSION.source,
128 extensions[0].source); 136 extensions[0].source);
129 137
130 assertEquals(NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId, 138 assertEquals(NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId,
131 extensions[1].extensionId); 139 extensions[1].extensionId);
132 assertEquals(MOUNTED_MULTIPLE_PROVIDING_EXTENSION.extensionId, 140 assertEquals(MOUNTED_MULTIPLE_PROVIDING_EXTENSION.extensionId,
133 extensions[2].extensionId); 141 extensions[2].extensionId);
134 assertEquals(NOT_MOUNTED_FILE_PROVIDING_EXTENSION.extensionId, 142 assertEquals(NOT_MOUNTED_FILE_PROVIDING_EXTENSION.extensionId,
135 extensions[3].extensionId); 143 extensions[3].extensionId);
136 assertEquals(NOT_MOUNTED_DEVICE_PROVIDING_EXTENSION.extensionId, 144 assertEquals(NOT_MOUNTED_DEVICE_PROVIDING_EXTENSION.extensionId,
137 extensions[4].extensionId); 145 extensions[4].extensionId);
138 }), callback); 146 }), callback);
139 } 147 }
140 148
141 function testGetMountableProviders(callback) { 149 function testGetMountableProviders(callback) {
142 var model = new ProvidersModel(volumeManager); 150 var model = new ProvidersModel(volumeManager);
143 reportPromise(model.getMountableProviders().then( 151 reportPromise(model.getMountableProviders().then(
144 function(extensions) { 152 function(extensions) {
145 assertEquals(2, extensions.length); 153 assertEquals(2, extensions.length);
146 assertEquals(NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId, 154 assertEquals(NOT_MOUNTED_SINGLE_PROVIDING_EXTENSION.extensionId,
147 extensions[0].extensionId); 155 extensions[0].extensionId);
148 assertEquals(MOUNTED_MULTIPLE_PROVIDING_EXTENSION.extensionId, 156 assertEquals(MOUNTED_MULTIPLE_PROVIDING_EXTENSION.extensionId,
149 extensions[1].extensionId); 157 extensions[1].extensionId);
150 }), callback); 158 }), callback);
151 } 159 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698