From c2029496b8612f82ba2bb83beb9b9981d4a2e911 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Sun, 29 Apr 2012 21:41:56 +1200 Subject: [PATCH] Doc tweaks. --- README.mkd | 36 ++++++++++++++++++------------------ pathod | 4 ++-- todo | 8 +++----- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/README.mkd b/README.mkd index ecbf32109..29be61d12 100644 --- a/README.mkd +++ b/README.mkd @@ -1,10 +1,10 @@ -Pathod -====== +_pathod_ +======== -Pathod is a pathological HTTP/S daemon, useful for testing and torturing client -software. At Pathod's core is a small, terse language for crafting HTTP -responses. The simplest way to use Pathod is to fire up the daemon, and specify +_pathod_ is a pathological HTTP/S daemon, useful for testing and torturing client +software. At _pathod_'s core is a small, terse language for crafting HTTP +responses. The simplest way to use _pathod_ is to fire up the daemon, and specify the respnse behaviour you want using this language in the request URL. Here's a minimal example: @@ -12,7 +12,7 @@ minimal example: Everything below the magic "/p/" path component is a response specifier - in this case just a vanilla 200 OK response. See the docs below to get (much) -fancier. You can also add anchors to the Pathod server that serve a fixed +fancier. You can also add anchors to the _pathod_ server that serve a fixed response whenever a matching URL is requested: pathod --anchor "/foo=200" @@ -20,7 +20,7 @@ response whenever a matching URL is requested: Here, the part before the "=" is a regex specifying the anchor path, and the part after is a response specifier. -Pathod also has a nifty built-in web interface, which exposes activity logs, +_pathod_ also has a nifty built-in web interface, which exposes activity logs, online help and various other goodies. Try it by visiting the server root: http://localhost:9999 @@ -40,16 +40,16 @@ OK message with no headers and no content: 200 We can embellish this a bit by specifying an optional custom HTTP response -message (if we don't, Pathod automatically creates an appropriate one). By +message (if we don't, _pathod_ automatically creates an appropriate one). By default for a 200 response code the message is "OK", but we can change it like this: 200"YAY" The quoted string here is an example of a Value Specifier, a syntax that is -used throughout the Pathod response specification language. In this case, the +used throughout the _pathod_ response specification language. In this case, the quotes mean we're specifying a literal string, but there are many other fun -things we can do. For example, we can tell Pathod to generate 100k of random +things we can do. For example, we can tell _pathod_ to generate 100k of random ASCII letters instead: 200@100k,ascii_letters @@ -79,14 +79,14 @@ shorcut for the content-type header is "c": That's it for the basic response definition. Now we can start mucking with the responses to break clients. One common hard-to-test circumstance is hangs or -slow responses. Pathod has a pause operator that you can use to define +slow responses. _pathod_ has a pause operator that you can use to define precisely when and how long the server should hang. Here, for instance, we hang for 120 seconds after sending 50 bytes (counted from the first byte of the HTTP response): 200:b@1m:p120,50 -If that's not long enough, we can tell Pathod to hang forever: +If that's not long enough, we can tell _pathod_ to hang forever: 200:b@1m:p120,f @@ -94,12 +94,12 @@ Or to send all data, and then hang without disconnecting: 200:b@1m:p120,a -We can also ask Pathod to hang randomly: +We can also ask _pathod_ to hang randomly: 200:b@1m:pr,a There is a similar mechanism for dropping connections mid-response. So, we can -tell Pathod to disconnect after sending 50 bytes: +tell _pathod_ to disconnect after sending 50 bytes: 200:b@1m:d50 @@ -123,7 +123,7 @@ Set a header. Both KEY and VALUE are full _Value Specifiers_. #### bVALUE -Set the body. VALUE is a _Value Specifier_. When the body is set, Pathod will +Set the body. VALUE is a _Value Specifier_. When the body is set, _pathod_ will automatically set the appropriate Content-Length header. @@ -143,7 +143,7 @@ A shortcut for setting the Location header. Equivalent to: #### dOFFSET -Disconnect after OFFSET bytes. The offset can also be "r", in which case Pathod +Disconnect after OFFSET bytes. The offset can also be "r", in which case _pathod_ will disconnect at a random point in the response. @@ -174,7 +174,7 @@ backslashes within the string: ### Files You can load a value from a specified file path. To do so, you have to specify -a _staticdir_ option to Pathod on the command-line, like so: +a _staticdir_ option to _pathod_ on the command-line, like so: pathod -d ~/myassets @@ -192,7 +192,7 @@ The path value can also be a quoted string, with the same syntax as literals: An @-symbol lead-in specifies that generated data should be used. There are two components to a generator specification - a size, and a data type. By default -Pathod assumes a data type of "bytes". +_pathod_ assumes a data type of "bytes". Here's a value specifier for generating 100 bytes: diff --git a/pathod b/pathod index cae06e4a1..a4e81e919 100755 --- a/pathod +++ b/pathod @@ -1,6 +1,6 @@ #!/usr/bin/env python import argparse, sys -from libpathod import app, utils +from libpathod import app, utils, version import tornado.ioloop if __name__ == "__main__": @@ -48,7 +48,7 @@ if __name__ == "__main__": ) else: ssl = None - print "pathod listening on port %s"%args.port + print "%s listening on port %s"%(version.NAMEVERSION, args.port) try: app.run(application, args.port, ssl) except KeyboardInterrupt: diff --git a/todo b/todo index 660eb36c9..fe9c2db37 100644 --- a/todo +++ b/todo @@ -1,12 +1,10 @@ -0.1: - - setup.py +0.2: - API - Logs, log reset, log retrieval - Anchor management - -0.2: - Specify if server should add Server and Date headers - Shortcuts for cookies, auth - Various SSL errors (expired certs, etc.) - - Caching + - Caching functions +