manifest_xml: use Superproject to hold XML content
Always create Superproject when there is a <superproject> tag, and have
it hold the XML content, similar to how other manifest elements are
handled.
This also adds SetQuiet and SetPrintMessages to Superproject
consistent with manifest.SetUseLocalManifests.
Change-Id: I522bf3da542006575799f0640c67f7052704f266
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/334641
Reviewed-by: Mike Frysinger <vapier@google.com>
Reviewed-by: Raman Tenneti <rtenneti@google.com>
Tested-by: LaMont Jones <lamontjones@google.com>
diff --git a/tests/test_manifest_xml.py b/tests/test_manifest_xml.py
index cb3eb85..ede4154 100644
--- a/tests/test_manifest_xml.py
+++ b/tests/test_manifest_xml.py
@@ -289,8 +289,8 @@
<x-custom-tag>X tags are always ignored</x-custom-tag>
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'test-remote')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'test-remote')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -569,10 +569,10 @@
<superproject name="superproject"/>
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'test-remote')
- self.assertEqual(manifest.superproject['remote'].url, 'http://localhost/superproject')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/main')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'test-remote')
+ self.assertEqual(manifest.superproject.remote.url, 'http://localhost/superproject')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/main')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -591,10 +591,10 @@
<superproject name="superproject" revision="refs/heads/stable" />
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'test-remote')
- self.assertEqual(manifest.superproject['remote'].url, 'http://localhost/superproject')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/stable')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'test-remote')
+ self.assertEqual(manifest.superproject.remote.url, 'http://localhost/superproject')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/stable')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -613,10 +613,10 @@
<superproject name="superproject" revision="refs/heads/stable" />
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'test-remote')
- self.assertEqual(manifest.superproject['remote'].url, 'http://localhost/superproject')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/stable')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'test-remote')
+ self.assertEqual(manifest.superproject.remote.url, 'http://localhost/superproject')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/stable')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -635,10 +635,10 @@
<superproject name="superproject" revision="refs/heads/stable" />
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'test-remote')
- self.assertEqual(manifest.superproject['remote'].url, 'http://localhost/superproject')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/stable')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'test-remote')
+ self.assertEqual(manifest.superproject.remote.url, 'http://localhost/superproject')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/stable')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -657,10 +657,10 @@
<superproject name="platform/superproject" remote="superproject-remote"/>
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'platform/superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'superproject-remote')
- self.assertEqual(manifest.superproject['remote'].url, 'http://localhost/platform/superproject')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/main')
+ self.assertEqual(manifest.superproject.name, 'platform/superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'superproject-remote')
+ self.assertEqual(manifest.superproject.remote.url, 'http://localhost/platform/superproject')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/main')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'
@@ -679,9 +679,9 @@
<superproject name="superproject" remote="default-remote"/>
</manifest>
""")
- self.assertEqual(manifest.superproject['name'], 'superproject')
- self.assertEqual(manifest.superproject['remote'].name, 'default-remote')
- self.assertEqual(manifest.superproject['revision'], 'refs/heads/main')
+ self.assertEqual(manifest.superproject.name, 'superproject')
+ self.assertEqual(manifest.superproject.remote.name, 'default-remote')
+ self.assertEqual(manifest.superproject.revision, 'refs/heads/main')
self.assertEqual(
sort_attributes(manifest.ToXml().toxml()),
'<?xml version="1.0" ?><manifest>'