1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-24 04:23:53 +03:00

python:tests: Add support for unexpected groups in krb5 tests

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
This commit is contained in:
Andreas Schneider
2022-01-21 10:19:20 +01:00
committed by Andreas Schneider
parent 61b2231915
commit e03665fb8c
2 changed files with 21 additions and 1 deletions

View File

@@ -2050,6 +2050,7 @@ class RawKerberosTest(TestCaseInTempDir):
expected_sname=None,
expected_account_name=None,
expected_groups=None,
unexpected_groups=None,
expected_upn_name=None,
expected_sid=None,
expected_supported_etypes=None,
@@ -2111,6 +2112,7 @@ class RawKerberosTest(TestCaseInTempDir):
'expected_sname': expected_sname,
'expected_account_name': expected_account_name,
'expected_groups': expected_groups,
'unexpected_groups': unexpected_groups,
'expected_upn_name': expected_upn_name,
'expected_sid': expected_sid,
'expected_supported_etypes': expected_supported_etypes,
@@ -2168,6 +2170,7 @@ class RawKerberosTest(TestCaseInTempDir):
expected_sname=None,
expected_account_name=None,
expected_groups=None,
unexpected_groups=None,
expected_upn_name=None,
expected_sid=None,
expected_supported_etypes=None,
@@ -2230,6 +2233,7 @@ class RawKerberosTest(TestCaseInTempDir):
'expected_sname': expected_sname,
'expected_account_name': expected_account_name,
'expected_groups': expected_groups,
'unexpected_groups': unexpected_groups,
'expected_upn_name': expected_upn_name,
'expected_sid': expected_sid,
'expected_supported_etypes': expected_supported_etypes,
@@ -2805,6 +2809,7 @@ class RawKerberosTest(TestCaseInTempDir):
expected_account_name = kdc_exchange_dict['expected_account_name']
expected_groups = kdc_exchange_dict['expected_groups']
unexpected_groups = kdc_exchange_dict['unexpected_groups']
expected_sid = kdc_exchange_dict['expected_sid']
expect_upn_dns_info_ex = kdc_exchange_dict['expect_upn_dns_info_ex']
@@ -2862,6 +2867,16 @@ class RawKerberosTest(TestCaseInTempDir):
match_count += 1
self.assertEqual(match_count, len(expected_groups))
if unexpected_groups is not None:
match_count = 0
for g in unexpected_groups:
self.assertIsNotNone(info3.sids)
for sid_attr in info3.sids:
if g == str(sid_attr.sid):
match_count += 1
self.assertEqual(match_count, 0)
elif pac_buffer.type == krb5pac.PAC_TYPE_UPN_DNS_INFO:
upn_dns_info = pac_buffer.info
upn_dns_info_ex = upn_dns_info.ex
@@ -3964,6 +3979,7 @@ class RawKerberosTest(TestCaseInTempDir):
renew_time=None,
expected_account_name=None,
expected_groups=None,
unexpected_groups=None,
expected_upn_name=None,
expected_sid=None,
expected_flags=None,
@@ -4005,6 +4021,7 @@ class RawKerberosTest(TestCaseInTempDir):
expected_sname=expected_sname,
expected_account_name=expected_account_name,
expected_groups=expected_groups,
unexpected_groups=unexpected_groups,
expected_upn_name=expected_upn_name,
expected_sid=expected_sid,
expected_supported_etypes=expected_supported_etypes,