public void testAppInfo() throws Exception {
      AppInfo info = new AppInfo("app_name");
      assertEquals("app_name", info.getName());
      assertEquals("app_name", info.getOutputKey());
      assertEquals("app_name", info.getPostKey());

      info = new AppInfo("AppName");
      assertEquals("AppName", info.getName());
      assertEquals("appname", info.getOutputKey());
      assertEquals("appname", info.getPostKey());

      info = new AppInfo("App Name");
      assertEquals("App Name", info.getName());
      assertEquals("appname", info.getOutputKey());
      assertEquals("appname", info.getPostKey());

      info = new AppInfo("App & Name");
      assertEquals("App & Name", info.getName());
      assertEquals("app&name", info.getOutputKey());
      assertEquals("app&name", info.getPostKey());
      assertEquals("App & Name,app&name\n", info.getAppListEntry());

      info = new AppInfo("App Name", "key");
      assertEquals("App Name", info.getName());
      assertEquals("appname", info.getOutputKey());
      assertEquals("key", info.getPostKey());

      assertNull(info.getTime());
      info.setTime(0);
      assertEquals(new Integer(0), info.getTime());
      assertEquals("App Name,key\n", info.getAppListEntry());
    }
 /**
  * Generate the app list as a String.
  *
  * @return the app list to push to the device.
  */
 private String generateAppList() {
   StringBuilder sb = new StringBuilder();
   for (AppInfo info : mAppInfos.values()) {
     sb.append(info.getAppListEntry());
   }
   return sb.toString();
 }