Module Expr Str Import alias Import alias Assign NameStore Dict Str Str Str Str Assign NameStore Call NameLoad Assign NameStore Call NameLoad Assign NameStore Call NameLoad Assign NameStore Num FunctionDef arguments args NameParam NameParam defaults body Global identifier Assign NameStore ListLoad Assign NameStore Call AttributeLoad NameLoad attr Str If BoolOpAnd CompareEq SubscriptLoad NameLoad Index Str Str CompareEq SubscriptLoad NameLoad Index Str Str CompareNotIn NameLoad NameLoad body Assign NameStore NameLoad AugAssignAdd NameStore ListLoad TupleLoad Str BinOpMod Str NameLoad AugAssignAdd NameStore Num Assign NameStore Str orelse If BoolOpAnd CompareEq SubscriptLoad NameLoad Index Str Str CompareEq SubscriptLoad NameLoad Index Str Str body Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call NameLoad SubscriptLoad NameLoad Index Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Str Index Num If BoolOpAnd CompareIn NameLoad NameLoad CompareEq SubscriptLoad NameLoad Index NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad NameLoad If UnaryOpNot CompareIn NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad Str Assign SubscriptStore NameLoad Index NameLoad Num AugAssignAdd NameStore ListLoad TupleLoad Str Str Assign NameStore Str Assign NameStore Str orelse Assign NameStore NameLoad Assign NameStore Str orelse If BoolOpAnd CompareEq SubscriptLoad NameLoad Index Str Str CompareEq SubscriptLoad NameLoad Index Str Str CompareIn NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad Assign NameStore Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Index Str If CompareIn Str NameLoad body Assign SubscriptStore NameLoad Index NameLoad Call NameLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num If CompareIn Str NameLoad body Assign SubscriptStore NameLoad Index NameLoad SubscriptLoad SubscriptLoad NameLoad Index Str Index Num Assign NameStore BinOpMod NameLoad TupleLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad Assign NameStore Str orelse If CompareEq SubscriptLoad NameLoad Index Str Str body If CompareIn NameLoad NameLoad body Delete SubscriptDel NameLoad Index NameLoad Assign NameStore Str Assign NameStore Str Pass orelse If CompareNotIn SubscriptLoad NameLoad Index Str TupleLoad Str Str body Assign NameStore NameLoad Assign NameStore Str orelse Raise NameLoad AugAssignAdd NameStore ListLoad TupleLoad Str Str TupleLoad Str Call NameLoad Call NameLoad NameLoad Expr Call NameLoad NameLoad NameLoad Return ListLoad NameLoad decorator_list Assign NameStore Str Assign NameStore Str Assign NameStore Str Assign NameStore Str Assign NameStore Str
N/A N/A 
Web application to test with PyModel WebApplication sample

This is a WSGI-compliant application.  Its behavior is similar to
Juhan Ernits' sample application in PHP at http://nmodel.codeplex.com/

To run this web application:

 wsgirunner webapp  # runs on port 8000 on localhost

or 

 wsgirunner -p 8080 webapp  # -p option sets port number on localhost

 N/A pprint N/A urlparse N/A password N/A user1 user2 123 234 N/A integers N/A dict N/A strings N/A dict N/A sessions N/A dict N/A next_cookie 0 application N/A N/A environ start_response N/A N/A N/A next_cookie N/A response_headers N/A N/A cookie N/A N/A environ get HTTP_COOKIE N/A N/A N/A N/A environ N/A PATH_INFO /webapp.py N/A N/A environ N/A REQUEST_METHOD GET N/A cookie sessions N/A N/A response_body login_page N/A response_headers N/A N/A Set-Cookie N/A PYSESSID=%s; path=/ next_cookie N/A next_cookie 1 N/A status 200 OK N/A N/A N/A N/A N/A environ N/A PATH_INFO /webapp.py N/A N/A environ N/A REQUEST_METHOD POST N/A N/A wd N/A environ N/A wsgi.input N/A method N/A environ N/A REQUEST_METHOD N/A length N/A int N/A environ N/A CONTENT_LENGTH N/A request_body N/A N/A wd read length N/A vars N/A N/A urlparse parse_qs request_body N/A user N/A N/A vars N/A username N/A 0 N/A passwd N/A N/A vars N/A password N/A 0 N/A N/A N/A user password N/A N/A password N/A user passwd N/A N/A N/A sessions N/A cookie user N/A N/A N/A user strings N/A N/A N/A strings N/A user N/A N/A integers N/A user 0 N/A response_headers N/A N/A Location webapp.py N/A status 302 Found N/A response_body N/A N/A response_body login_failure_page N/A status 200 OK N/A N/A N/A N/A N/A environ N/A PATH_INFO /webapp.py N/A N/A environ N/A REQUEST_METHOD GET N/A cookie sessions N/A N/A user N/A sessions N/A cookie N/A vars N/A N/A urlparse parse_qs N/A environ N/A QUERY_STRING N/A N/A num vars N/A N/A N/A integers N/A user N/A str N/A N/A vars N/A num N/A 0 N/A N/A str vars N/A N/A N/A strings N/A user N/A N/A vars N/A str N/A 0 N/A response_body N/A dostuff_template N/A N/A integers N/A user N/A strings N/A user N/A status 200 OK N/A N/A N/A N/A environ N/A PATH_INFO /logout.py N/A N/A N/A cookie sessions N/A N/A N/A sessions N/A cookie N/A response_body N/A status 200 OK N/A N/A N/A N/A N/A environ N/A PATH_INFO N/A /webapp.py /logout.py N/A N/A response_body p404_page N/A status 404 Not Found N/A N/A ValueError N/A response_headers N/A N/A Content-Type text/html N/A Content-Length N/A str N/A len response_body N/A N/A start_response status response_headers N/A N/A response_body N/A N/A environ_template environ is 

%s

 N/A p404_page <html>
<head>
<title>404 Not Found</title>
</head>
<body>
404 Not found
</body>
</html>
 N/A login_page <html>
<head>
<title>LoginPage</title>
</head>
<body>
<form method="POST" action="webapp.py">
Username: <input type="text" name="username" size="20">
Password: <input type="password" name="password" size="20">
<input type="submit" value="Submit" name="login">
</form>
</body>
</html>
 N/A login_failure_page 
<head>
<title>Login Failure</title>
</head>
<body>
Incorrect login name or password. Please try again.
</body>
</html>
 N/A dostuff_template 
<html>
<head>
<title>DoStuff</title>
</head>
<body>
Number: %s<br/>
String: %s
<form name="number" method="GET" action="webapp.py">
Number: <input type="text" name="num" size="2">
<input type="submit" value="Submit" name="inputNumber">
</form>
<form name="string" method="GET" action="webapp.py">
String: <input type="text" name="str" size="20">
<input type="submit" value="Submit" name="inputString">
</form>

<a href="logout.py">Log out</a>
</body>
</html>
