Implement sepolicy section in compatibility-matrix.

* kernel-sepolicy-version will be checked against
  security_policyvers().
* sepolicy-version is not yet defined; put a placeholder
  entry so that it parses the compatibility matrix XML
  file correctly.

Test: libvintf_test
Change-Id: I41f69623728deedd00c511e6b99f43697c9eeda8
diff --git a/test/main.cpp b/test/main.cpp
index 7b7182c..def1ac8 100644
--- a/test/main.cpp
+++ b/test/main.cpp
@@ -43,6 +43,9 @@
     bool add(VendorManifest &vm, ManifestHal &&hal) {
         return vm.add(std::move(hal));
     }
+    void set(CompatibilityMatrix &cm, Sepolicy &&sepolicy) {
+        cm.sepolicy = sepolicy;
+    }
     const ManifestHal *getHal(VendorManifest &vm, const std::string &name) {
         return vm.getHal(name);
     }
@@ -233,6 +236,7 @@
             {KernelConfig{"CONFIG_FOO", Tristate::YES}, KernelConfig{"CONFIG_BAR", "stringvalue"}}}));
     EXPECT_TRUE(add(cm, MatrixKernel{KernelVersion(4, 4, 1),
             {KernelConfig{"CONFIG_BAZ", 20}, KernelConfig{"CONFIG_BAR", KernelConfigRangeValue{3, 5} }}}));
+    set(cm, Sepolicy(30, {1, 3}));
     std::string xml = gCompatibilityMatrixConverter(cm);
     EXPECT_EQ(xml,
             "<compatibility-matrix version=\"1.0\">\n"
@@ -266,7 +270,10 @@
             "            <value type=\"range\">3-5</value>\n"
             "        </config>\n"
             "    </kernel>\n"
-            "    <sepolicy/>\n"
+            "    <sepolicy>\n"
+            "        <kernel-sepolicy-version>30</kernel-sepolicy-version>\n"
+            "        <sepolicy-version>1-3</sepolicy-version>\n"
+            "    </sepolicy>\n"
             "</compatibility-matrix>\n");
     CompatibilityMatrix cm2;
     EXPECT_TRUE(gCompatibilityMatrixConverter(&cm2, xml));