Replace base::Timer with behavior-specific timers in net/

This CL replaces base::Timer with its subclasses.
As base::Timer changes its behavior subject to its construction time
flags, that makes hard to see the actual timer behavior, especially
it's unclear when a timer is injected from other components.
Also, that OnceCallback support of base::Timer is hard to implement on
the dynamically determined invocation pattern.

Bug: 850247
Change-Id: Iaca4daa947e64a96a25a852ed1a1db332a0d2e5d
Reviewed-on: https://chromium-review.googlesource.com/1125712
Reviewed-by: Matt Menke <[email protected]>
Commit-Queue: Taiju Tsuiki <[email protected]>
Cr-Commit-Position: refs/heads/master@{#573212}
diff --git a/net/websockets/websocket_stream_create_test_base.h b/net/websockets/websocket_stream_create_test_base.h
index c4ed5be..228789c 100644
--- a/net/websockets/websocket_stream_create_test_base.h
+++ b/net/websockets/websocket_stream_create_test_base.h
@@ -45,7 +45,7 @@
                               const url::Origin& origin,
                               const GURL& site_for_cookies,
                               const HttpRequestHeaders& additional_headers,
-                              std::unique_ptr<base::Timer> timer);
+                              std::unique_ptr<base::OneShotTimer> timer);
 
   static std::vector<HeaderKeyValuePair> RequestHeadersToVector(
       const HttpRequestHeaders& headers);