const base::DictionaryValue& manifest) {
std::string error;
scoped_refptr<ApplicationData> application = ApplicationData::Create(
- base::FilePath(), ApplicationData::LOCAL_DIRECTORY,
- manifest, "", &error);
+ base::FilePath(), std::string(), ApplicationData::LOCAL_DIRECTORY,
+ make_scoped_ptr(new Manifest(make_scoped_ptr(manifest.DeepCopy()),
+ Manifest::TYPE_WIDGET)),
+ &error);
return application;
}
// No Preferences and full other information
void SetAllInfoToManifest(base::DictionaryValue* manifest) {
// Insert some key-value pairs into manifest use full key
+ manifest->SetString(keys::kWidgetNamespaceKey,
+ keys::kWidgetNamespacePrefix);
manifest->SetString(keys::kAuthorKey, author);
manifest->SetString(keys::kDescriptionKey, decription);
manifest->SetString(keys::kNameKey, name);
TEST_F(WidgetHandlerTest, ParseManifestWithOnlyNameAndVersion) {
base::DictionaryValue manifest;
+ manifest.SetString(keys::kWidgetNamespaceKey, keys::kWidgetNamespacePrefix);
manifest.SetString(keys::kNameKey, "no name");
manifest.SetString(keys::kVersionKey, "0");
scoped_refptr<ApplicationData> application = CreateApplication(manifest);
- EXPECT_TRUE(application);
+ EXPECT_TRUE(application.get());
WidgetInfo* info = GetWidgetInfo(application);
int size = info->GetWidgetInfo()->size();
// Create an application use this manifest.
scoped_refptr<ApplicationData> application;
application = CreateApplication(*(manifest.get()));
- EXPECT_TRUE(application);
- EXPECT_EQ(application->GetPackageType(), Package::WGT);
+ EXPECT_TRUE(application.get());
+ EXPECT_EQ(application->manifest_type(), Manifest::TYPE_WIDGET);
// Get widget info from this application.
WidgetInfo* info = GetWidgetInfo(application);
EXPECT_TRUE(info);
// Create an application use this manifest,
scoped_refptr<ApplicationData> application;
application = CreateApplication(*(manifest.get()));
- EXPECT_TRUE(application);
- EXPECT_EQ(application->GetPackageType(), Package::WGT);
+ EXPECT_TRUE(application.get());
+ EXPECT_EQ(application->manifest_type(), Manifest::TYPE_WIDGET);
// Get widget info from this application.
WidgetInfo* info = GetWidgetInfo(application);
EXPECT_TRUE(info);
EXPECT_TRUE(widget->Equals(widget_parsed_from_manifest));
}
+TEST_F(WidgetHandlerTest,
+ ParseManifestWithInvalidAuthorHrefValue) {
+ scoped_ptr<base::DictionaryValue> manifest(new base::DictionaryValue);
+ SetAllInfoToManifest(manifest.get());
+ manifest->SetString(keys::kAuthorHrefKey, "INVALID_HREF");
+
+ // Create an application use this manifest,
+ scoped_refptr<ApplicationData> application;
+ application = CreateApplication(*(manifest.get()));
+ EXPECT_TRUE(application.get());
+ EXPECT_EQ(application->manifest_type(), Manifest::TYPE_WIDGET);
+ // Get widget info from this application.
+ WidgetInfo* info = GetWidgetInfo(application);
+ EXPECT_TRUE(info);
+ std::string authorhref;
+ info->GetWidgetInfo()->GetString(keys::kAuthorHrefKey, &authorhref);
+ EXPECT_TRUE(authorhref.empty());
+}
} // namespace application
} // namespace xwalk