From 335bfdc38fabbdfac359936cc35ff089662705fe Mon Sep 17 00:00:00 2001
From: Rodolfo Alonso Hernandez <ralonsoh@redhat.com>
Date: Tue, 15 Aug 2023 22:52:07 +0000
Subject: [PATCH] Check the default role list before adding a new one

The default role list now adds "manager" by default. This new
default role was added in Keystone 24.0.0.0rc1, that includes
[1].

[1]https://review.opendev.org/c/openstack/keystone/+/822601

Story: #2010923
Task: #48787

Change-Id: I3eeca1a0296137eef777770bff4993a56e2fcc5c
---
 .../tests/functional/identity/v3/test_role.py      | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/openstackclient/tests/functional/identity/v3/test_role.py b/openstackclient/tests/functional/identity/v3/test_role.py
index 328a14c349..2d5a15e477 100644
--- a/openstackclient/tests/functional/identity/v3/test_role.py
+++ b/openstackclient/tests/functional/identity/v3/test_role.py
@@ -146,11 +146,19 @@ class RoleTests(common.IdentityTests):
         self.assertEqual(0, len(remove_raw_output))
 
     def test_implied_role_list(self):
+        raw_output = self.openstack('implied role list')
+        default_roles = self.parse_listing(raw_output)
+        self.assert_table_structure(
+            default_roles, self.IMPLIED_ROLE_LIST_HEADERS
+        )
+
         self._create_dummy_implied_role()
         raw_output = self.openstack('implied role list')
-        items = self.parse_listing(raw_output)
-        self.assert_table_structure(items, self.IMPLIED_ROLE_LIST_HEADERS)
-        self.assertEqual(3, len(items))
+        current_roles = self.parse_listing(raw_output)
+        self.assert_table_structure(
+            current_roles, self.IMPLIED_ROLE_LIST_HEADERS
+        )
+        self.assertEqual(len(default_roles) + 1, len(current_roles))
 
     def test_implied_role_create(self):
         role_name = self._create_dummy_role()