shill: Installs progressive scan in shill.
BUG=chromium:222088
TEST=unittest and manual. The manual tests consist of:
- Enable progressive scan. On target, in a crosh window, do:
o progressive_scan on
- Start shill with log=-10/wifi. On the target, in a shell window,
do the following:
o stop shill
o shill --log-level=-10 --log-scopes=wifi
- Wait five seconds (the code will do everything it needs to at
startup).
- Look in /var/log/net.log and verify the existence of the following:
o Doing progressive scan
o ProgressiveScanTask - scan requested for XXXX
Initiating a scan -- returning
o ProgressiveScanTask - scan requested for XXXX
Ignoring scan request wile connecting to an AP
Change-Id: Ie577869aedc03230e1fab62fc8cb9f0b3850c7fb
Reviewed-on: https://gerrit.chromium.org/gerrit/50377
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Commit-Queue: Wade Guthrie <wdg@chromium.org>
Reviewed-by: Wade Guthrie <wdg@chromium.org>
Tested-by: Wade Guthrie <wdg@chromium.org>
diff --git a/mock_scan_session.h b/mock_scan_session.h
new file mode 100644
index 0000000..71ca9f9
--- /dev/null
+++ b/mock_scan_session.h
@@ -0,0 +1,45 @@
+// Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef SHILL_MOCK_SCAN_SESSION_H_
+#define SHILL_MOCK_SCAN_SESSION_H_
+
+#include "shill/scan_session.h"
+
+#include <set>
+
+#include <gmock/gmock.h>
+
+#include "shill/wifi_provider.h"
+
+namespace shill {
+
+class ByteString;
+class EventDispatcher;
+class NetlinkManager;
+
+class MockScanSession : public ScanSession {
+ public:
+ MockScanSession(NetlinkManager *netlink_manager,
+ EventDispatcher *dispatcher,
+ const WiFiProvider::FrequencyCountList &previous_frequencies,
+ const std::set<uint16_t> &available_frequencies,
+ uint32_t ifindex,
+ const FractionList &fractions,
+ int min_frequencies,
+ int max_frequencies,
+ OnScanFailed on_scan_failed);
+ virtual ~MockScanSession();
+
+ MOCK_CONST_METHOD0(HasMoreFrequencies, bool());
+ MOCK_METHOD1(AddSsid, void(const ByteString &ssid));
+ MOCK_METHOD0(InitiateScan, void());
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(MockScanSession);
+};
+
+} // namespace shill
+
+#endif // SHILL_MOCK_SCAN_SESSION_H_