Switch DevToolsUIBindings::LoadNetworkResource to using SimpleURLLoader

... and do the same in ShellDevtoolsBindings (sigh).
Also, add a browser test to cover the implementation in DevToolsUIBindings.

Bug: 721408
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo
Change-Id: I83bd0c8160feb6a0de764bb4f6615ef421516f4b
Reviewed-on: https://chromium-review.googlesource.com/973811
Commit-Queue: Andrey Kosyakov <[email protected]>
Reviewed-by: Dmitry Gozman <[email protected]>
Cr-Commit-Position: refs/heads/master@{#544948}
diff --git a/content/shell/browser/shell_devtools_bindings.h b/content/shell/browser/shell_devtools_bindings.h
index 26b0f1f..2682188e 100644
--- a/content/shell/browser/shell_devtools_bindings.h
+++ b/content/shell/browser/shell_devtools_bindings.h
@@ -6,8 +6,10 @@
 #define CONTENT_SHELL_BROWSER_SHELL_DEVTOOLS_BINDINGS_H_
 
 #include <memory>
+#include <set>
 
 #include "base/compiler_specific.h"
+#include "base/containers/unique_ptr_adapters.h"
 #include "base/macros.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/weak_ptr.h"
@@ -83,7 +85,13 @@
 #endif
   using PendingRequestsMap = std::map<const net::URLFetcher*, int>;
   PendingRequestsMap pending_requests_;
+
+  class NetworkResourceLoader;
+  std::set<std::unique_ptr<NetworkResourceLoader>, base::UniquePtrComparator>
+      loaders_;
+
   base::DictionaryValue preferences_;
+
   using ExtensionsAPIs = std::map<std::string, std::string>;
   ExtensionsAPIs extensions_api_;
   base::WeakPtrFactory<ShellDevToolsBindings> weak_factory_;