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

Unified Diff: chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.js

Issue 336923002: Adds API test for imageWriterPrivate.writeFromFile (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Chrome OS fixes. Created 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.html ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.js
diff --git a/chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.js b/chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.js
new file mode 100644
index 0000000000000000000000000000000000000000..ba9c23a8a447e6e9b3bfad7d42f1b69d88bcc789
--- /dev/null
+++ b/chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.js
@@ -0,0 +1,71 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+function assertNotNullOrUndefined(value, message) {
+ chrome.test.assertTrue(value !== null, message);
+ chrome.test.assertTrue(value !== undefined, message);
+}
+
+function testWriteFromFile() {
+ var fileEntry;
+ var storageDevice;
+ var currentStage = "none";
+ var currentProgress = -1;
+ var started = true;
+
+ function chooseEntryCallback(entry) {
+ fileEntry = entry;
+
+ chrome.imageWriterPrivate.listRemovableStorageDevices(
+ listDevicesCallback);
+ }
+
+ function listDevicesCallback(deviceList) {
+ chrome.test.assertTrue(deviceList.length >= 1);
+ storageDevice = deviceList[0];
+
+ startWrite();
+ }
+
+ function startWrite() {
+ assertNotNullOrUndefined(fileEntry, "FileEntry should be defined.");
+ assertNotNullOrUndefined(
+ storageDevice.storageUnitId, "Storage Unit should be defined.");
+
+ chrome.imageWriterPrivate.writeFromFile(
+ storageDevice.storageUnitId,
+ fileEntry,
+ startWriteCallback);
+ }
+
+ function startWriteCallback() {
+ started = true;
+ }
+
+ function writeProgressCallback(progressInfo) {
+ currentProgress = progressInfo.percentComplete;
+ currentStage = progressInfo.stage;
+ }
+
+ function writeCompleteCallback() {
+ chrome.test.assertTrue(started, "Complete triggered before being started.");
+ chrome.test.assertEq(100, currentProgress);
+ chrome.test.succeed("Write completed successfully.");
+ }
+
+ function writeErrorCallback(message) {
+ chrome.test.fail("An error occurred during writing.");
+ }
+
+ chrome.imageWriterPrivate.onWriteProgress.
+ addListener(writeProgressCallback);
+ chrome.imageWriterPrivate.onWriteComplete.
+ addListener(writeCompleteCallback);
+ chrome.imageWriterPrivate.onWriteError.
+ addListener(writeErrorCallback);
+
+ chrome.fileSystem.chooseEntry(chooseEntryCallback);
+}
+
+testWriteFromFile();
« no previous file with comments | « chrome/test/data/extensions/api_test/image_writer_private/write_from_file/test.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698