annotate tests/test_ttw.txt @ 67:cf03c3f2f98e

this one fails too; something is rotten in the state of virtualenv
author Jeff Hammel <jhammel@mozilla.com>
date Thu, 01 Mar 2012 19:40:10 -0800
parents a2ba66be2e31
children e62d2fddb275
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
60
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
1 Test Through The Web
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
2 ====================
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
3
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
4 Test ``simpypi`` through the web with a test server.
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
5
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
6 The obligatory imports::
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
7
65
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
8 >>> import os
66
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
9 >>> import shutil
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
10 >>> import subprocess
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
11 >>> import tempfile
62
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
12 >>> import urllib2
60
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
13 >>> from simpypi.factory import factory
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
14
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
15 Create a WSGI app::
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
16
46f5fd27ee54 stub testing TTW
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
17 >>> app = factory(directory=directory)
61
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
18
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
19 Now wrap it in a server::
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
20
62
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
21 >>> port = 64321
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
22 >>> server = testserver(app, 'localhost', port)
61
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
23 >>> server.start()
62
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
24 >>> url = 'http://localhost:%d/' % port
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
25
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
26 Get the home page::
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
27
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
28 >>> resource = urllib2.urlopen(url)
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
29 >>> contents = resource.read()
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
30 >>> 'Python Package Index' in contents
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
31 True
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
32
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
33 Get the index page::
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
34
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
35 >>> resource = urllib2.urlopen(url + 'index')
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
36 >>> contents = resource.read()
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
37 >>> 'Simple Index' in contents
7c154953acc4 test reading the pages
Jeff Hammel <jhammel@mozilla.com>
parents: 61
diff changeset
38 True
61
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
39
65
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
40
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
41 There should be no files to start out with::
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
42
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
43 >>> os.listdir(directory)
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
44 []
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
45
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
46 Upload a file::
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
47
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
48 >>> path = os.path.join(here, 'HelloWorld-0.0.tar.gz')
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
49 >>> upload = MultiPartForm()
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
50 >>> upload.add_file('package', path)
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
51 >>> response = upload.post(url)
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
52
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
53 Let's see if its in the right place::
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
54
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
55 >>> os.listdir(directory)
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
56 ['HelloWorld']
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
57 >>> os.listdir(os.path.join(directory, 'HelloWorld'))
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
58 ['HelloWorld-0.0.tar.gz']
83327bc715be make the virtualenv convenience method return more stuff
Jeff Hammel <jhammel@mozilla.com>
parents: 62
diff changeset
59
66
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
60 Make a virtualenv to install it in::
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
61
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
62 >>> tmpdir = tempfile.mkdtemp()
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
63 >>> venv = create_virtualenv(tmpdir)
67
cf03c3f2f98e this one fails too; something is rotten in the state of virtualenv
Jeff Hammel <jhammel@mozilla.com>
parents: 66
diff changeset
64 >>> code = subprocess.call([venv.python, '-c', 'import helloworld'])
cf03c3f2f98e this one fails too; something is rotten in the state of virtualenv
Jeff Hammel <jhammel@mozilla.com>
parents: 66
diff changeset
65 >>> code
cf03c3f2f98e this one fails too; something is rotten in the state of virtualenv
Jeff Hammel <jhammel@mozilla.com>
parents: 66
diff changeset
66 1
66
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
67 >>> shutil.rmtree(tmpdir)
a2ba66be2e31 tests mysteriously fail now
Jeff Hammel <jhammel@mozilla.com>
parents: 65
diff changeset
68
61
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
69 Shut down the server::
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
70
53ec5144f84f start serving PyPI
Jeff Hammel <jhammel@mozilla.com>
parents: 60
diff changeset
71 >>> server.stop()