shill: Add support for detecting PPP devices
Use the device ARP Hardware Type to detect both PPP devices. Fix
up loopback to use the same. Also add unit tests for
DeviceInfo::GetDeviceTechnology().
BUG=chromium-os:29771
TEST=New unit tests. Manual: Run on device for loopback, ppp, tunnel and wifi
Change-Id: I8b39bcf68926757d10756b9cbc1692ec891e117f
Reviewed-on: https://gerrit.chromium.org/gerrit/20802
Reviewed-by: Darin Petkov <petkov@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
diff --git a/technology_unittest.cc b/technology_unittest.cc
index ce401e5..803d4dc 100644
--- a/technology_unittest.cc
+++ b/technology_unittest.cc
@@ -22,9 +22,10 @@
EXPECT_EQ(Technology::kEthernet, Technology::IdentifierFromName("ethernet"));
EXPECT_EQ(Technology::kWifi, Technology::IdentifierFromName("wifi"));
EXPECT_EQ(Technology::kCellular, Technology::IdentifierFromName("cellular"));
- EXPECT_EQ(Technology::kTunnel, Technology::IdentifierFromName("Tunnel"));
- EXPECT_EQ(Technology::kLoopback, Technology::IdentifierFromName("Loopback"));
+ EXPECT_EQ(Technology::kTunnel, Technology::IdentifierFromName("tunnel"));
+ EXPECT_EQ(Technology::kLoopback, Technology::IdentifierFromName("loopback"));
EXPECT_EQ(Technology::kVPN, Technology::IdentifierFromName("vpn"));
+ EXPECT_EQ(Technology::kPPP, Technology::IdentifierFromName("ppp"));
EXPECT_EQ(Technology::kUnknown, Technology::IdentifierFromName("bluetooth"));
EXPECT_EQ(Technology::kUnknown, Technology::IdentifierFromName("wimax"));
EXPECT_EQ(Technology::kUnknown, Technology::IdentifierFromName("foo"));
@@ -35,10 +36,11 @@
EXPECT_EQ("ethernet", Technology::NameFromIdentifier(Technology::kEthernet));
EXPECT_EQ("wifi", Technology::NameFromIdentifier(Technology::kWifi));
EXPECT_EQ("cellular", Technology::NameFromIdentifier(Technology::kCellular));
- EXPECT_EQ("Tunnel", Technology::NameFromIdentifier(Technology::kTunnel));
- EXPECT_EQ("Loopback", Technology::NameFromIdentifier(Technology::kLoopback));
+ EXPECT_EQ("tunnel", Technology::NameFromIdentifier(Technology::kTunnel));
+ EXPECT_EQ("loopback", Technology::NameFromIdentifier(Technology::kLoopback));
EXPECT_EQ("vpn", Technology::NameFromIdentifier(Technology::kVPN));
- EXPECT_EQ("Unknown", Technology::NameFromIdentifier(Technology::kUnknown));
+ EXPECT_EQ("ppp", Technology::NameFromIdentifier(Technology::kPPP));
+ EXPECT_EQ("unknown", Technology::NameFromIdentifier(Technology::kUnknown));
}
TEST_F(TechnologyTest, IdentifierFromStorageGroup) {