code: def test_rls_roles_related_api(self):
      self.login("Admin")
      params = prison.dumps({"page": 0, "page_size": 100})
  
      rv = self.client.get(
          f"/api/v1/rowlevelsecurity/related/roles?q={params}"
      )
      self.assertEqual(rv.status_code, 200)
      data = json.loads(rv.data.decode("utf-8"))
      result = data["result"]
  
      db_role_names = {r.name for r in security_manager.get_all_roles()}
      received_roles = {role["text"] for role in result}
  
      assert data["count"] == len(db_role_names)
      assert len(result) == len(db_role_names)
      assert db_role_names == received_roles
  
imports: import re
  from typing import Any, Optional
  from unittest import mock
  import pytest
  from flask import g
  import json
  import prison
  from superset import db, security_manager, app
  from superset.connectors.sqla.models import RowLevelSecurityFilter, SqlaTable
  from superset.security.guest_token import GuestTokenResourceType, GuestUser
  from flask_babel import lazy_gettext
  from flask_appbuilder.models.sqla import filters
  from ..conftest import with_config
  from ..base_tests import SupersetTestCase
  from tests.integration_tests.fixtures.birth_names_dashboard import load_birth_names_dashboard_with_slices, load_birth_names_data
  from tests.integration_tests.fixtures.energy_dashboard import load_energy_table_with_slice, load_energy_table_data
  from tests.integration_tests.fixtures.unicode_dashboard import UNICODE_TBL_NAME, load_unicode_dashboard_with_slice, load_unicode_data
label_desc: Use image node_id 2 for calling the TestRowLevelSecurityWithRelatedAPI obj's underlying member method code with example usage: obj.test_rls_roles_related_api() without return types