Index: components/policy/tools/template_writers/writers/admx_writer_unittest.py |
diff --git a/components/policy/tools/template_writers/writers/admx_writer_unittest.py b/components/policy/tools/template_writers/writers/admx_writer_unittest.py |
index eb7e1cf54126b6cc61ed860675136ff520ea99f8..8d25cac927da9a07125134e2d82a92b4ab20829c 100755 |
--- a/components/policy/tools/template_writers/writers/admx_writer_unittest.py |
+++ b/components/policy/tools/template_writers/writers/admx_writer_unittest.py |
@@ -21,27 +21,62 @@ from xml.dom import minidom |
class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
+ def _CreateDocumentElement(self): |
+ dom_impl = minidom.getDOMImplementation('') |
+ doc = dom_impl.createDocument(None, 'root', None) |
+ return doc.documentElement |
+ |
def setUp(self): |
# Writer configuration. This dictionary contains parameter used by the ADMX |
# Writer |
config = { |
- 'win_group_policy_class': 'TestClass', |
'win_supported_os': 'SUPPORTED_TESTOS', |
- 'win_reg_mandatory_key_name': 'Software\\Policies\\Test', |
- 'win_reg_recommended_key_name': 'Software\\Policies\\Test\\Recommended', |
- 'win_mandatory_category_path': ['test_category'], |
- 'win_recommended_category_path': ['test_recommended_category'], |
- 'win_category_path_strings': { |
- 'test_category': 'TestCategory', |
- 'test_recommended_category': 'TestCategory - recommended' |
+ 'win_config' : { |
+ 'win' : { |
+ 'reg_mandatory_key_name': 'Software\\Policies\\Test', |
+ 'reg_recommended_key_name': 'Software\\Policies\\Test\\Recommended', |
+ 'mandatory_category_path': ['test_category'], |
+ 'recommended_category_path': ['test_recommended_category'], |
+ 'category_path_strings': { |
+ 'test_category': 'TestCategory', |
+ 'test_recommended_category': 'TestCategory - recommended', |
+ }, |
+ 'namespace': 'ADMXWriter.Test.Namespace', |
+ }, |
+ 'chrome_os' : { |
+ 'reg_mandatory_key_name': 'Software\\Policies\\CrOSTest', |
+ 'reg_recommended_key_name': |
+ 'Software\\Policies\\CrOSTest\\Recommended', |
+ 'mandatory_category_path': ['cros_test_category'], |
+ 'recommended_category_path': ['cros_test_recommended_category'], |
+ 'category_path_strings': { |
+ 'cros_test_category': 'CrOSTestCategory', |
+ 'cros_test_recommended_category': 'CrOSTestCategory - recommended', |
+ }, |
+ 'namespace': 'ADMXWriter.Test.Namespace.ChromeOS', |
+ }, |
}, |
- 'admx_namespace': 'ADMXWriter.Test.Namespace', |
'admx_prefix': 'test_prefix', |
'build': 'test_product', |
} |
- self.writer = admx_writer.GetWriter(config) |
+ self.writer = self._GetWriter(config) |
self.writer.Init() |
+ def _GetWriter(self, config): |
+ return admx_writer.GetWriter(config) |
+ |
+ def _GetKey(self): |
+ return "Test"; |
+ |
+ def _GetCategory(self): |
+ return "test_category"; |
+ |
+ def _GetCategoryRec(self): |
+ return "test_recommended_category"; |
+ |
+ def _GetNamespace(self): |
+ return "ADMXWriter.Test.Namespace"; |
+ |
def _GetPoliciesElement(self, doc): |
node_list = doc.getElementsByTagName('policies') |
self.assertTrue(node_list.length == 1) |
@@ -61,7 +96,7 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
'<?xml version="1.0" ?>\n' |
'<policyDefinitions revision="1.0" schemaVersion="1.0">\n' |
' <policyNamespaces>\n' |
- ' <target namespace="ADMXWriter.Test.Namespace"' |
+ ' <target namespace="' + self._GetNamespace() + '"' |
' prefix="test_prefix"/>\n' |
' <using namespace="Microsoft.Policies.Windows" prefix="windows"/>\n' |
' </policyNamespaces>\n' |
@@ -73,10 +108,10 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
' </definitions>\n' |
' </supportedOn>\n' |
' <categories>\n' |
- ' <category displayName="$(string.test_category)"' |
- ' name="test_category"/>\n' |
- ' <category displayName="$(string.test_recommended_category)"' |
- ' name="test_recommended_category"/>\n' |
+ ' <category displayName="$(string.' + self._GetCategory() + ')"' |
+ ' name="' + self._GetCategory() + '"/>\n' |
+ ' <category displayName="$(string.' + self._GetCategoryRec() + ')"' |
+ ' name="' + self._GetCategoryRec() + '"/>\n' |
' </categories>\n' |
' <policies/>\n' |
'</policyDefinitions>') |
@@ -93,7 +128,7 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
'<policyDefinitions revision="1.0" schemaVersion="1.0">\n' |
' <!--test_product version: 39.0.0.0-->\n' |
' <policyNamespaces>\n' |
- ' <target namespace="ADMXWriter.Test.Namespace"' |
+ ' <target namespace="' + self._GetNamespace() + '"' |
' prefix="test_prefix"/>\n' |
' <using namespace="Microsoft.Policies.Windows" prefix="windows"/>\n' |
' </policyNamespaces>\n' |
@@ -105,10 +140,10 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
' </definitions>\n' |
' </supportedOn>\n' |
' <categories>\n' |
- ' <category displayName="$(string.test_category)"' |
- ' name="test_category"/>\n' |
- ' <category displayName="$(string.test_recommended_category)"' |
- ' name="test_recommended_category"/>\n' |
+ ' <category displayName="$(string.' + self._GetCategory() + ')"' |
+ ' name="' + self._GetCategory() + '"/>\n' |
+ ' <category displayName="$(string.' + self._GetCategoryRec() + ')"' |
+ ' name="' + self._GetCategoryRec() + '"/>\n' |
' </categories>\n' |
' <policies/>\n' |
'</policyDefinitions>') |
@@ -132,13 +167,13 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
output = self.GetXMLOfChildren( |
self._GetCategoriesElement(self.writer._doc)) |
expected_output = ( |
- '<category displayName="$(string.test_category)"' |
- ' name="test_category"/>\n' |
- '<category displayName="$(string.test_recommended_category)"' |
- ' name="test_recommended_category"/>\n' |
+ '<category displayName="$(string.' + self._GetCategory() + ')"' |
+ ' name="' + self._GetCategory() + '"/>\n' |
+ '<category displayName="$(string.' + self._GetCategoryRec() + ')"' |
+ ' name="' + self._GetCategoryRec() + '"/>\n' |
'<category displayName="$(string.PolicyGroup_group)"' |
' name="PolicyGroup">\n' |
- ' <parentCategory ref="test_category"/>\n' |
+ ' <parentCategory ref="' + self._GetCategory() + '"/>\n' |
'</category>') |
self.AssertXMLEquals(output, expected_output) |
@@ -166,13 +201,13 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
output = self.GetXMLOfChildren( |
self._GetCategoriesElement(self.writer._doc)) |
expected_output = ( |
- '<category displayName="$(string.test_category)"' |
- ' name="test_category"/>\n' |
- '<category displayName="$(string.test_recommended_category)"' |
- ' name="test_recommended_category"/>\n' |
+ '<category displayName="$(string.' + self._GetCategory() + ')"' |
+ ' name="' + self._GetCategory() + '"/>\n' |
+ '<category displayName="$(string.' + self._GetCategoryRec() + ')"' |
+ ' name="' + self._GetCategoryRec() + '"/>\n' |
'<category displayName="$(string.PolicyGroup_group)"' |
' name="PolicyGroup">\n' |
- ' <parentCategory ref="test_category"/>\n' |
+ ' <parentCategory ref="' + self._GetCategory() + '"/>\n' |
'</category>') |
self.AssertXMLEquals(output, expected_output) |
@@ -199,9 +234,11 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.DummyMainPolicy)"' |
+ '<policy class="' + self.writer.GetClass(main_policy) + '"' |
+ ' displayName="$(string.DummyMainPolicy)"' |
' explainText="$(string.DummyMainPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="DummyMainPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="DummyMainPolicy"' |
' presentation="$(presentation.DummyMainPolicy)"' |
' valueName="DummyMainPolicy">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
@@ -233,9 +270,10 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.DummyMainPolicy)"' |
+ '<policy class="' + self.writer.GetClass(main_policy) + '"' |
+ ' displayName="$(string.DummyMainPolicy)"' |
' explainText="$(string.DummyMainPolicy_Explain)"' |
- ' key="Software\\Policies\\Test\\Recommended"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '\\Recommended"' |
' name="DummyMainPolicy_recommended"' |
' presentation="$(presentation.DummyMainPolicy)"' |
' valueName="DummyMainPolicy">\n' |
@@ -273,9 +311,10 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.DummyMainPolicy)"' |
+ '<policy class="' + self.writer.GetClass(main_policy) + '"' |
+ ' displayName="$(string.DummyMainPolicy)"' |
' explainText="$(string.DummyMainPolicy_Explain)"' |
- ' key="Software\\Policies\\Test\\Recommended"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '\\Recommended"' |
' name="DummyMainPolicy_recommended"' |
' presentation="$(presentation.DummyMainPolicy)"' |
' valueName="DummyMainPolicy">\n' |
@@ -301,9 +340,11 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(string_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.SampleStringPolicy)"' |
+ '<policy class="' + self.writer.GetClass(string_policy) + '"' |
+ ' displayName="$(string.SampleStringPolicy)"' |
' explainText="$(string.SampleStringPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleStringPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleStringPolicy"' |
' presentation="$(presentation.SampleStringPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
@@ -324,9 +365,11 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(int_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.SampleIntPolicy)"' |
+ '<policy class="' + self.writer.GetClass(int_policy) + '"' |
+ ' displayName="$(string.SampleIntPolicy)"' |
' explainText="$(string.SampleIntPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleIntPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleIntPolicy"' |
' presentation="$(presentation.SampleIntPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
@@ -351,20 +394,22 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(enum_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.SampleEnumPolicy)"' |
+ '<policy class="' + self.writer.GetClass(enum_policy) + '"' |
+ ' displayName="$(string.SampleEnumPolicy)"' |
' explainText="$(string.SampleEnumPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleEnumPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleEnumPolicy"' |
' presentation="$(presentation.SampleEnumPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <enum id="SampleEnumPolicy" valueName="SampleEnumPolicy">\n' |
- ' <item displayName="$(string.item_1)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_item_1)">\n' |
' <value>\n' |
' <decimal value="0"/>\n' |
' </value>\n' |
' </item>\n' |
- ' <item displayName="$(string.item_2)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_item_2)">\n' |
' <value>\n' |
' <decimal value="1"/>\n' |
' </value>\n' |
@@ -395,20 +440,22 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
expected_output = ( |
'<?xml version="1.0" ?>\n' |
'<policyDefinitions>\n' |
- ' <policy class="TestClass" displayName="$(string.SampleEnumPolicy)"' |
+ ' <policy class="' + self.writer.GetClass(enum_policy) + '"' |
+ ' displayName="$(string.SampleEnumPolicy)"' |
' explainText="$(string.SampleEnumPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleEnumPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleEnumPolicy"' |
' presentation="$(presentation.SampleEnumPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <enum id="SampleEnumPolicy" valueName="SampleEnumPolicy">\n' |
- ' <item displayName="$(string.item_1)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_item_1)">\n' |
' <value>\n' |
' <string>one</string>\n' |
' </value>\n' |
' </item>\n' |
- ' <item displayName="$(string.item_2)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_item_2)">\n' |
' <value>\n' |
' <string>two</string>\n' |
' </value>\n' |
@@ -428,15 +475,18 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(list_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.SampleListPolicy)"' |
+ '<policy class="' + self.writer.GetClass(list_policy) + '"' |
+ ' displayName="$(string.SampleListPolicy)"' |
' explainText="$(string.SampleListPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleListPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleListPolicy"' |
' presentation="$(presentation.SampleListPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <list id="SampleListPolicyDesc"' |
- ' key="Software\Policies\Test\SampleListPolicy" valuePrefix=""/>\n' |
+ ' key="Software\Policies\\' + self._GetKey() + '\SampleListPolicy"' |
+ ' valuePrefix=""/>\n' |
' </elements>\n' |
'</policy>') |
@@ -455,15 +505,18 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(list_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.SampleListPolicy)"' |
+ '<policy class="' + self.writer.GetClass(list_policy) + '"' |
+ ' displayName="$(string.SampleListPolicy)"' |
' explainText="$(string.SampleListPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleListPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleListPolicy"' |
' presentation="$(presentation.SampleListPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <list id="SampleListPolicyDesc"' |
- ' key="Software\Policies\Test\SampleListPolicy" valuePrefix=""/>\n' |
+ ' key="Software\Policies\\' + self._GetKey() + '\SampleListPolicy"' |
+ ' valuePrefix=""/>\n' |
' </elements>\n' |
'</policy>') |
@@ -479,10 +532,11 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
self.writer.WritePolicy(dict_policy) |
output = self.GetXMLOfChildren(self._GetPoliciesElement(self.writer._doc)) |
expected_output = ( |
- '<policy class="TestClass" displayName="$(string.' |
- 'SampleDictionaryPolicy)"' |
+ '<policy class="' + self.writer.GetClass(dict_policy) + '"' |
+ ' displayName="$(string.SampleDictionaryPolicy)"' |
' explainText="$(string.SampleDictionaryPolicy_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleDictionaryPolicy"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleDictionaryPolicy"' |
' presentation="$(presentation.SampleDictionaryPolicy)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
@@ -532,15 +586,17 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
expected_output = ( |
'<?xml version="1.0" ?>\n' |
'<policyDefinitions>\n' |
- ' <policy class="TestClass" displayName="$(string.SampleEnumPolicy_A)"' |
+ ' <policy class="' + self.writer.GetClass(enum_policy_a) + '"' |
+ ' displayName="$(string.SampleEnumPolicy_A)"' |
' explainText="$(string.SampleEnumPolicy_A_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleEnumPolicy.A"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleEnumPolicy.A"' |
' presentation="$(presentation.SampleEnumPolicy.A)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <enum id="SampleEnumPolicy.A" valueName="SampleEnumPolicy.A">\n' |
- ' <item displayName="$(string.tls1_2)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_A_tls1_2)">\n' |
' <value>\n' |
' <string>tls1.2</string>\n' |
' </value>\n' |
@@ -548,15 +604,17 @@ class AdmxWriterUnittest(xml_writer_base_unittest.XmlWriterBaseTest): |
' </enum>\n' |
' </elements>\n' |
' </policy>\n' |
- ' <policy class="TestClass" displayName="$(string.SampleEnumPolicy_B)"' |
+ ' <policy class="' + self.writer.GetClass(enum_policy_b) + '"' |
+ ' displayName="$(string.SampleEnumPolicy_B)"' |
' explainText="$(string.SampleEnumPolicy_B_Explain)"' |
- ' key="Software\\Policies\\Test" name="SampleEnumPolicy.B"' |
+ ' key="Software\\Policies\\' + self._GetKey() + '"' |
+ ' name="SampleEnumPolicy.B"' |
' presentation="$(presentation.SampleEnumPolicy.B)">\n' |
' <parentCategory ref="PolicyGroup"/>\n' |
' <supportedOn ref="SUPPORTED_TESTOS"/>\n' |
' <elements>\n' |
' <enum id="SampleEnumPolicy.B" valueName="SampleEnumPolicy.B">\n' |
- ' <item displayName="$(string.tls1_2)">\n' |
+ ' <item displayName="$(string.SampleEnumPolicy_B_tls1_2)">\n' |
' <value>\n' |
' <string>tls1.2</string>\n' |
' </value>\n' |