Aldo Cortesi
8741600ce7
Refactoring: canonical storage of a message is now the sequence of tokens that defines it.
...
We use a set of accessor properties to ease access to tokens. We can now ditch
the .accept() methods.
2012-10-29 15:16:44 +13:00
Aldo Cortesi
882969086c
Cleaup, some more ABCs.
2012-10-29 10:19:58 +13:00
Aldo Cortesi
61f8992fbf
Change response spec format to code[:features]
...
Reason message is now specified as just another feature with the "m" mnemonic.
2012-10-28 22:18:06 +13:00
Aldo Cortesi
07560ffe30
Cleaup, ABC for Value classes.
2012-10-28 22:00:19 +13:00
Aldo Cortesi
35f37626a9
Clean up .accept() signature.
2012-10-28 17:39:58 +13:00
Aldo Cortesi
7d74f75f6d
Split Code and Reason into separate _Component objects.
2012-10-28 17:07:16 +13:00
Aldo Cortesi
e9af434c2b
.body and .method to lazy generator instantiation.
...
Also introduce a _Component ABC.
2012-10-28 14:15:29 +13:00
Aldo Cortesi
9d42a06c92
Move message body to new lazy-generator scheme.
2012-10-28 12:56:08 +13:00
Aldo Cortesi
f54ed69a35
Adjust serve() API.
2012-10-28 09:06:55 +13:00
Aldo Cortesi
ac5aacce44
Remove check argument to serve() methods.
...
Refactoring means we can now do this without a callback.
Also introduce the maximum_length method that estimates the max possible
message length.
2012-10-27 17:40:22 +13:00
Aldo Cortesi
06864e5a1b
Major refactoring towars separate representation of expressions and request/response service.
2012-10-27 14:00:50 +13:00
Aldo Cortesi
6174e46023
Unit test suite love: 100% coverage
...
Also start figuring out how to sanitize binary data in the JSON API.
2012-10-25 10:59:18 +13:00
Aldo Cortesi
173b5c596e
Start moving policy checks to service-time, rather than parse-time.
2012-10-25 09:45:55 +13:00
Aldo Cortesi
c684f7417d
Extend Action and Value classes
...
- Values now know how to print their own specs
- Actions now know how to print their own specs
- Actions have a resolve_offset method that resolves relative and random offsets.
2012-10-24 11:32:53 +13:00
Aldo Cortesi
e83392bfc8
Start making Action objects more sophisticated.
2012-10-05 11:23:30 +13:00
Aldo Cortesi
495daf2b64
Remove actions log and explain, preparing for a more sophisticated take on this.
2012-10-05 11:14:17 +13:00
Aldo Cortesi
f5d5cc4988
rparse.py -> language.py
2012-10-05 10:30:32 +13:00
Aldo Cortesi
41f1c66772
Add -q and -r flags to pathod, logging request and respnose bytes.
...
- These flags also mean that a bytes log is included in the internal log
buffer.
- There's an -x flag to turn on hex dump output in the text logs (does
not affect the log buffer).
2012-10-01 12:48:26 +13:00
Aldo Cortesi
915bcfbd30
Add timeout argument to Pathod, and matching -t command-line option.
2012-10-01 12:01:02 +13:00
Aldo Cortesi
8bb81be2b0
Add pathoc -T to ignore timeouts.
...
Also move -c to -C for consistency.
2012-09-28 11:38:49 +12:00
Aldo Cortesi
7209a75201
Add pathoc -c to specify a list of return codes to ignore.
2012-09-27 09:44:25 +12:00
Aldo Cortesi
10a19fc4da
Refactor print_requests -> print_request
...
- Change to handle one request at a time
- Shift error handling around
2012-09-26 14:25:39 +12:00
Aldo Cortesi
b67d99638a
Response printing
...
Options to output full response, as sniffed from the socket.
2012-09-26 11:07:22 +12:00
Aldo Cortesi
a69d602087
Hex and verbatim output of requests.
...
This works by sniffing traffic through the socket, so always gives us the exact
traffic sent upstream.
2012-09-26 10:38:47 +12:00
Aldo Cortesi
0a5d4fbbbb
Stub out new output argument structure.
2012-09-26 10:12:30 +12:00
Aldo Cortesi
2f7188164c
Download page, MANIFEST.in
2012-08-23 12:54:58 +12:00
Aldo Cortesi
fde65270af
Testing examples and docs.
2012-07-30 20:58:59 +12:00
Aldo Cortesi
e52a37ffa9
Cleanup of libpathod.test, test example for front page.
2012-07-30 17:29:36 +12:00
Aldo Cortesi
e26aac1d3c
100% test coverage.
2012-07-30 13:52:40 +12:00
Aldo Cortesi
3e158211a8
Add a --nohang flag that turns off pauses in response generation.
2012-07-26 20:01:51 +12:00
Aldo Cortesi
eb43291b3c
Note that pauses are skipped during previews.
2012-07-25 12:49:22 +12:00
Aldo Cortesi
24f69419df
Unit test about page.
2012-07-25 12:39:51 +12:00
Aldo Cortesi
e7e6a60246
Nicer error for empty preview spec submission.
2012-07-25 10:55:00 +12:00
Aldo Cortesi
59f408dcf4
Refine parse error message a bit.
2012-07-25 10:44:21 +12:00
Aldo Cortesi
8cfbc2f80e
Refactor test.py, add unit tests for app.py corner case.
2012-07-25 10:34:57 +12:00
Aldo Cortesi
e1df7f47a6
Sizing and placeholder for preview forms.
2012-07-25 10:24:09 +12:00
Aldo Cortesi
7dab85e8b1
Handle file access denied errors in previews.
2012-07-25 00:18:23 +12:00
Aldo Cortesi
64ef0a4561
Swap the offset, seconds arguments for the pause operator.
...
This makes it uniform with the other operators.s
2012-07-24 23:57:18 +12:00
Aldo Cortesi
cb09488dc8
Make actions at end of message work.
2012-07-24 23:49:58 +12:00
Aldo Cortesi
ab59d6dccf
Add preview for pathoc requests to web app.
2012-07-24 23:13:04 +12:00
Aldo Cortesi
6c565e778f
Make previews safer by stripping pauses.
2012-07-24 22:38:48 +12:00
Aldo Cortesi
94b491bb27
Add a Host header to pathoc requests by default.
2012-07-24 21:38:28 +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
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
2880fee4e3
Escape unprintable content in preview.
2012-07-23 16:39:25 +12:00
Aldo Cortesi
e354974787
100% test coverage for app.py
2012-07-23 16:28:34 +12:00