From: Rob van der Linde Date: Wed, 6 Mar 2024 03:52:53 +0000 (+1300) Subject: tests: models: test additional Computer constructor cases X-Git-Tag: tdb-1.4.11~1418 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7dcc06fa88b06cedcaa9165536eb47c6fed27fc4;p=thirdparty%2Fsamba.git tests: models: test additional Computer constructor cases Signed-off-by: Rob van der Linde Reviewed-by: Douglas Bagnall Reviewed-by: Andrew Bartlett --- diff --git a/python/samba/tests/samba_tool/domain_models.py b/python/samba/tests/samba_tool/domain_models.py index 875a343e93e..c70eb820a71 100644 --- a/python/samba/tests/samba_tool/domain_models.py +++ b/python/samba/tests/samba_tool/domain_models.py @@ -81,19 +81,36 @@ class ComputerModelTests(SambaToolCmdTest): super().setUpClass() def test_computer_constructor(self): - comp1 = Computer(name="comp1") + # Use only name + comp1 = Computer.create(self.samdb, name="comp1") + self.assertEqual(comp1.name, "comp1") self.assertEqual(comp1.account_name, "comp1$") - comp2 = Computer(cn="comp2") + # Use only cn + comp2 = Computer.create(self.samdb, cn="comp2") + self.assertEqual(comp2.name, "comp2") self.assertEqual(comp2.account_name, "comp2$") - # User accidentally left out '$' in username. - comp3 = Computer(name="comp3", account_name="comp3") + # Use name and account_name but missing "$" in account_name. + comp3 = Computer.create(self.samdb, name="comp3", account_name="comp3") + self.assertEqual(comp3.name, "comp3") self.assertEqual(comp3.account_name, "comp3$") - comp4 = Computer(cn="comp4", account_name="comp4$") + # Use cn and account_name but missing "$" in account_name. + comp4 = Computer.create(self.samdb, cn="comp4", account_name="comp4$") + self.assertEqual(comp4.name, "comp4") self.assertEqual(comp4.account_name, "comp4$") + # Use only account_name, the name should get the "$" removed. + comp5 = Computer.create(self.samdb, account_name="comp5$") + self.assertEqual(comp5.name, "comp5") + self.assertEqual(comp5.account_name, "comp5$") + + # Use only account_name but accidentally forgot the "$" character. + comp6 = Computer.create(self.samdb, account_name="comp6") + self.assertEqual(comp6.name, "comp6") + self.assertEqual(comp6.account_name, "comp6$") + class FieldTestMixin: """Tests a model field to ensure it behaves correctly in both directions.