def test_clean_service_url(self): """ When called with a URL, ``clean_service_url()`` should return the ``scheme`` and ``netloc`` components of the original URL. """ self.assertEqual('http://www.example.com:8080', clean_service_url('http://www.example.com:8080/test?test3=blue#green')) self.assertEqual('https://www.example.com', clean_service_url('https://www.example.com/'))
def test_clean_service_url(self): """ When called with a URL, ``clean_service_url()`` should return the ``scheme``, ``netloc`` and ``path`` components of the URL. """ url = 'http://www.example.com/test?test3=blue#green' self.assertEqual('http://www.example.com/test', clean_service_url(url)) url = 'https://example.com:9443/' self.assertEqual('https://example.com:9443/', clean_service_url(url))
def get(self, request, *args, **kwargs): service = request.GET.get('service') ticket = request.GET.get('ticket') msg = _("Do you want to access %s as %s?") % (clean_service_url(service), request.user) messages.info(request, msg) kwargs['service'] = add_query_params(service, {'ticket': ticket}) return super(WarnView, self).get(request, *args, **kwargs)
def get(self, request, *args, **kwargs): service = request.GET.get('service') ticket = request.GET.get('ticket') if not service or not is_valid_service_url(service): return redirect('cas_login') msg = _("Do you want to access %(service)s as %(user)s?") % { 'service': clean_service_url(service), 'user': request.user} messages.info(request, msg) kwargs['service'] = add_query_params(service, {'ticket': ticket}) return super(WarnView, self).get(request, *args, **kwargs)
def create_ticket(self, ticket=None, **kwargs): """ Create a new ``Ticket`` with the appropriate default values. Any provided arguments are passed on to the ``create()`` function. Return the newly created ``Ticket``. """ if not ticket: ticket = self.create_ticket_str() if 'service' in kwargs: kwargs['service'] = clean_service_url(kwargs['service']) t = self.create(ticket=ticket, created=timezone.now(), **kwargs) logger.debug("Created %s %s" % (t.name, t.ticket)) return t
def create_ticket(self, ticket=None, **kwargs): """ Create a new ``Ticket``. Additional arguments are passed to the ``create()`` function. Return the newly created ``Ticket``. """ if not ticket: ticket = self.create_ticket_str() if 'service' in kwargs: kwargs['service'] = clean_service_url(kwargs['service']) if 'expires' not in kwargs: expires = now() + timedelta(seconds=self.model.TICKET_EXPIRE) kwargs['expires'] = expires t = self.create(ticket=ticket, **kwargs) logger.debug("Created %s %s" % (t.name, t.ticket)) return t