Commit ef99d7ee authored by shimazu's avatar shimazu Committed by Commit bot

Reland of Use the serviceworker with mojo by default (patchset #1 id:1 of...

Reland of Use the serviceworker with mojo by default (patchset #1 id:1 of https://codereview.chromium.org/2443983002/ )

Reason for revert:
Hopefully fixed the issue on https://crbug.com/658702.

It was a flaky bug, so let's keep our eyes open for the flakiness dashboard for several days.

Original issue's description:
> Revert of Use the serviceworker with mojo by default (patchset #2 id:20001 of https://codereview.chromium.org/2436223004/ )
>
> Reason for revert:
> I think this is causing InstallableManagerBrowserTest.CheckManifest404 to crash, see http://crbug.com/658702
>
> Original issue's description:
> > Use the serviceworker with mojo by default
> >
> > This patch changes --mojo-service-worker to --disable-mojo-service-worker.
> > Let's try mojo for the service worker.
> >
> > BUG=629701
> >
> > Committed: https://crrev.com/391fa63bcefd25b35addf678356828dded5ae71e
> > Cr-Commit-Position: refs/heads/master@{#427013}
>
> TBR=horo@chromium.org,avi@chromium.org,shimazu@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=629701
>
> Committed: https://crrev.com/cd13e5fd2bc139909075578e71483e0069246eab
> Cr-Commit-Position: refs/heads/master@{#427088}

TBR=horo@chromium.org,avi@chromium.org,dmazzoni@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=629701

Review-Url: https://codereview.chromium.org/2477223002
Cr-Commit-Position: refs/heads/master@{#430226}
parent 6ff44039
......@@ -1635,6 +1635,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kDisableLocalStorage,
switches::kDisableLogging,
switches::kDisableMediaSuspend,
switches::kDisableMojoServiceWorker,
switches::kDisableNotifications,
switches::kDisableOverlayScrollbar,
switches::kDisablePepper3DImageChromium,
......@@ -1710,7 +1711,6 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kMaxUntiledLayerHeight,
switches::kMemoryMetrics,
switches::kMojoLocalStorage,
switches::kMojoServiceWorker,
switches::kMSEAudioBufferSizeLimit,
switches::kMSEVideoBufferSizeLimit,
switches::kNoReferrers,
......
......@@ -17,6 +17,7 @@
#include "content/browser/service_worker/embedded_worker_test_helper.h"
#include "content/browser/service_worker/service_worker_context_core.h"
#include "content/browser/service_worker/service_worker_context_wrapper.h"
#include "content/browser/service_worker/service_worker_test_utils.h"
#include "content/common/service_worker/embedded_worker.mojom.h"
#include "content/common/service_worker/embedded_worker_messages.h"
#include "content/common/service_worker/embedded_worker_start_params.h"
......@@ -135,23 +136,8 @@ class EmbeddedWorkerInstanceTest : public testing::Test,
DISALLOW_COPY_AND_ASSIGN(EmbeddedWorkerInstanceTest);
};
class EmbeddedWorkerInstanceTestP : public EmbeddedWorkerInstanceTest,
public testing::WithParamInterface<bool> {
protected:
void SetUp() override {
is_mojo_enabled_ = GetParam();
if (is_mojo_enabled()) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kMojoServiceWorker);
}
EmbeddedWorkerInstanceTest::SetUp();
}
bool is_mojo_enabled() { return is_mojo_enabled_; }
private:
bool is_mojo_enabled_ = false;
};
class EmbeddedWorkerInstanceTestP
: public MojoServiceWorkerTestP<EmbeddedWorkerInstanceTest> {};
// A helper to simulate the start worker sequence is stalled in a worker
// process.
......
......@@ -385,20 +385,11 @@ bool CheckHeader(const base::DictionaryValue& dict,
} // namespace
class ServiceWorkerBrowserTest : public testing::WithParamInterface<bool>,
public ContentBrowserTest {
class ServiceWorkerBrowserTest
: public MojoServiceWorkerTestP<ContentBrowserTest> {
protected:
using self = ServiceWorkerBrowserTest;
void SetUp() override {
is_mojo_enabled_ = GetParam();
if (is_mojo_enabled()) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kMojoServiceWorker);
}
ContentBrowserTest::SetUp();
}
void SetUpOnMainThread() override {
ASSERT_TRUE(embedded_test_server()->Start());
StoragePartition* partition = BrowserContext::GetDefaultStoragePartition(
......@@ -426,7 +417,6 @@ class ServiceWorkerBrowserTest : public testing::WithParamInterface<bool>,
ServiceWorkerContextWrapper* wrapper() { return wrapper_.get(); }
ServiceWorkerContext* public_context() { return wrapper(); }
bool is_mojo_enabled() const { return is_mojo_enabled_; }
void AssociateRendererProcessToPattern(const GURL& pattern) {
wrapper_->process_manager()->AddProcessReferenceToPattern(
......@@ -435,7 +425,6 @@ class ServiceWorkerBrowserTest : public testing::WithParamInterface<bool>,
private:
scoped_refptr<ServiceWorkerContextWrapper> wrapper_;
bool is_mojo_enabled_ = false;
};
class ConsoleListener : public EmbeddedWorkerInstance::Listener {
......
......@@ -710,9 +710,9 @@ class ServiceWorkerContextRecoveryTest
protected:
void SetUp() override {
if (is_mojo_enabled()) {
if (!is_mojo_enabled()) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kMojoServiceWorker);
switches::kDisableMojoServiceWorker);
}
ServiceWorkerContextTest::SetUp();
}
......
......@@ -19,18 +19,14 @@ class MojoServiceWorkerTestP : public TestClass,
public testing::WithParamInterface<bool> {
protected:
void SetUp() override {
is_mojo_enabled_ = GetParam();
if (is_mojo_enabled()) {
if (!is_mojo_enabled()) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kMojoServiceWorker);
switches::kDisableMojoServiceWorker);
}
TestClass::SetUp();
}
bool is_mojo_enabled() const { return is_mojo_enabled_; }
private:
bool is_mojo_enabled_ = false;
bool is_mojo_enabled() const { return GetParam(); }
};
template <typename Arg>
......
......@@ -134,8 +134,8 @@ bool ServiceWorkerUtils::AllOriginsMatchAndCanAccessServiceWorkers(
// static
bool ServiceWorkerUtils::IsMojoForServiceWorkerEnabled() {
return base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kMojoServiceWorker);
return !base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDisableMojoServiceWorker);
}
bool LongestScopeMatcher::MatchLongest(const GURL& scope) {
......
......@@ -644,8 +644,8 @@ const char kMHTMLSkipNostoreAll[] = "skip-nostore-all";
// Use a Mojo-based LocalStorage implementation.
const char kMojoLocalStorage[] = "mojo-local-storage";
// Use a Mojo-based ServiceWorker implementation.
const char kMojoServiceWorker[] = "mojo-service-worker";
// Disables a Mojo-based ServiceWorker implementation.
const char kDisableMojoServiceWorker[] = "disable-mojo-service-worker";
// Mutes audio sent to the audio device so it is not audible during
// automated testing.
......
......@@ -72,6 +72,7 @@ CONTENT_EXPORT extern const char kDisablePreferCompositingToLCDText[];
CONTENT_EXPORT extern const char kDisableKillAfterBadIPC[];
CONTENT_EXPORT extern const char kDisableLocalStorage[];
CONTENT_EXPORT extern const char kDisableLogging[];
CONTENT_EXPORT extern const char kDisableMojoServiceWorker[];
CONTENT_EXPORT extern const char kDisableNamespaceSandbox[];
CONTENT_EXPORT extern const char kDisableNativeGpuMemoryBuffers[];
CONTENT_EXPORT extern const char kDisableNotifications[];
......@@ -193,7 +194,6 @@ CONTENT_EXPORT extern const char kMHTMLGeneratorOption[];
CONTENT_EXPORT extern const char kMHTMLSkipNostoreMain[];
CONTENT_EXPORT extern const char kMHTMLSkipNostoreAll[];
CONTENT_EXPORT extern const char kMojoLocalStorage[];
CONTENT_EXPORT extern const char kMojoServiceWorker[];
CONTENT_EXPORT extern const char kMuteAudio[];
CONTENT_EXPORT extern const char kNoReferrers[];
CONTENT_EXPORT extern const char kNoSandbox[];
......
......@@ -18,7 +18,7 @@ crbug.com/608375 http/tests/appcache/offline-access.html [ Crash Timeout ]
crbug.com/608375 http/tests/appcache/remove-cache.html [ Failure Timeout ]
crbug.com/608375 http/tests/appcache/top-frame-2.html [ Timeout ]
crbug.com/608375 http/tests/serviceworker/appcache-ordering-main.html [ Failure ]
crbug.com/608375 virtual/mojo-service-worker/http/tests/serviceworker/appcache-ordering-main.html [ Failure ]
crbug.com/608375 virtual/disable-mojo-service-worker/http/tests/serviceworker/appcache-ordering-main.html [ Failure ]
crbug.com/608375 virtual/service-worker-navigation-preload/http/tests/serviceworker/appcache-ordering-main.html [ Failure ]
# https://crbug.com/575210: PlzNavigate: history navigation support
......
......@@ -361,7 +361,7 @@ crbug.com/635619 virtual/layout_ng/fast/block/float/width-update-after-clear.htm
# Requires ServiceWorkerNavigationPreload feature enabled. Run under
# virtual/service-worker-navigation-preload only.
crbug.com/649558 http/tests/serviceworker/navigation-preload/ [ Skip ]
crbug.com/649558 virtual/mojo-service-worker/http/tests/serviceworker/navigation-preload/ [ Skip ]
crbug.com/649558 virtual/disable-mojo-service-worker/http/tests/serviceworker/navigation-preload/ [ Skip ]
# Run these tests with under virtual/scalefactor... only.
crbug.com/567837 fast/hidpi/static [ Skip ]
......@@ -956,7 +956,7 @@ crbug.com/480769 http/tests/inspector/service-workers/service-workers-redundant.
crbug.com/569901 [ Debug ] http/tests/serviceworker/navigation-redirect.html [ Pass Failure ]
crbug.com/640947 [ Win ] http/tests/serviceworker/foreign-fetch-cors.html [ Pass Failure ]
crbug.com/640947 [ Win ] virtual/mojo-service-worker/http/tests/serviceworker/foreign-fetch-cors.html [ Pass Failure ]
crbug.com/640947 [ Win ] virtual/disable-mojo-service-worker/http/tests/serviceworker/foreign-fetch-cors.html [ Pass Failure ]
crbug.com/599670 [ Win Linux ] http/tests/inspector/resource-parameters-ipv6.html [ Failure Pass ]
......
......@@ -300,9 +300,9 @@
"args": ["--enable-features=WebAssembly"]
},
{
"prefix": "mojo-service-worker",
"prefix": "disable-mojo-service-worker",
"base": "http/tests/serviceworker",
"args": ["--mojo-service-worker"]
"args": ["--disable-mojo-service-worker"]
},
{
"prefix": "service-worker-navigation-preload",
......
This directory is for testing the service workers with mojo by using '--mojo-service-worker' flag.
This directory is for testing the service workers with mojo by using '--disable-mojo-service-worker' flag.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment