shill: Add Cellular devices to DeviceInfo.

This allows DeviceInfo to handle link messages for Cellular devices, so that we
can bring their interfaces up and down.

BUG=chromium-os:18438,18855
TEST=unit tests, tested on device

Change-Id: I7d642c7302472472c56042f731f746c8b997a149
Reviewed-on: http://gerrit.chromium.org/gerrit/5604
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
diff --git a/modem_unittest.cc b/modem_unittest.cc
index 963365c..99263f3 100644
--- a/modem_unittest.cc
+++ b/modem_unittest.cc
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include <vector>
+
 #include <gtest/gtest.h>
 #include <mm/mm-modem.h>
 #include <net/if.h>
@@ -19,6 +21,7 @@
 #include "shill/shill_event.h"
 
 using std::string;
+using std::vector;
 using testing::_;
 using testing::DoAll;
 using testing::Return;
@@ -147,7 +150,11 @@
   ASSERT_TRUE(modem_.device_.get());
   EXPECT_EQ(kLinkName, modem_.device_->link_name());
   EXPECT_EQ(kTestInterfaceIndex, modem_.device_->interface_index());
-  // TODO(petkov): Confirm the device is registered by the manager.
+
+  vector<DeviceRefPtr> devices;
+  manager_.FilterByTechnology(Device::kCellular, &devices);
+  EXPECT_EQ(1, devices.size());
+  EXPECT_TRUE(devices[0].get() == modem_.device_.get());
 }
 
 }  // namespace shill