From dfb640907f7713e7cb155fa030feb433e8ef319d Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Mon, 9 Jun 2025 09:53:05 +0200 Subject: cargo: change init-time computation to lazy properties Make the dataclasses closer to the TypedDicts. Signed-off-by: Paolo Bonzini --- unittests/cargotests.py | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'unittests') diff --git a/unittests/cargotests.py b/unittests/cargotests.py index bb0a32ed2..68b15f8cf 100644 --- a/unittests/cargotests.py +++ b/unittests/cargotests.py @@ -299,28 +299,34 @@ class CargoTomlTest(unittest.TestCase): self.assertEqual(len(manifest.dependencies), 6) self.assertEqual(manifest.dependencies['gtk'].package, 'gtk4') - self.assertEqual(manifest.dependencies['gtk'].version, ['>= 0.9', '< 0.10']) + self.assertEqual(manifest.dependencies['gtk'].version, '0.9') + self.assertEqual(manifest.dependencies['gtk'].meson_version, ['>= 0.9', '< 0.10']) self.assertEqual(manifest.dependencies['gtk'].api, '0.9') self.assertEqual(manifest.dependencies['num-complex'].package, 'num-complex') - self.assertEqual(manifest.dependencies['num-complex'].version, ['>= 0.4', '< 0.5']) - self.assertEqual(manifest.dependencies['num-complex'].api, '0.4') + self.assertEqual(manifest.dependencies['num-complex'].version, '0.4') + self.assertEqual(manifest.dependencies['num-complex'].meson_version, ['>= 0.4', '< 0.5']) self.assertEqual(manifest.dependencies['rayon'].package, 'rayon') - self.assertEqual(manifest.dependencies['rayon'].version, ['>= 1.0', '< 2']) + self.assertEqual(manifest.dependencies['rayon'].version, '1.0') + self.assertEqual(manifest.dependencies['rayon'].meson_version, ['>= 1.0', '< 2']) self.assertEqual(manifest.dependencies['rayon'].api, '1') self.assertEqual(manifest.dependencies['once_cell'].package, 'once_cell') - self.assertEqual(manifest.dependencies['once_cell'].version, ['>= 1', '< 2']) + self.assertEqual(manifest.dependencies['once_cell'].version, '1') + self.assertEqual(manifest.dependencies['once_cell'].meson_version, ['>= 1', '< 2']) self.assertEqual(manifest.dependencies['once_cell'].api, '1') self.assertEqual(manifest.dependencies['async-channel'].package, 'async-channel') - self.assertEqual(manifest.dependencies['async-channel'].version, ['>= 2.0', '< 3']) + self.assertEqual(manifest.dependencies['async-channel'].version, '2.0') + self.assertEqual(manifest.dependencies['async-channel'].meson_version, ['>= 2.0', '< 3']) self.assertEqual(manifest.dependencies['async-channel'].api, '2') self.assertEqual(manifest.dependencies['zerocopy'].package, 'zerocopy') - self.assertEqual(manifest.dependencies['zerocopy'].version, ['>= 0.7', '< 0.8']) + self.assertEqual(manifest.dependencies['zerocopy'].version, '0.7') + self.assertEqual(manifest.dependencies['zerocopy'].meson_version, ['>= 0.7', '< 0.8']) self.assertEqual(manifest.dependencies['zerocopy'].features, ['derive']) self.assertEqual(manifest.dependencies['zerocopy'].api, '0.7') self.assertEqual(len(manifest.dev_dependencies), 1) self.assertEqual(manifest.dev_dependencies['gir-format-check'].package, 'gir-format-check') - self.assertEqual(manifest.dev_dependencies['gir-format-check'].version, ['>= 0.1', '< 0.2']) + self.assertEqual(manifest.dev_dependencies['gir-format-check'].version, '^0.1') + self.assertEqual(manifest.dev_dependencies['gir-format-check'].meson_version, ['>= 0.1', '< 0.2']) self.assertEqual(manifest.dev_dependencies['gir-format-check'].api, '0.1') def test_cargo_toml_targets(self) -> None: @@ -371,7 +377,8 @@ class CargoTomlTest(unittest.TestCase): self.assertEqual(len(manifest.system_dependencies), 1) self.assertEqual(manifest.system_dependencies['pango'].name, 'pango') - self.assertEqual(manifest.system_dependencies['pango'].version, ['>=1.40']) + self.assertEqual(manifest.system_dependencies['pango'].version, '1.40') + self.assertEqual(manifest.system_dependencies['pango'].meson_version, ['>=1.40']) self.assertEqual(manifest.system_dependencies['pango'].optional, False) self.assertEqual(manifest.system_dependencies['pango'].feature, None) -- cgit v1.2.3