from django.test import SimpleTestCase, override_settings


@override_settings(ROOT_URLCONF='view_tests.generic_urls')
class URLHandling(SimpleTestCase):
    """
    Tests for URL handling in views and responses.
    """
    redirect_target = "/%E4%B8%AD%E6%96%87/target/"

    def test_nonascii_redirect(self):
        """
        A non-ASCII argument to HttpRedirect is handled properly.
        """
        response = self.client.get('/nonascii_redirect/')
        self.assertRedirects(response, self.redirect_target)

    def test_permanent_nonascii_redirect(self):
        """
        A non-ASCII argument to HttpPermanentRedirect is handled properly.
        """
        response = self.client.get('/permanent_nonascii_redirect/')
        self.assertRedirects(response, self.redirect_target, status_code=301)
