Supervised user whitelists: Cleanup
[chromium-blink-merge.git] / ui / file_manager / gallery / js / gallery_data_model_unittest.js
blob1d015e16ac3dc1cbacc4f83d3cfb1ba813c81081
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
3 // found in the LICENSE file.
6 var model;
7 var fileSystem;
8 var item;
10 /**
11  * Mock thumbnail model.
12  */
13 function ThumbnailModel() {
16 ThumbnailModel.prototype.get = function(entries) {
17   return Promise.resolve(entries.map(function() {
18     return {};
19   }));
22 function setUp() {
23   model = new GalleryDataModel(
24       /* Mock MetadataModel */{
25         get: function() {
26           return Promise.resolve([{}]);
27         }
28       },
29       /* Mock EntryListWatcher */{});
30   fileSystem = new MockFileSystem('volumeId');
31   item = new Gallery.Item(
32       new MockEntry(fileSystem, '/test.jpg'),
33       null,
34       /* metadataItem */ {},
35       /* thumbnailMetadataItem */ {},
36       /* original */ true);
39 function testSaveItemOverwrite(callback) {
40   // Mocking the saveToFile method.
41   item.saveToFile = function(
42       volumeManager,
43       metadataModel,
44       fallbackDir,
45       overwrite,
46       canvas,
47       callback) {
48     assertTrue(overwrite);
49     callback(true);
50   };
51   model.push(item);
52   reportPromise(
53       model.saveItem({}, item, document.createElement('canvas'), true).
54           then(function() { assertEquals(1, model.length); }),
55       callback);
58 function testSaveItemNewFile(callback) {
59   // Mocking the saveToFile method.
60   item.saveToFile = function(
61       volumeManager,
62       metadataModel,
63       fallbackDir,
64       overwrite,
65       canvas,
66       callback) {
67     assertFalse(overwrite);
68     // Gallery item track new file.
69     this.entry_ = new MockEntry(fileSystem, '/test (1).jpg');
70     callback(true);
71   };
72   model.push(item);
73   reportPromise(
74       model.saveItem({}, item, document.createElement('canvas'), false).
75           then(function() { assertEquals(2, model.length); }),
76       callback);