From 30638b53a4f9a277a821f7988d8c18b6de52bf77 Mon Sep 17 00:00:00 2001 From: Kristi Nikolla Date: Tue, 24 Mar 2020 08:22:40 -0400 Subject: [PATCH] Keystone - List user groups 'membership_expires_at' attribute With the introduction of expiring group memberships, there is a new attribute `membership_expires_at` when listing user groups. This patch updates the test to check the attribute and then ignore it for group dict comparison. Change-Id: I4294a879071dde07e5eb1da4df133de8032e1059 Partial-Bug: 1809116 --- tempest/api/identity/admin/v3/test_groups.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tempest/api/identity/admin/v3/test_groups.py b/tempest/api/identity/admin/v3/test_groups.py index df0d79d24e..2dd1fe2d1e 100644 --- a/tempest/api/identity/admin/v3/test_groups.py +++ b/tempest/api/identity/admin/v3/test_groups.py @@ -114,6 +114,13 @@ class GroupsV3TestJSON(base.BaseIdentityV3AdminTest): self.groups_client.add_group_user(group['id'], user['id']) # list groups which user belongs to user_groups = self.users_client.list_user_groups(user['id'])['groups'] + # The `membership_expires_at` attribute is present when listing user + # group memberships, and is not an attribute of the groups themselves. + # Therefore we remove it from the comparison. + for g in user_groups: + if 'membership_expires_at' in g: + self.assertIsNone(g['membership_expires_at']) + del(g['membership_expires_at']) self.assertEqual(sorted(groups, key=lambda k: k['name']), sorted(user_groups, key=lambda k: k['name'])) self.assertEqual(2, len(user_groups))