view tests/test_fileapp.txt @ 30:52103702a732

figured out the magical code for doctest.ELLIPSIS
author Jeff Hammel <jhammel@mozilla.com>
date Mon, 05 Mar 2012 13:40:15 -0800
parents d8b73d9b679d
children f00fcf6d9f1d
line wrap: on
line source

Test FileApp
============

The obligatory imports::

    >>> import fileserver
    >>> import os
    >>> from paste.fixture import TestApp
    >>> from webob import Request

Make a single file server::

    >>> filename = os.path.join(here, 'example', 'helloworld.txt')
    >>> os.path.exists(filename)
    True
    >>> app = fileserver.FileApp(filename)
    >>> testapp = TestApp(app)
    >>> response = testapp.get('/')
    >>> response.status
    200
    >>> response.body == file(filename).read()
    True

With conditional_response on, and with last_modified and etag set, we
can do conditional requests::

    >>> content_length = os.path.getsize(filename)
    >>> content_length # don't ask me why the 'L'
    6L
    >>> req = Request.blank('/')
    >>> res = req.get_response(app)
    >>> print res # doctest:+ELLIPSIS
    200 OK
    Content-Type: text/plain; charset=UTF-8
    Content-Length: 6
    Last-Modified: ... GMT
    ETag: ...-...
    <BLANKLINE>
    hello
    <BLANKLINE>