shill: Removes log clutter from wifi_unittest.cc

I got tired of trudging through the morass of uninteresting mock calls
in the jungle of wifi unittest output, looking for the nugget of error
message that would deliver me to jubilation.  So I fixed it.  Somewhat.

This CL adds a bunch of checks for mock calls.  Most of them are bound
into 'ExpectXxx' methods which provide the additional benefit of
enhanced readability, explaining what the tests are doing and expecting.

Also, moved the declaration of some ScopedMockLogs closer to their use.
And made them NiceScopedMockLogs.

There's more that can be done (and more tests that could benefit from
this) but I drew a line.  For now.

BUG=chromium:266398
TEST=unittest

Change-Id: I8004d752a2c24aece2bfb7472510ec6fcd87b79a
Reviewed-on: https://chromium-review.googlesource.com/63924
Reviewed-by: Wade Guthrie <wdg@chromium.org>
Tested-by: Wade Guthrie <wdg@chromium.org>
Commit-Queue: Wade Guthrie <wdg@chromium.org>
diff --git a/metrics.h b/metrics.h
index f0af7aa..0503a6e 100644
--- a/metrics.h
+++ b/metrics.h
@@ -537,7 +537,7 @@
   virtual void NotifyDeviceScanFinished(int interface_index);
 
   // Terminates an underay scan (does nothing if a scan wasn't underay).
-  void ResetScanTimer(int interface_index);
+  virtual void ResetScanTimer(int interface_index);
 
   // Notifies this object that a device has started the connect process.
   virtual void NotifyDeviceConnectStarted(int interface_index,