Aldo Cortesi
6c565e778f
Make previews safer by stripping pauses.
2012-07-24 22:38:48 +12:00
Aldo Cortesi
e9de11f0e3
Don't add stuff to our internal log buffer if noapi is on.
2012-07-24 22:30:15 +12:00
Aldo Cortesi
11896d2118
Turn off /log when noapi is set.
2012-07-24 22:27:04 +12:00
Aldo Cortesi
eb1f2c3fc4
Add option to specify craft anchor point.
2012-07-24 21:51:43 +12:00
Aldo Cortesi
97fe026c32
Add basic docs for request spec language.
2012-07-24 21:45:05 +12:00
Aldo Cortesi
94b491bb27
Add a Host header to pathoc requests by default.
2012-07-24 21:38:28 +12:00
Aldo Cortesi
9502eeadaa
Document raw flag.
2012-07-24 12:52:53 +12:00
Aldo Cortesi
a9e60fa3e6
Add a Date header to server responses, unless raw is set.
2012-07-24 12:46:14 +12:00
Aldo Cortesi
dbed251fb9
Add a raw modifier to requests and responses, which turn off automatic additions.
...
For now, this just turns off adding a Content-Length header when a body is specified.
2012-07-24 12:18:14 +12:00
Aldo Cortesi
2dd2137d44
Better handling of binary data output by pathoc.
2012-07-24 00:00:55 +12:00
Aldo Cortesi
a950a4d7a3
Add pathod --noapi to turn off the service API.
2012-07-23 23:31:26 +12:00
Aldo Cortesi
190392ea13
Add a --nocraft option to pathod that turns off crafting.
2012-07-23 21:39:31 +12:00
Aldo Cortesi
622a2b5607
Add a --noweb option to turn web iface off, refactor unit tests.
2012-07-23 19:55:33 +12:00
Aldo Cortesi
eba485f5eb
100% unit test coverage
2012-07-23 19:25:57 +12:00
Aldo Cortesi
763e1ff786
pathod.py unit tests++
2012-07-23 17:53:17 +12:00
Aldo Cortesi
1d1098687c
100% test coverage for pathoc.py
2012-07-23 17:42:44 +12:00
Aldo Cortesi
c1f75dd5a3
Use local scrolling with a JQuery module, because anchor jumps are braindead.
2012-07-23 17:30:50 +12:00
Aldo Cortesi
091d90011b
Unify offset specifications, and document them.
2012-07-23 17:19:25 +12:00
Aldo Cortesi
2880fee4e3
Escape unprintable content in preview.
2012-07-23 16:39:25 +12:00
Aldo Cortesi
773ada882d
Unit tests for most of app.py, return 404 for unknown log entry.
2012-07-23 16:18:47 +12:00
Aldo Cortesi
3027aae142
Use configured size limit to keep previews in check.
2012-07-23 15:38:06 +12:00
Aldo Cortesi
5283bb2507
Refactor rparse.InternalResponse -> rparse.PathodErrorResponse
2012-07-23 15:11:40 +12:00
Aldo Cortesi
1c45f5b05c
Use policy hook to apply a size limit in pathod, add corresponding cmdline arg.
2012-07-23 15:03:56 +12:00
Aldo Cortesi
c7b5faf7db
Add hooks for policy checks of served data.
2012-07-23 14:37:00 +12:00
Aldo Cortesi
204a556aa7
Add function for effective length calculation when actions are present.
2012-07-23 10:47:33 +12:00
Aldo Cortesi
32bd16aa31
Make file generators display nicely in pathoc actions dump.
2012-07-22 23:51:44 +12:00
Aldo Cortesi
96db3557ce
Constrain file access to configured directory in pathod.
2012-07-22 23:46:56 +12:00
Aldo Cortesi
1b03fd6780
Allow execution of specs from file, using +./path
2012-07-22 23:37:46 +12:00
Aldo Cortesi
33208b8720
Doc reorg.
2012-07-22 22:24:16 +12:00
Aldo Cortesi
817e550aa1
Multiline specifications for pathod and pathoc.
2012-07-22 15:26:05 +12:00
Aldo Cortesi
1e93e42883
Escape special characters in first line error log.
2012-07-22 12:40:27 +12:00
Aldo Cortesi
8d8ede7e26
Handle invalid content length headers.
2012-07-22 12:30:10 +12:00
Aldo Cortesi
7a49cdfef3
More robust response handling.
2012-07-21 20:50:41 +12:00
Aldo Cortesi
86fe199988
pathoc: add a flag to dump request information.
2012-07-21 20:20:37 +12:00
Aldo Cortesi
059a232903
Add support for client timeout to pathoc.
2012-07-21 16:19:44 +12:00
Aldo Cortesi
3e6f440b8d
Document Python-style string escaping.
2012-07-21 14:17:41 +12:00
Aldo Cortesi
8ec44c6277
Allow Python string escape sequences in value literals.
2012-07-21 14:12:45 +12:00
Aldo Cortesi
8e0c01ae39
Fine-tuning for injection: docs, bugfixes.
2012-07-20 23:47:34 +12:00
Aldo Cortesi
d7841898e3
Add an injection operator.
2012-07-20 23:36:39 +12:00
Aldo Cortesi
2bdbbaa8af
Convert documentation to HTML, fix styling.
2012-07-20 23:19:58 +12:00
Aldo Cortesi
21ef35fd28
Much simpler rewrite of inner data sending loop.
...
We don't have to do the asynchronous code contortion anymore.
2012-07-20 20:14:35 +12:00
Aldo Cortesi
3d9e8b2dbf
We shouldn't ever get a socket error emanating from netlib.
2012-07-20 15:21:36 +12:00
Aldo Cortesi
03f4dcc02b
Extend test suite to cover SSL. Log SSL connection errors.
2012-07-20 13:21:33 +12:00
Aldo Cortesi
76f0c3ea78
Handle invalid first line errors, add an error log buffer type.
2012-07-20 11:40:37 +12:00
Aldo Cortesi
1bb93176da
Handle NetLibDisconnect error.
2012-07-09 11:09:37 +12:00
Aldo Cortesi
2cb55ee0f5
Factor out request printing in to a method, and test it.
2012-06-30 10:51:13 +12:00
Aldo Cortesi
654a84174a
Move docs into pathod server.
2012-06-29 11:53:59 +12:00
Aldo Cortesi
1b42f5ab1f
Allow naked literals for path specification.
2012-06-29 10:42:15 +12:00
Aldo Cortesi
9588da4ab4
Catch errors that may happen on interpreter shutdown.
2012-06-27 16:15:22 +12:00
Aldo Cortesi
8f148b6b14
Split pathod and pathoc daemon test suites out.
2012-06-26 17:28:07 +12:00
Aldo Cortesi
a68b4498b8
Allow naked value literal for pathoc path specifications.
2012-06-26 15:36:59 +12:00
Aldo Cortesi
65aef81997
parse -> parse_response in web app
2012-06-26 15:09:05 +12:00
Aldo Cortesi
33be5a72bf
Fixed the WSGI server hang in netlib, remove fudge.
2012-06-26 14:49:40 +12:00
Aldo Cortesi
15aab74ddb
Catch and log SSL connection errors. Improve log format.
2012-06-26 11:03:35 +12:00
Aldo Cortesi
f32258e8f7
Port pathoc to new netlib API. Add SNI.
2012-06-26 10:15:11 +12:00
Aldo Cortesi
8352c0278f
Handle client close more gracefully.
2012-06-25 11:34:29 +12:00
Aldo Cortesi
3d8610b6bc
Move server to new explicit netlib API.
2012-06-25 11:22:44 +12:00
Aldo Cortesi
15c48cfc5e
Simple HTTP connection keep-alive for pathod.
2012-06-24 23:11:25 +12:00
Aldo Cortesi
a747043cc8
Use http.read_response to read server response.
...
Also add a few different output formats, and a verbosity flag.
2012-06-24 22:59:20 +12:00
Aldo Cortesi
ddda57179a
read_headers now returns an ODictCaseless object.
2012-06-24 21:49:43 +12:00
Aldo Cortesi
65487ead6d
Logging truss for pathod.
2012-06-24 21:40:31 +12:00
Aldo Cortesi
90c6fb394d
Sketch out pathoc commandline interaction.
2012-06-24 21:10:10 +12:00
Aldo Cortesi
8bec99f858
Request service rendering.
2012-06-24 19:12:52 +12:00
Aldo Cortesi
2ac84be7cb
Add Path specification to request parser.
2012-06-24 18:38:22 +12:00
Aldo Cortesi
f8622ea914
Simple request spec parsing.
2012-06-24 17:47:55 +12:00
Aldo Cortesi
75f06d56cd
Request method parsing.
2012-06-24 17:23:37 +12:00
Aldo Cortesi
d4ad3f0b2c
Refactor to extract ready_actions and write_values.
2012-06-24 17:01:04 +12:00
Aldo Cortesi
4fc64ac04f
Enable anchors on command line.
2012-06-24 16:38:32 +12:00
Aldo Cortesi
e6aa9ff675
Re-enable anchors.
2012-06-24 16:20:50 +12:00
Aldo Cortesi
877b5a2d11
Add staticdir to test.Test.
2012-06-24 15:12:31 +12:00
Aldo Cortesi
2e558b7e9d
Fix disconnect, improve coverage, enable file value specifier.
2012-06-24 15:07:45 +12:00
Aldo Cortesi
b71e2f6f2b
More doc refinement.
2012-06-24 11:14:54 +12:00
Aldo Cortesi
e236d7746a
Move http.py to netlib.http_status
2012-06-23 18:34:35 +12:00
Aldo Cortesi
cb2f11a68e
Bump version, adapt for API canges in netlib.
2012-06-23 14:06:54 +12:00
Aldo Cortesi
b335b3a335
Remove last vestige of Tornado pathod.
2012-06-21 17:00:04 +12:00
Aldo Cortesi
cd8fba1d70
Finalize porting built-in web app to Flask.
2012-06-21 16:54:49 +12:00
Aldo Cortesi
f88e899274
Built-in app: Index page.
2012-06-21 16:25:27 +12:00
Aldo Cortesi
f0fd33fb11
Log inspection and manipulation from tests.
2012-06-21 15:39:40 +12:00
Aldo Cortesi
12c140b951
Restore client argument parsing. Add thread-safe logging subsystem.
2012-06-21 14:29:49 +12:00
Aldo Cortesi
1089a52f3d
Disconnect, rest refactoring.
2012-06-21 10:56:30 +12:00
Aldo Cortesi
de00497b40
Re-enable SSL service.
2012-06-20 10:59:38 +12:00
Aldo Cortesi
7922e70037
Basic response generation.
2012-06-20 10:51:37 +12:00
Aldo Cortesi
892ee2a904
Start porting web app to Flask.
2012-06-19 16:57:57 +12:00
Aldo Cortesi
a700721891
Porting to netlib proceeds apace.
2012-06-19 13:23:07 +12:00
Aldo Cortesi
bd99a13f39
Start refactoring towards netlib, adding SNI and client testing.
2012-06-17 07:57:24 +12:00
Aldo Cortesi
b1f410c78d
Join thread on test exit to avoid race condition.
2012-06-09 20:42:43 +12:00
Aldo Cortesi
00c8bef0ff
Port test suite over to Nose.
2012-06-09 15:08:51 +12:00
Aldo Cortesi
a29ebe31dc
SSL support for test struss.
...
Also, rewrite requests usage for latest version.
2012-06-07 17:02:17 +12:00
Aldo Cortesi
9ae53aecd0
We can't sensibly unit test pages withhout firing up a server.
...
We've just added functionality to do this ourselves, so rip out the old stuff.
2012-06-07 16:35:54 +12:00
Aldo Cortesi
26c8437e88
Better test daemon cleanup, improve utils test coverage.
2012-06-07 14:05:42 +12:00
Aldo Cortesi
34ffe46fa0
Add /api/info, returning general info on the running pathod daemon.
2012-06-07 11:39:37 +12:00
Aldo Cortesi
14b2a69d21
Start building a Pathod unit testing truss.
...
- Add test.py, which will house the testing API.
- Extend API with a shutdown method, used to terminate the test daemon.
- Refactor to allow clean shutdown.
2012-06-07 11:23:23 +12:00
Aldo Cortesi
b5a74a26ee
Let Pathod pick an arbitrary empty port if -p 0 is specified.
2012-06-07 10:17:30 +12:00
Aldo Cortesi
049d3d2b45
lippathod/app.py -> libpathod/pathod.py
2012-06-07 08:50:06 +12:00
Aldo Cortesi
d171e13fd3
Fix redundant imports, tweak TODO for 0.2
2012-04-30 10:09:16 +12:00
Aldo Cortesi
3365acf69f
Clear log API.
2012-04-30 09:54:49 +12:00
Aldo Cortesi
24b0acbfab
Log retrieval API.
2012-04-30 09:46:49 +12:00
Aldo Cortesi
04f4f8e2a1
setup.py, LICENSE, README.txt
2012-04-29 21:30:48 +12:00
Aldo Cortesi
ccd6eeed4b
Make "Go" button on preview form work.
2012-04-29 21:22:00 +12:00
Aldo Cortesi
1431b36c4a
Preview in web application.
2012-04-29 21:15:02 +12:00