Reland "Enable the clang style plugin in rtc_base/"

This is a reland of Id63f0deb7b335690157ab157c35177b7836688da.

Original change's description:
> Enable the clang style plugin in rtc_base/
> 
> Enabled the plugin and cleaned up all issues it found.
> 
> Bug: webrtc:163
> Change-Id: Id63f0deb7b335690157ab157c35177b7836688da
> Reviewed-on: https://webrtc-review.googlesource.com/14660
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20401}

Bug: webrtc:163
Change-Id: I861a5fe741215115b0e7a2be9c0786836ff5376e
Reviewed-on: https://webrtc-review.googlesource.com/15040
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20416}
diff --git a/rtc_base/testutils.h b/rtc_base/testutils.h
index e054880..a3ced7c 100644
--- a/rtc_base/testutils.h
+++ b/rtc_base/testutils.h
@@ -60,6 +60,9 @@
 
 class StreamSink : public sigslot::has_slots<> {
  public:
+  StreamSink();
+  ~StreamSink() override;
+
   void Monitor(StreamInterface* stream) {
    stream->SignalEvent.connect(this, &StreamSink::OnEvent);
    events_.erase(stream);
@@ -159,16 +162,15 @@
 
 class StreamSource : public StreamInterface {
 public:
-  StreamSource() {
-    Clear();
-  }
+ StreamSource();
+ ~StreamSource() override;
 
-  void Clear() {
-    readable_data_.clear();
-    written_data_.clear();
-    state_ = SS_CLOSED;
-    read_block_ = 0;
-    write_block_ = SIZE_UNKNOWN;
+ void Clear() {
+   readable_data_.clear();
+   written_data_.clear();
+   state_ = SS_CLOSED;
+   read_block_ = 0;
+   write_block_ = SIZE_UNKNOWN;
   }
   void QueueString(const char* data) {
     QueueData(data, strlen(data));
@@ -217,53 +219,18 @@
   // Will cause Write to block when there are pos bytes in the write queue.
   void SetWriteBlock(size_t pos) { write_block_ = pos; }
 
-  virtual StreamState GetState() const { return state_; }
-  virtual StreamResult Read(void* buffer, size_t buffer_len,
-                            size_t* read, int* error) {
-    if (SS_CLOSED == state_) {
-      if (error) *error = -1;
-      return SR_ERROR;
-    }
-    if ((SS_OPENING == state_) || (readable_data_.size() <= read_block_)) {
-      return SR_BLOCK;
-    }
-    size_t count = std::min(buffer_len, readable_data_.size() - read_block_);
-    memcpy(buffer, &readable_data_[0], count);
-    size_t new_size = readable_data_.size() - count;
-    // Avoid undefined access beyond the last element of the vector.
-    // This only happens when new_size is 0.
-    if (count < readable_data_.size()) {
-      memmove(&readable_data_[0], &readable_data_[count], new_size);
-    }
-    readable_data_.resize(new_size);
-    if (read) *read = count;
-    return SR_SUCCESS;
-  }
-  virtual StreamResult Write(const void* data, size_t data_len,
-                             size_t* written, int* error) {
-    if (SS_CLOSED == state_) {
-      if (error) *error = -1;
-      return SR_ERROR;
-    }
-    if (SS_OPENING == state_) {
-      return SR_BLOCK;
-    }
-    if (SIZE_UNKNOWN != write_block_) {
-      if (written_data_.size() >= write_block_) {
-        return SR_BLOCK;
-      }
-      if (data_len > (write_block_ - written_data_.size())) {
-        data_len = write_block_ - written_data_.size();
-      }
-    }
-    if (written) *written = data_len;
-    const char* cdata = static_cast<const char*>(data);
-    written_data_.insert(written_data_.end(), cdata, cdata + data_len);
-    return SR_SUCCESS;
-  }
-  virtual void Close() { state_ = SS_CLOSED; }
+  StreamState GetState() const override;
+  StreamResult Read(void* buffer,
+                    size_t buffer_len,
+                    size_t* read,
+                    int* error) override;
+  StreamResult Write(const void* data,
+                     size_t data_len,
+                     size_t* written,
+                     int* error) override;
+  void Close() override;
 
-private:
+ private:
   typedef std::vector<char> Buffer;
   Buffer readable_data_, written_data_;
   StreamState state_;
@@ -277,28 +244,22 @@
 
 class SocketTestClient : public sigslot::has_slots<> {
 public:
- SocketTestClient() { Init(nullptr, AF_INET); }
- SocketTestClient(AsyncSocket* socket) {
-   Init(socket, socket->GetLocalAddress().family());
-  }
-  SocketTestClient(const SocketAddress& address) {
-    Init(nullptr, address.family());
-    socket_->Connect(address);
-  }
+ SocketTestClient();
+ SocketTestClient(AsyncSocket* socket);
+ SocketTestClient(const SocketAddress& address);
+ ~SocketTestClient() override;
 
-  AsyncSocket* socket() { return socket_.get(); }
+ AsyncSocket* socket() { return socket_.get(); }
 
-  void QueueString(const char* data) {
-    QueueData(data, strlen(data));
-  }
-  void QueueStringF(const char* format, ...) {
-    va_list args;
-    va_start(args, format);
-    char buffer[1024];
-    size_t len = vsprintfn(buffer, sizeof(buffer), format, args);
-    RTC_CHECK(len < sizeof(buffer) - 1);
-    va_end(args);
-    QueueData(buffer, len);
+ void QueueString(const char* data) { QueueData(data, strlen(data)); }
+ void QueueStringF(const char* format, ...) {
+   va_list args;
+   va_start(args, format);
+   char buffer[1024];
+   size_t len = vsprintfn(buffer, sizeof(buffer), format, args);
+   RTC_CHECK(len < sizeof(buffer) - 1);
+   va_end(args);
+   QueueData(buffer, len);
   }
   void QueueData(const char* data, size_t len) {
     send_buffer_.insert(send_buffer_.end(), data, data + len);
@@ -382,17 +343,8 @@
 
 class SocketTestServer : public sigslot::has_slots<> {
  public:
-  SocketTestServer(const SocketAddress& address)
-      : socket_(Thread::Current()->socketserver()
-                ->CreateAsyncSocket(address.family(), SOCK_STREAM))
-  {
-    socket_->SignalReadEvent.connect(this, &SocketTestServer::OnReadEvent);
-    socket_->Bind(address);
-    socket_->Listen(5);
-  }
-  virtual ~SocketTestServer() {
-    clear();
-  }
+  SocketTestServer(const SocketAddress& address);
+  ~SocketTestServer() override;
 
   size_t size() const { return clients_.size(); }
   SocketTestClient* client(size_t index) const { return clients_[index]; }
@@ -548,12 +500,13 @@
   }
   int ignored_int, major_version, minor_version;
   if (!XRRQueryExtension(display, &ignored_int, &ignored_int) ||
-      !XRRQueryVersion(display, &major_version, &minor_version) ||
-      major_version < 1 ||
-      (major_version < 2 && minor_version < 3)) {
-    LOG(LS_WARNING) << "XRandr version: " << major_version << "."
-                    << minor_version;
-    LOG(LS_WARNING) << "XRandr is not supported or is too old (pre 1.3).";
+      !XRRQueryVersion(display, &major_version, &minor_version)) {
+    LOG(LS_WARNING) << "XRandr is not supported.";
+    return false;
+  }
+  if (major_version < 1 || (major_version < 2 && minor_version < 3)) {
+    LOG(LS_WARNING) << "XRandr is too old (version: " << major_version << "."
+                    << minor_version << "). Need 1.3 or later.";
     return false;
   }
 #endif