From: Douglas Bagnall Date: Tue, 21 May 2019 22:32:29 +0000 (+1200) Subject: tests/vlv: attempt to cause trouble by changing sort attribute X-Git-Tag: talloc-2.3.2~740 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3c026ba492a9d58a03884101b54deb3892e4a706;p=thirdparty%2Fsamba.git tests/vlv: attempt to cause trouble by changing sort attribute Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett --- diff --git a/source4/dsdb/tests/python/vlv.py b/source4/dsdb/tests/python/vlv.py index b068f8edae3..86ac2b72240 100644 --- a/source4/dsdb/tests/python/vlv.py +++ b/source4/dsdb/tests/python/vlv.py @@ -1216,6 +1216,29 @@ class VLVTests(VLVTestsBase): expected_results = [r for r in full_results if r != del_user[attr]] self.assertEqual(results, expected_results) + def test_vlv_change_during_search(self): + attr = 'facsimileTelephoneNumber' + prefix = "change_during_search_" + expr = "(&(objectClass=user)(cn=%s*))" % (prefix) + num_users = 3 + users = [self.create_user(i, num_users, prefix=prefix) + for i in range(num_users)] + expr = "(&(objectClass=user)(facsimileTelephoneNumber=%s*))" % (prefix) + + # Start the VLV, change the searched attribute and try the + # cookie. + results, cookie = self.vlv_search(attr, expr) + + for u in users: + self.ldb.modify_ldif("dn: %s\n" + "changetype: modify\n" + "replace: facsimileTelephoneNumber\n" + "facsimileTelephoneNumber: 123" % u['dn']) + + for i in range(2): + results, cookie = self.vlv_search(attr, expr, cookie=cookie, + offset=i+1) + class PagedResultsTests(TestsWithUserOU):