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

Unified Diff: LayoutTests/http/tests/inspector/filesystem/async-callstack-filesystem.html

Issue 383123009: DevTools: Support async call stacks for FileSystem API (part 1). (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: 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
Index: LayoutTests/http/tests/inspector/filesystem/async-callstack-filesystem.html
diff --git a/LayoutTests/http/tests/inspector/filesystem/async-callstack-filesystem.html b/LayoutTests/http/tests/inspector/filesystem/async-callstack-filesystem.html
new file mode 100644
index 0000000000000000000000000000000000000000..8ce9974ffa6f56c9a4fab8d1c9be4b4e49ee64ed
--- /dev/null
+++ b/LayoutTests/http/tests/inspector/filesystem/async-callstack-filesystem.html
@@ -0,0 +1,111 @@
+<html>
+<head>
+<script src="../inspector-test.js"></script>
+<script src="../debugger-test.js"></script>
+<script>
+
+window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
+
+var fileSystem;
+var tmpFileName;
+var fileEntry;
+
+var errorHandler = function(e)
+{
+ var msg = "FAIL: Error: " + e;
+ console.error(msg);
+ if (testRunner)
+ testRunner.logToStderr(msg);
+ errorHandler = function() { debugger; };
+ deleteTmpFile();
+}
+
+function testFunction()
+{
+ setTimeout(timeout, 0);
+}
+
+function timeout()
+{
+ var wrongType = window.TEMPORARY + window.PERSISTENT + 1234567;
+ window.requestFileSystem(wrongType, 1024 /* bytes */, errorHandler, expectError);
+}
+
+function expectError()
+{
+ debugger;
+ window.requestFileSystem(window.TEMPORARY, 1024 /* bytes */, onInitFileSystem, errorHandler);
+}
+
+function onInitFileSystem(fs)
+{
+ fileSystem = fs;
+ debugger;
+ tmpFileName = "async-callstack-filesystem-tmp-" + Date.now() + ".txt"
+ fileSystem.root.getFile(tmpFileName, { create: true, exclusive: true }, onFileCreated, errorHandler);
+}
+
+function onFileCreated(fe)
+{
+ fileEntry = fe;
+ debugger;
+ fileEntry.createWriter(onFileWriterCreated, errorHandler);
+}
+
+function onFileWriterCreated(fileWriter)
+{
+ debugger;
+ fileWriter.onwriteend = onFileWriteEnd;
+ fileWriter.onerror = errorHandler;
+ var blob = new Blob(["Lorem Ipsum"], { type: "text/plain" });
+ fileWriter.write(blob);
+}
+
+function onFileWriteEnd()
+{
+ debugger;
+ fileEntry.file(onFileEntryFile, errorHandler);
+}
+
+function onFileEntryFile(file)
+{
+ debugger;
+ var fileReader = new FileReader();
+ fileReader.onloadend = onFileReadEnd;
+ fileReader.onerror = errorHandler;
+ fileReader.readAsText(file);
+}
+
+function onFileReadEnd()
+{
+ var content = this.result;
+ debugger;
+ deleteTmpFile();
+}
+
+function deleteTmpFile()
+{
+ fileEntry.remove(onFileDeleted, errorHandler);
+}
+
+function onFileDeleted()
+{
+ debugger;
+}
+
+var test = function()
+{
+ var totalDebuggerStatements = 8;
+ var maxAsyncCallStackDepth = 4;
+ InspectorTest.runAsyncCallStacksTest(totalDebuggerStatements, maxAsyncCallStackDepth);
+}
+
+</script>
+</head>
+
+<body onload="runTest()">
+<p>
+Tests asynchronous call stacks for FileSystem API.
+</p>
+</body>
+</html>

Powered by Google App Engine
This is Rietveld 408576698