Exemplo n.º 1
0
 def __init__(self, provider, identifier, multipass_data=None, **data):
     self.provider = provider
     self.identifier = text_type(identifier)
     if not provider.supports_refresh:
         assert multipass_data is None
         self.multipass_data = None
     else:
         self.multipass_data = dict(multipass_data or {}, _provider=provider.name)
     mapping = provider.settings.get('mapping')
     self.data = MultiDict(convert_provider_data(data, mapping or {}, self.provider.settings['identity_info_keys']))
Exemplo n.º 2
0
    def map(self, mapping):
        """Creates a new instance with transformed data keys

        :param mapping: The dict mapping the current data keys to the
                        the keys that are expected by the identity
                        provider. Any key that is not in `mapping` is
                        kept as-is.
        """
        missing_keys = set(mapping.values()) - set(self.data)
        if missing_keys:
            raise KeyError(next(iter(missing_keys)))
        return AuthInfo(self.provider, **convert_provider_data(self.data, mapping))
Exemplo n.º 3
0
 def __init__(self,
              provider,
              identifier,
              multipass_data=None,
              secure_login=None,
              **data):
     self.provider = provider
     self.secure_login = secure_login
     self.identifier = identifier.decode('utf-8') if isinstance(
         identifier, bytes_type) else text_type(identifier)
     if not provider.supports_refresh:
         assert multipass_data is None
         self.multipass_data = None
     else:
         self.multipass_data = dict(multipass_data or {},
                                    _provider=provider.name)
     mapping = provider.settings.get('mapping')
     self.data = MultiDict(
         convert_provider_data(
             data, mapping or {},
             self.provider.settings['identity_info_keys']))
Exemplo n.º 4
0
def test_convert_provider_data(provider_data, mapping, key_filter, result):
    assert convert_provider_data(provider_data, mapping, key_filter) == result
Exemplo n.º 5
0
def test_convert_provider_data(provider_data, mapping, key_filter, result):
    assert convert_provider_data(provider_data, mapping, key_filter) == result