| Index: chrome/worker/worker_uitest.cc
|
| diff --git a/chrome/worker/worker_uitest.cc b/chrome/worker/worker_uitest.cc
|
| index 7f239f5f4d4523e30c926e79b083882099972258..e33fde0c0a99558f66126567f65a68a0ed0d6a7a 100644
|
| --- a/chrome/worker/worker_uitest.cc
|
| +++ b/chrome/worker/worker_uitest.cc
|
| @@ -156,30 +156,6 @@ class WorkerTest : public UILayoutTest {
|
| EXPECT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, tab->NavigateToURL(about_url));
|
| }
|
|
|
| - void RunWorkerFileSystemLayoutTest(const std::string& test_case_file_name) {
|
| - FilePath worker_test_dir;
|
| - worker_test_dir = worker_test_dir.AppendASCII("fast");
|
| -
|
| - FilePath filesystem_test_dir;
|
| - filesystem_test_dir = filesystem_test_dir.AppendASCII("filesystem");
|
| - filesystem_test_dir = filesystem_test_dir.AppendASCII("workers");
|
| - InitializeForLayoutTest(worker_test_dir, filesystem_test_dir, kNoHttpPort);
|
| -
|
| - FilePath resource_dir;
|
| - resource_dir = resource_dir.AppendASCII("resources");
|
| - AddResourceForLayoutTest(worker_test_dir.AppendASCII("filesystem"),
|
| - resource_dir);
|
| -
|
| - RunLayoutTest(test_case_file_name, kNoHttpPort);
|
| -
|
| - // Navigate to a blank page so that any workers are cleaned up.
|
| - // This helps leaks trackers do a better job of reporting.
|
| - scoped_refptr<TabProxy> tab(GetActiveTab());
|
| - DCHECK(tab.get());
|
| - GURL about_url(chrome::kAboutBlankURL);
|
| - EXPECT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, tab->NavigateToURL(about_url));
|
| - }
|
| -
|
| bool NavigateAndWaitForAuth(TabProxy* tab, const GURL& url) {
|
| // Pass a large number of navigations to tell the tab to block until an auth
|
| // dialog pops up.
|
| @@ -705,29 +681,97 @@ TEST_F(WorkerTest, FLAKY_QueuedSharedWorkerStartedFromOtherTab) {
|
| ASSERT_TRUE(WaitForProcessCountToBe(2, max_workers_per_tab+1));
|
| }
|
|
|
| -// FileSystem worker tests.
|
| -// They are disabled for now as the feature is not enabled by default.
|
| -// http://crbug.com/32277
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemTemporaryTest) {
|
| +class WorkerFileSystemTest : public WorkerTest {
|
| + protected:
|
| + void RunWorkerFileSystemLayoutTest(const std::string& test_case_file_name) {
|
| + FilePath worker_test_dir;
|
| + worker_test_dir = worker_test_dir.AppendASCII("fast");
|
| +
|
| + FilePath filesystem_test_dir;
|
| + filesystem_test_dir = filesystem_test_dir.AppendASCII("filesystem");
|
| + filesystem_test_dir = filesystem_test_dir.AppendASCII("workers");
|
| + InitializeForLayoutTest(worker_test_dir, filesystem_test_dir, kNoHttpPort);
|
| +
|
| + FilePath resource_dir;
|
| + resource_dir = resource_dir.AppendASCII("resources");
|
| + AddResourceForLayoutTest(worker_test_dir.AppendASCII("filesystem"),
|
| + resource_dir);
|
| +
|
| + // FS tests also rely on common files in js/resources.
|
| + FilePath js_dir = worker_test_dir.AppendASCII("js");
|
| + FilePath js_resource_dir;
|
| + js_resource_dir = js_resource_dir.AppendASCII("resources");
|
| + AddResourceForLayoutTest(js_dir, js_resource_dir);
|
| +
|
| + RunLayoutTest(test_case_file_name, kNoHttpPort);
|
| +
|
| + // Navigate to a blank page so that any workers are cleaned up.
|
| + // This helps leaks trackers do a better job of reporting.
|
| + scoped_refptr<TabProxy> tab(GetActiveTab());
|
| + ASSERT_TRUE(tab.get());
|
| + GURL about_url(chrome::kAboutBlankURL);
|
| + EXPECT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, tab->NavigateToURL(about_url));
|
| + }
|
| +};
|
| +
|
| +TEST_F(WorkerFileSystemTest, Temporary) {
|
| RunWorkerFileSystemLayoutTest("simple-temporary.html");
|
| }
|
|
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemPersistentTest) {
|
| +TEST_F(WorkerFileSystemTest, Persistent) {
|
| RunWorkerFileSystemLayoutTest("simple-persistent.html");
|
| }
|
|
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemSyncTemporaryTest) {
|
| +TEST_F(WorkerFileSystemTest, SyncTemporary) {
|
| RunWorkerFileSystemLayoutTest("simple-temporary-sync.html");
|
| }
|
|
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemSyncPersistentTest) {
|
| +TEST_F(WorkerFileSystemTest, SyncPersistent) {
|
| RunWorkerFileSystemLayoutTest("simple-persistent-sync.html");
|
| }
|
|
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemAsyncOperationsTest) {
|
| +TEST_F(WorkerFileSystemTest, AsyncOperations) {
|
| RunWorkerFileSystemLayoutTest("async-operations.html");
|
| }
|
|
|
| -TEST_F(WorkerTest, DISABLED_WorkerFileSystemSyncOperationsTest) {
|
| +TEST_F(WorkerFileSystemTest, SyncOperations) {
|
| RunWorkerFileSystemLayoutTest("sync-operations.html");
|
| }
|
| +
|
| +TEST_F(WorkerFileSystemTest, FileEntryToURISync) {
|
| + RunWorkerFileSystemLayoutTest("file-entry-to-uri-sync.html");
|
| +}
|
| +
|
| +#if defined(OS_LINUX)
|
| +// These tests fail on Linux due to an assert in WebKit's RNG.
|
| +// See http://webkit.org/b/55728.
|
| +#define FileFromFileEntry DISABLED_FileFromFileEntry
|
| +#define FileFromFileEntrySync DISABLED_FileFromFileEntrySync
|
| +#define FileWriterTruncateExtend DISABLED_FileWriterTruncateExtend
|
| +#define FileWriterSyncTruncateExtend DISABLED_FileWriterSyncTruncateExtend
|
| +#define FileWriterSyncWriteOverlapped DISABLED_FileWriterSyncWriteOverlapped
|
| +#elif defined(OS_WIN)
|
| +// See http://crbug.com/75548
|
| +#define FileWriterTruncateExtend DISABLED_FileWriterTruncateExtend
|
| +#define FileWriterSyncTruncateExtend DISABLED_FileWriterSyncTruncateExtend
|
| +#define FileWriterSyncWriteOverlapped DISABLED_FileWriterSyncWriteOverlapped
|
| +#endif
|
| +TEST_F(WorkerFileSystemTest, FileFromFileEntry) {
|
| + RunWorkerFileSystemLayoutTest("file-from-file-entry.html");
|
| +}
|
| +
|
| +TEST_F(WorkerFileSystemTest, FileFromFileEntrySync) {
|
| + RunWorkerFileSystemLayoutTest("file-from-file-entry-sync.html");
|
| +}
|
| +
|
| +TEST_F(WorkerFileSystemTest, FileWriterTruncateExtend) {
|
| + RunWorkerFileSystemLayoutTest("file-writer-truncate-extend.html");
|
| +}
|
| +
|
| +TEST_F(WorkerFileSystemTest, FileWriterSyncTruncateExtend) {
|
| + RunWorkerFileSystemLayoutTest("file-writer-sync-truncate-extend.html");
|
| +}
|
| +
|
| +TEST_F(WorkerFileSystemTest, FileWriterSyncWriteOverlapped) {
|
| + RunWorkerFileSystemLayoutTest("file-writer-sync-write-overlapped.html");
|
| +}
|
|
|