Test to add new tags to manifests.
We're relying on this to keep the manifest updated.
Change-Id: I0c25a9e7465ef83c2092668b60c7baafe724ca48
Fixes: 71879447
Test: libvintf_test
diff --git a/test/LibVintfTest.cpp b/test/LibVintfTest.cpp
index e934360..d705243 100644
--- a/test/LibVintfTest.cpp
+++ b/test/LibVintfTest.cpp
@@ -232,6 +232,33 @@
{2, 0}, "ICamera", "default"));
}
+TEST_F(LibVintfTest, FutureManifestCompatible) {
+ HalManifest expectedManifest;
+ expectedManifest.add(ManifestHal{.format = HalFormat::HIDL,
+ .name = "android.hardware.foo",
+ .versions = {Version(1, 0)},
+ .transportArch = {Transport::HWBINDER, Arch::ARCH_EMPTY},
+ .interfaces = {
+ {"IFoo", {"IFoo", {"default"}}},
+ }});
+ std::string manifestXml =
+ "<manifest version=\"1.0\" type=\"device\" might_add=\"true\">\n"
+ " <hal format=\"hidl\" attribuet_might_be_added=\"value\">\n"
+ " <name>android.hardware.foo</name>\n"
+ " <transport>hwbinder</transport>\n"
+ " <version>1.0</version>\n"
+ " <interface>\n"
+ " <name>IFoo</name>\n"
+ " <instance>default</instance>\n"
+ " </interface>\n"
+ " </hal>\n"
+ " <tag_might_be_added/>\n"
+ "</manifest>\n";
+ HalManifest manifest;
+ EXPECT_TRUE(gHalManifestConverter(&manifest, manifestXml));
+ EXPECT_EQ(expectedManifest, manifest);
+}
+
TEST_F(LibVintfTest, HalManifestConverter) {
HalManifest vm = testDeviceManifest();
std::string xml = gHalManifestConverter(vm);