On adding
DCHECK(!delegate_)
to ContentSecurityPolicy::BindToDelegate, multiple service worker related tests failed in https://chromium-review.googlesource.com/c/chromium/src/+/1364298.
Example failures: ServiceWorkerTestWithJSBindings/ServiceWorkerOnStartupEventTest.Event/0
ServiceWorkerLazyBackgroundTestWithNativeBindings/ServiceWorkerLazyBackgroundTest.FilteredEventsAfterRestart/0
ServiceWorkerLazyBackgroundTestWithNativeBindings/ServiceWorkerLazyBackgroundTest.EventsToStoppedExtension/0
ServiceWorkerTestWithJSBindings/ServiceWorkerTest.ServiceWorkerSuspensionOnExtensionUnload/0
ServiceWorkerTestWithNativeBindings/ServiceWorkerBasedBackgroundTest.Basic/0
ChromeServiceWorkerNavigationHintTest.Started
ServiceWorkerTestWithJSBindings/ServiceWorkerRegistrationAtStartupTest.ExtensionActivationDoesNotReregister/0
ServiceWorkerLazyBackgroundTestWithNativeBindings/ServiceWorkerLazyBackgroundTest.EventsAfterRestart/0
ServiceWorkerTestWithNativeBindings/ServiceWorkerOnStartupEventTest.Event/0
ServiceWorkerTestWithJSBindings/ServiceWorkerBasedBackgroundTest.Basic/0
NoStatePrefetchBrowserTest.ServiceWorkerIntercept
ServiceWorkerTestWithNativeBindings/ServiceWorkerRegistrationAtStartupTest.ExtensionActivationDoesNotReregister/0
ServiceWorkerLazyBackgroundTestWithJSBindings/ServiceWorkerLazyBackgroundTest.EventsAfterRestart/0
ServiceWorkerTestWithNativeBindings/ServiceWorkerTest.EventsToStoppedWorker/0
ServiceWorkerTestWithNativeBindings/ServiceWorkerTest.ServiceWorkerSuspensionOnExtensionUnload/0
ServiceWorkerLazyBackgroundTestWithJSBindings/ServiceWorkerLazyBackgroundTest.EventsToStoppedExtension/0
ServiceWorkerTestWithJSBindings/ServiceWorkerTest.EventsToStoppedWorker/0
ServiceWorkerLazyBackgroundTestWithJSBindings/ServiceWorkerLazyBackgroundTest.FilteredEventsAfterRestart/0
Example stack trace:
[1:14:1217/154755.396093:FATAL:content_security_policy.cc(161)] Check failed: !delegate_.
#0 0x5633b4f3b70f base::debug::StackTrace::StackTrace()
#1 0x5633b4e7cb0b logging::LogMessage::~LogMessage()
#2 0x5633b8ec3519 blink::ContentSecurityPolicy::BindToDelegate()
#3 0x5633b9f8ca54 blink::ServiceWorkerGlobalScope::EvaluateClassicScript()
#4 0x5633b9f8ebff _ZN4base8internal13FunctorTraitsIMN5blink24ServiceWorkerGlobalScopeEFvRKNS2_4KURLEN3WTF6StringENSt3__110unique_ptrINS7_6VectorIcLj0ENS7_18PartitionAllocatorEEENS9_14default_deleteISD_EEEEEvE6InvokeISI_NS2_14WeakPersistentIS3_EEJS4_S8_SG_EEEvT_OT0_DpOT1_
#5 0x5633b49fe609 WTF::ThreadCheckingCallbackWrapper<>::Run()
#6 0x5633b9f8c70f blink::ServiceWorkerGlobalScope::ReadyToEvaluateScript()
#7 0x5633ba6f2aae content::ServiceWorkerContextClient::InitializeGlobalScope()
#8 0x5633b28a1a5c content::mojom::ServiceWorkerStubDispatch::Accept()
#9 0x5633b5f4da82 mojo::InterfaceEndpointClient::HandleValidatedMessage()
#10 0x5633b5f502a6 mojo::FilterChain::Accept()
#11 0x5633b5f4ef82 mojo::InterfaceEndpointClient::HandleIncomingMessage()
#12 0x5633b5f566dc mojo::internal::MultiplexRouter::ProcessIncomingMessage()
#13 0x5633b5f55aa0 mojo::internal::MultiplexRouter::Accept()
#14 0x5633b5f502a6 mojo::FilterChain::Accept()
#15 0x5633b5f4af1d mojo::Connector::ReadSingleMessage()
#16 0x5633b5f4bad4 mojo::Connector::ReadAllAvailableMessages()
#17 0x5633b5f4b936 mojo::Connector::OnHandleReadyInternal()
#18 0x5633b27f33d4 mojo::SimpleWatcher::DiscardReadyState()
#19 0x5633b55f58f1 mojo::SimpleWatcher::OnHandleReady()
#20 0x5633b29e84bc _ZN4base8internal7InvokerINS0_9BindStateIMN3viz14GpuServiceImplEFvN3gfx21GenericSharedMemoryIdEiRKN3gpu9SyncTokenEEJNS_7WeakPtrIS4_EES6_iS8_EEEFvvEE7RunImplISC_NSt3__15tupleIJSE_S6_iS8_EEEJLm0ELm1ELm2ELm3EEEEvOT_OT0_NSJ_16integer_sequenceImJXspT1_EEEE
#21 0x5633b4e87c09 base::debug::TaskAnnotator::RunTask()
#22 0x5633b4edfdef base::sequence_manager::internal::ThreadControllerImpl::DoWork()
#23 0x5633b0a59458 _ZN4base8internal7InvokerINS0_9BindStateIMN12_GLOBAL__N_116SimpleHttpServerEFviEJNS_7WeakPtrIS4_EEiEEEFvvEE7RunOnceEPNS0_13BindStateBaseE
#24 0x5633b4e87c09 base::debug::TaskAnnotator::RunTask()
#25 0x5633b4ee2f76 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl()
#26 0x5633b4e898fd base::MessagePumpDefault::Run()
#27 0x5633b4ee3769 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run()
#28 0x5633b4eb2ae6 base::RunLoop::Run()
#29 0x5633b4f0901a base::Thread::Run()
#30 0x5633b4f093a8 base::Thread::ThreadMain()
#31 0x5633b4f4ff58 base::(anonymous namespace)::ThreadFunc()
#32 0x7f909902c184 start_thread
#33 0x7f909325903d clone
Assigning to Andy for now.