[shill] Add code for persisting profiles and services to disk.

BUG=chromium-os:17253
TEST=unit

Change-Id: Ic6dbbcb10543da3f4615cb305a77f6b9b301e8bc
Reviewed-on: http://gerrit.chromium.org/gerrit/7633
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>
diff --git a/wifi_service_unittest.cc b/wifi_service_unittest.cc
index 0d23d9f..cc5819d 100644
--- a/wifi_service_unittest.cc
+++ b/wifi_service_unittest.cc
@@ -35,16 +35,22 @@
 TEST_F(WiFiServiceTest, StorageId) {
   vector<uint8_t> ssid(5, 0);
   ssid.push_back(0xff);
-
-  WiFiServiceRefPtr wifi = new WiFiService(&control_interface_,
-                                           &dispatcher_,
-                                           &manager_,
-                                           NULL,
-                                           ssid,
-                                           flimflam::kModeManaged,
-                                           "none");
   static const char fake_mac[] = "AaBBcCDDeeFF";
-  string id = wifi->GetStorageIdentifier(fake_mac);
+
+  WiFiRefPtr wifi = new WiFi(&control_interface_,
+                             &dispatcher_,
+                             manager(),
+                             "wifi",
+                             fake_mac,
+                             0);
+  WiFiServiceRefPtr wifi_service = new WiFiService(&control_interface_,
+                                                   &dispatcher_,
+                                                   manager(),
+                                                   wifi,
+                                                   ssid,
+                                                   flimflam::kModeManaged,
+                                                   "none");
+  string id = wifi_service->GetStorageIdentifier();
   for (uint i = 0; i < id.length(); ++i) {
     EXPECT_TRUE(id[i] == '_' ||
                 isxdigit(id[i]) ||