summaryrefslogtreecommitdiff
path: root/parts/django/tests/modeltests/test_client/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'parts/django/tests/modeltests/test_client/views.py')
-rw-r--r--parts/django/tests/modeltests/test_client/views.py214
1 files changed, 0 insertions, 214 deletions
diff --git a/parts/django/tests/modeltests/test_client/views.py b/parts/django/tests/modeltests/test_client/views.py
deleted file mode 100644
index baa9525..0000000
--- a/parts/django/tests/modeltests/test_client/views.py
+++ /dev/null
@@ -1,214 +0,0 @@
-from xml.dom.minidom import parseString
-
-from django.core import mail
-from django.template import Context, Template
-from django.http import HttpResponse, HttpResponseRedirect, HttpResponseNotFound
-from django.contrib.auth.decorators import login_required, permission_required
-from django.forms.forms import Form
-from django.forms import fields
-from django.shortcuts import render_to_response
-from django.utils.decorators import method_decorator
-
-def get_view(request):
- "A simple view that expects a GET request, and returns a rendered template"
- t = Template('This is a test. {{ var }} is the value.', name='GET Template')
- c = Context({'var': request.GET.get('var', 42)})
-
- return HttpResponse(t.render(c))
-
-def post_view(request):
- """A view that expects a POST, and returns a different template depending
- on whether any POST data is available
- """
- if request.method == 'POST':
- if request.POST:
- t = Template('Data received: {{ data }} is the value.', name='POST Template')
- c = Context({'data': request.POST['value']})
- else:
- t = Template('Viewing POST page.', name='Empty POST Template')
- c = Context()
- else:
- t = Template('Viewing GET page.', name='Empty GET Template')
- c = Context()
-
- return HttpResponse(t.render(c))
-
-def view_with_header(request):
- "A view that has a custom header"
- response = HttpResponse()
- response['X-DJANGO-TEST'] = 'Slartibartfast'
- return response
-
-def raw_post_view(request):
- """A view which expects raw XML to be posted and returns content extracted
- from the XML"""
- if request.method == 'POST':
- root = parseString(request.raw_post_data)
- first_book = root.firstChild.firstChild
- title, author = [n.firstChild.nodeValue for n in first_book.childNodes]
- t = Template("{{ title }} - {{ author }}", name="Book template")
- c = Context({"title": title, "author": author})
- else:
- t = Template("GET request.", name="Book GET template")
- c = Context()
-
- return HttpResponse(t.render(c))
-
-def redirect_view(request):
- "A view that redirects all requests to the GET view"
- if request.GET:
- from urllib import urlencode
- query = '?' + urlencode(request.GET, True)
- else:
- query = ''
- return HttpResponseRedirect('/test_client/get_view/' + query)
-
-def view_with_secure(request):
- "A view that indicates if the request was secure"
- response = HttpResponse()
- response.test_was_secure_request = request.is_secure()
- return response
-
-def double_redirect_view(request):
- "A view that redirects all requests to a redirection view"
- return HttpResponseRedirect('/test_client/permanent_redirect_view/')
-
-def bad_view(request):
- "A view that returns a 404 with some error content"
- return HttpResponseNotFound('Not found!. This page contains some MAGIC content')
-
-TestChoices = (
- ('a', 'First Choice'),
- ('b', 'Second Choice'),
- ('c', 'Third Choice'),
- ('d', 'Fourth Choice'),
- ('e', 'Fifth Choice')
-)
-
-class TestForm(Form):
- text = fields.CharField()
- email = fields.EmailField()
- value = fields.IntegerField()
- single = fields.ChoiceField(choices=TestChoices)
- multi = fields.MultipleChoiceField(choices=TestChoices)
-
-def form_view(request):
- "A view that tests a simple form"
- if request.method == 'POST':
- form = TestForm(request.POST)
- if form.is_valid():
- t = Template('Valid POST data.', name='Valid POST Template')
- c = Context()
- else:
- t = Template('Invalid POST data. {{ form.errors }}', name='Invalid POST Template')
- c = Context({'form': form})
- else:
- form = TestForm(request.GET)
- t = Template('Viewing base form. {{ form }}.', name='Form GET Template')
- c = Context({'form': form})
-
- return HttpResponse(t.render(c))
-
-def form_view_with_template(request):
- "A view that tests a simple form"
- if request.method == 'POST':
- form = TestForm(request.POST)
- if form.is_valid():
- message = 'POST data OK'
- else:
- message = 'POST data has errors'
- else:
- form = TestForm()
- message = 'GET form page'
- return render_to_response('form_view.html',
- {
- 'form': form,
- 'message': message
- }
- )
-
-def login_protected_view(request):
- "A simple view that is login protected."
- t = Template('This is a login protected test. Username is {{ user.username }}.', name='Login Template')
- c = Context({'user': request.user})
-
- return HttpResponse(t.render(c))
-login_protected_view = login_required(login_protected_view)
-
-def login_protected_view_changed_redirect(request):
- "A simple view that is login protected with a custom redirect field set"
- t = Template('This is a login protected test. Username is {{ user.username }}.', name='Login Template')
- c = Context({'user': request.user})
-
- return HttpResponse(t.render(c))
-login_protected_view_changed_redirect = login_required(redirect_field_name="redirect_to")(login_protected_view_changed_redirect)
-
-def permission_protected_view(request):
- "A simple view that is permission protected."
- t = Template('This is a permission protected test. '
- 'Username is {{ user.username }}. '
- 'Permissions are {{ user.get_all_permissions }}.' ,
- name='Permissions Template')
- c = Context({'user': request.user})
- return HttpResponse(t.render(c))
-permission_protected_view = permission_required('modeltests.test_perm')(permission_protected_view)
-
-class _ViewManager(object):
- @method_decorator(login_required)
- def login_protected_view(self, request):
- t = Template('This is a login protected test using a method. '
- 'Username is {{ user.username }}.',
- name='Login Method Template')
- c = Context({'user': request.user})
- return HttpResponse(t.render(c))
-
- @method_decorator(permission_required('modeltests.test_perm'))
- def permission_protected_view(self, request):
- t = Template('This is a permission protected test using a method. '
- 'Username is {{ user.username }}. '
- 'Permissions are {{ user.get_all_permissions }}.' ,
- name='Permissions Template')
- c = Context({'user': request.user})
- return HttpResponse(t.render(c))
-
-_view_manager = _ViewManager()
-login_protected_method_view = _view_manager.login_protected_view
-permission_protected_method_view = _view_manager.permission_protected_view
-
-def session_view(request):
- "A view that modifies the session"
- request.session['tobacconist'] = 'hovercraft'
-
- t = Template('This is a view that modifies the session.',
- name='Session Modifying View Template')
- c = Context()
- return HttpResponse(t.render(c))
-
-def broken_view(request):
- """A view which just raises an exception, simulating a broken view."""
- raise KeyError("Oops! Looks like you wrote some bad code.")
-
-def mail_sending_view(request):
- mail.EmailMessage(
- "Test message",
- "This is a test email",
- "from@example.com",
- ['first@example.com', 'second@example.com']).send()
- return HttpResponse("Mail sent")
-
-def mass_mail_sending_view(request):
- m1 = mail.EmailMessage(
- 'First Test message',
- 'This is the first test email',
- 'from@example.com',
- ['first@example.com', 'second@example.com'])
- m2 = mail.EmailMessage(
- 'Second Test message',
- 'This is the second test email',
- 'from@example.com',
- ['second@example.com', 'third@example.com'])
-
- c = mail.get_connection()
- c.send_messages([m1,m2])
-
- return HttpResponse("Mail sent")