keystoneauth1.tests.unit.client_fixtures.
domain_scoped_token
()¶keystoneauth1.tests.unit.client_fixtures.
project_scoped_token
()¶keystoneauth1.tests.unit.keystoneauth_fixtures.
HackingCode
¶Bases: fixtures.fixture.Fixture
A fixture to house the various code examples.
Examples contains various keystoneauth hacking style checks.
oslo_namespace_imports
= {'code': '\n import oslo.utils\n import oslo_utils\n import oslo.utils.encodeutils\n import oslo_utils.encodeutils\n from oslo import utils\n from oslo.utils import encodeutils\n from oslo_utils import encodeutils\n\n import oslo.serialization\n import oslo_serialization\n import oslo.serialization.jsonutils\n import oslo_serialization.jsonutils\n from oslo import serialization\n from oslo.serialization import jsonutils\n from oslo_serialization import jsonutils\n\n import oslo.config\n import oslo_config\n import oslo.config.cfg\n import oslo_config.cfg\n from oslo import config\n from oslo.config import cfg\n from oslo_config import cfg\n\n import oslo.i18n\n import oslo_i18n\n import oslo.i18n.log\n import oslo_i18n.log\n from oslo import i18n\n from oslo.i18n import log\n from oslo_i18n import log\n ', 'expected_errors': [(1, 0, 'K333'), (3, 0, 'K333'), (5, 0, 'K333'), (6, 0, 'K333'), (9, 0, 'K333'), (11, 0, 'K333'), (13, 0, 'K333'), (14, 0, 'K333'), (17, 0, 'K333'), (19, 0, 'K333'), (21, 0, 'K333'), (22, 0, 'K333'), (25, 0, 'K333'), (27, 0, 'K333'), (29, 0, 'K333'), (30, 0, 'K333')]}¶keystoneauth1.tests.unit.test_betamax_fixture.
TestBetamaxFixture
(*args, **kwargs)¶Bases: testtools.testcase.TestCase
TEST_AUTH_URL
= 'http://keystoneauth-betamax.test/v2.0/'¶TEST_PASSWORD
= 'test_password'¶TEST_TENANT_NAME
= 'test_tenant_name'¶TEST_USERNAME
= 'test_user_name'¶V2_TOKEN
= {'access': {'token': {'issued_at': '2020-05-01T05:14:31.012836', 'expires': '2020-05-01T06:14:31.012836', 'id': '597c9638a1a04aa39a16ba3472404aee', 'tenant': {'id': '495b94f1290044868c19a60910db8ee8', 'name': 'test_tenant_name'}, 'audit_ids': ['335ea6499c4d4fe69eaa17e02046779b', None]}, 'user': {'id': '0061321e9add4e65b9d112a92f7a8a09', 'name': 'test_user_name'}}}¶setUp
()¶test_keystoneauth_betamax_fixture
()¶test_replay_of_bad_url_fails
()¶keystoneauth1.tests.unit.test_betamax_fixture.
TestBetamaxFixtureSerializerBehaviour
(*args, **kwargs)¶Bases: testtools.testcase.TestCase
Test the fixture’s logic, not its monkey-patching.
The setUp method of our BetamaxFixture monkey-patches the function to construct a session. We don’t need to test that particular bit of logic here so we do not need to call useFixture in our setUp method.
test_can_pass_custom_serializer
(*args, **keywargs)¶test_can_pass_serializer_name
()¶test_no_request_matchers_provided
()¶test_no_serializer_options_provided
()¶test_request_matchers
()¶keystoneauth1.tests.unit.test_betamax_serializer.
TestBetamaxSerializer
(*args, **kwargs)¶Bases: testtools.testcase.TestCase
TEST_FILE
= '/home/zuul/src/opendev.org/openstack/keystoneauth/keystoneauth1/tests/unit/data/ksa_betamax_test_cassette.yaml'¶TEST_JSON
= '/home/zuul/src/opendev.org/openstack/keystoneauth/keystoneauth1/tests/unit/data/ksa_serializer_data.json'¶setUp
()¶test_deserialize
()¶test_serialize
()¶keystoneauth1.tests.unit.test_discovery.
CatalogHackTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
BASE_URL
= 'http://keystone.server:5000/'¶IDENTITY
= 'identity'¶OTHER_URL
= 'http://other.server:5000/path'¶TEST_URL
= 'http://keystone.server:5000/v2.0'¶V2_URL
= 'http://keystone.server:5000/v2.0'¶V3_URL
= 'http://keystone.server:5000/v3'¶setUp
()¶test_ignored_non_service_type
()¶test_version_hacks
()¶keystoneauth1.tests.unit.test_discovery.
DiscoverUtils
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
test_version_args
()¶Validate _normalize_version_args.
test_version_between
()¶test_version_number
()¶test_version_to_string
()¶keystoneauth1.tests.unit.test_discovery.
EndpointDataTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
test_run_discovery_cache
(*args, **keywargs)¶keystoneauth1.tests.unit.test_discovery.
VersionDataTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
setUp
()¶test_allow_deprecated
()¶test_allow_experimental
()¶test_allow_unknown
()¶test_cinder_version_data
()¶test_data_for_no_version
()¶test_data_for_url
()¶test_glance_version_data
()¶test_ignoring_invalid_links
()¶test_keystone_version_data
()¶test_version_data_basics
()¶test_version_data_individual
()¶test_version_data_microversions
()¶Validate [min_|max_]version conversion to {min|max}_microversion.
keystoneauth1.tests.unit.test_fixtures.
V2TokenTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
test_roles
()¶test_services
()¶test_tenant_scoped
()¶test_token_bind
()¶test_trust_scoped
()¶test_unscoped
()¶keystoneauth1.tests.unit.test_fixtures.
V3TokenTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
test_catalog
()¶test_domain_scoped
()¶test_empty_default_service_providers
()¶test_is_admin_project
()¶test_oauth_scoped
()¶test_project_as_domain_scoped
()¶test_project_scoped
()¶test_roles
()¶test_service_providers
()¶test_token_bind
()¶test_trust_scoped
()¶test_unscoped
()¶keystoneauth1.tests.unit.test_matchers.
TestXMLEquals
(*args, **kwargs)¶Bases: testtools.testcase.TestCase
describe_examples
= [('expected =\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <first z="0" y="1" x="2"/>\n <second a="a" b="b"/>\n</test>\n\nactual =\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <nope_it_fails/>\n</test>\n', '<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <nope_it_fails/>\n</test>\n', <keystoneauth1.tests.unit.matchers.XMLEquals object>)]¶equivalent_xml
= '<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <second a="a" b="b"/>\n <first z="0" y="1" x="2"></first>\n</test>\n'¶matches_matcher
= <keystoneauth1.tests.unit.matchers.XMLEquals object>¶matches_matches
= ['<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <first z="0" y="1" x="2"/>\n <second a="a" b="b"></second>\n</test>\n', '<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <second a="a" b="b"/>\n <first z="0" y="1" x="2"></first>\n</test>\n']¶matches_mismatches
= ['<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <nope_it_fails/>\n</test>\n']¶matches_xml
= '<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <first z="0" y="1" x="2"/>\n <second a="a" b="b"></second>\n</test>\n'¶mismatches_description
= 'expected =\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <first z="0" y="1" x="2"/>\n <second a="a" b="b"/>\n</test>\n\nactual =\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <nope_it_fails/>\n</test>\n'¶mismatches_xml
= '<?xml version="1.0" encoding="UTF-8"?>\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\n <nope_it_fails/>\n</test>\n'¶str_examples
= [('XMLEquals(\'<?xml version="1.0" encoding="UTF-8"?>\\n<test xmlns="https://docs.openstack.org/identity/api/v2.0">\\n <first z="0" y="1" x="2"/>\\n <second a="a" b="b"></second>\\n</test>\\n\')', <keystoneauth1.tests.unit.matchers.XMLEquals object>)]¶test__str__
()¶test_describe_difference
()¶test_matches_match
()¶test_mismatch_details
()¶keystoneauth1.tests.unit.test_service_token.
ServiceTokenTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
SERVICE_URL
= 'http://service-keystone.example.com/v3'¶TEST_URL
= 'http://test.example.com/path/'¶USER_URL
= 'http://user-keystone.example.com/v3'¶setUp
()¶test_invalidation
()¶test_pass_throughs
()¶test_setting_service_token
()¶keystoneauth1.tests.unit.test_session.
AdapterTest
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
ALLOW
= {'allow_deprecated': False, 'allow_experimental': True, 'allow_unknown': True}¶INTERFACE
= 'dbbe38c45e404c879543c99d7bbaf4cb'¶REGION_NAME
= 'ebeff96b97f8413295653ec9f67ce58b'¶SERVICE_NAME
= 'fa61db11fea6457db6d7852222b3d0d8'¶SERVICE_TYPE
= '2cdc843365794fba90e2999749136202'¶TEST_URL
= 'http://fakeendpoint/'¶USER_AGENT
= 'dc6cd74598d44b3d99a802e78dd25bd0'¶VERSION
= '3e06b17d1650475b8ff9a9f55ee16fd9'¶test_adapter_connect_retries
()¶test_adapter_get_token
()¶test_adapter_invalidate
()¶test_adapter_user_agent_adapter
()¶test_adapter_user_agent_session
()¶test_adapter_user_agent_session_adapter
()¶test_adapter_user_agent_session_adapter_additional
()¶test_adapter_user_agent_session_adapter_no_app_version
()¶test_adapter_user_agent_session_adapter_no_client_version
()¶test_adapter_user_agent_session_override
()¶test_adapter_user_agent_session_version_on_adapter
()¶test_additional_headers
()¶test_additional_headers_overrides
()¶test_default_microversion
()¶test_legacy_binding
()¶test_legacy_binding_non_json_resp
()¶test_logger_object_passed
()¶test_methods
()¶test_nested_adapters
()¶test_setting_endpoint_override
()¶test_setting_global_id_on_request
()¶test_setting_variables_on_get_endpoint
()¶test_setting_variables_on_request
()¶test_unknown_connection_error
()¶test_user_and_project_id
()¶keystoneauth1.tests.unit.test_session.
AuthPlugin
(token='72ca1f6a723c43ce8915e5303b2c3ef0', invalidate=True)¶Bases: keystoneauth1.plugin.BaseAuthPlugin
Very simple debug authentication plugin.
Takes Parameters such that it can throw exceptions at the right times.
SERVICE_URLS
= {'image': {'admin': 'http://image-admin:3333/v2.0', 'public': 'http://image-public:3333/v2.0'}, 'compute': {'admin': 'http://compute-admin:2222/v1.0', 'public': 'http://compute-public:2222/v1.0'}, 'identity': {'admin': 'http://identity-admin:1111/v2.0', 'public': 'http://identity-public:1111/v2.0'}}¶TEST_PROJECT_ID
= 'aProject'¶TEST_TOKEN
= '72ca1f6a723c43ce8915e5303b2c3ef0'¶TEST_USER_ID
= 'aUser'¶get_endpoint
(session, service_type=None, interface=None, **kwargs)¶get_project_id
(session)¶get_token
(session)¶get_user_id
(session)¶invalidate
()¶keystoneauth1.tests.unit.test_session.
CalledAuthPlugin
(invalidate=True)¶Bases: keystoneauth1.plugin.BaseAuthPlugin
ENDPOINT
= 'http://fakeendpoint/'¶PROJECT_ID
= '7184ae0f3c1b425e8b2ad18f3e74e16e'¶TOKEN
= '72ca1f6a723c43ce8915e5303b2c3ef0'¶USER_ID
= '24df7608796342ccb72e8936505bad31'¶get_endpoint
(session, **kwargs)¶get_project_id
(session, **kwargs)¶get_token
(session)¶get_user_id
(session, **kwargs)¶invalidate
()¶keystoneauth1.tests.unit.test_session.
RedirectTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
DEFAULT_REDIRECT_BODY
= 'Redirect'¶DEFAULT_RESP_BODY
= 'Found'¶REDIRECT_CHAIN
= ['http://myhost:3445/', 'http://anotherhost:6555/', 'http://thirdhost/', 'http://finaldestination:55/']¶assertResponse
(resp)¶setup_redirects
(method='GET', status_code=305, redirect_kwargs={}, final_kwargs={})¶test_basic_get
()¶test_basic_post_keeps_correct_method
()¶test_history_matches_requests
()¶test_no_redirect
()¶test_permanent_redirect_308
()¶test_redirect_forever
()¶test_redirect_limit
()¶keystoneauth1.tests.unit.test_session.
RequestsAuth
(*args, **kwargs)¶Bases: requests.auth.AuthBase
keystoneauth1.tests.unit.test_session.
SessionAuthTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
TEST_JSON
= {'hello': 'world'}¶TEST_URL
= 'http://127.0.0.1:5000/'¶stub_service_url
(service_type, interface, path, method='GET', **kwargs)¶test_auth_plugin_default_with_plugin
()¶test_auth_plugin_disable
()¶test_endpoint_override_does_id_replacement
()¶test_endpoint_override_fails_to_do_unknown_replacement
()¶test_endpoint_override_fails_to_replace_if_none
()¶test_endpoint_override_ignore_full_url
()¶test_endpoint_override_overrides_filter
()¶test_logger_object_passed
()¶test_passed_auth_plugin
()¶test_passed_auth_plugin_overrides
()¶test_raises_exc_only_when_asked
()¶test_reauth_called
()¶test_reauth_not_called
()¶test_requests_auth_plugin
()¶test_service_type_urls
()¶test_service_url_raises_if_no_auth_plugin
()¶test_service_url_raises_if_no_url_returned
()¶test_user_and_project_id
()¶keystoneauth1.tests.unit.test_session.
SessionTests
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
TEST_URL
= 'http://127.0.0.1:5000/'¶test_connect_retries
()¶test_delete
()¶test_does_not_set_tcp_keepalive_on_custom_sessions
()¶test_get
()¶test_head
()¶test_http_session_opts
()¶test_json_content_type
()¶test_logging_body_only_for_specified_content_types
()¶Verify response body is only logged in specific content types.
Response bodies are logged only when the response’s Content-Type header is set to application/json. This prevents us to get an unexpected MemoryError when reading arbitrary responses, such as streams.
test_logging_cacerts
()¶test_logs_failed_output
()¶Test that output is logged even for failed requests.
test_microversion
()¶test_not_found
()¶test_patch
()¶test_post
()¶test_put
()¶test_server_error
()¶test_session_debug_output
()¶Test request and response headers in debug logs.
in order to redact secure headers while debug is true.
test_session_debug_output_logs_openstack_request_id
()¶Test x-openstack-request-id is logged in debug logs.
test_set_microversion_headers
()¶test_ssl_error_message
()¶test_user_agent
()¶test_uses_tcp_keepalive_by_default
()¶keystoneauth1.tests.unit.test_session.
TCPKeepAliveAdapterTest
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
patch
(target, name, *args, **kwargs)¶patch_socket_with_options
(option_names)¶setUp
()¶test_init_poolmanager_with_basic_options
()¶test_init_poolmanager_with_given_optionsl
()¶test_init_poolmanager_with_requests_lesser_than_2_4_1
()¶test_init_poolmanager_with_tcp_keepcnt
()¶test_init_poolmanager_with_tcp_keepcnt_on_windows
()¶test_init_poolmanager_with_tcp_keepidle
()¶test_init_poolmanager_with_tcp_keepintvl
()¶keystoneauth1.tests.unit.test_token_endpoint.
AdminTokenTest
(*args, **kwargs)¶Bases: keystoneauth1.tests.unit.utils.TestCase
test_token_endpoint_deprecated_options
()¶test_token_endpoint_options
()¶keystoneauth1.tests.unit.utils.
TestCase
(*args, **kwargs)¶Bases: testtools.testcase.TestCase
TEST_DOMAIN_ID
= '2644756e08434073bfb7eb4811431ab7'¶TEST_DOMAIN_NAME
= 'edaf97d7f3c54ed2a8ee8118a755b8c7'¶TEST_GROUP_ID
= '645cff8723914691ba2a580cee1e049d'¶TEST_ROLE_ID
= '8612fab1b3f0455a90cf663efc259851'¶TEST_ROOT_URL
= 'http://127.0.0.1:5000/'¶TEST_TENANT_ID
= '420c7164077d46328f136f93285a447b'¶TEST_TENANT_NAME
= 'b29282fc4632471ebe8f5164d6a77920'¶TEST_TOKEN
= '72ca1f6a723c43ce8915e5303b2c3ef0'¶TEST_TRUST_ID
= '9bc11a2ea63847cca5f777f6c036df70'¶TEST_USER
= 'aeece6b024224b56b08ee0a932ec68d8'¶TEST_USER_ID
= 'e8f7250ac29940d4b7adbc3248017852'¶assertContentTypeIs
(content_type)¶assertQueryStringContains
(**kwargs)¶Verify the query string contains the expected parameters.
This method is used to verify that the query string for the most recent
request made contains all the parameters provided as kwargs
, and
that the value of each parameter contains the value for the kwarg. If
the value for the kwarg is an empty string (‘’), then all that’s
verified is that the parameter is present.
assertQueryStringIs
(qs='')¶Verify the QueryString matches what is expected.
The qs parameter should be of the format ‘foo=bar&abc=xyz’
assertRequestBodyIs
(body=None, json=None)¶assertRequestHeaderEqual
(name, val)¶Verify that the last request made contains a header and its value.
The request must have already been made.
assertRequestNotInHeader
(name)¶Verify that the last request made does not contain a header key.
The request must have already been made.
setUp
()¶stub_url
(method, parts=None, base_url=None, json=None, **kwargs)¶Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.