1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-23 00:00:06 +01:00
libwebsockets/minimal-examples-lowlevel/api-tests/api-test-lws_tokenize
Andy Green 047fb7bb21 tokenize: enhance to support chunked parsing
Add EXPECT_MORE flag to indicate that running out of input is not (yet)
indicating the end of the document.  The caller should remove this flag
when it identifies that it does not have the chunk with the end of the
document: the last chunk may be zero length.

Track line numbers so the caller can infer CR, absorb CRLF -> CR.

Also add COLON_NONTERM needed for ipv6 literal addresses.
2022-04-10 06:56:12 +01:00
..
CMakeLists.txt cmake: Enable WITH_MINIMAL_EXAMPLES by default 2021-11-11 11:52:46 +00:00
main.c tokenize: enhance to support chunked parsing 2022-04-10 06:56:12 +01:00
README.md examples: move existing to m-e-lowlevel and start repoulating m-e with SS 2021-10-08 09:49:05 +01:00

lws api test lws_tokenize

Performs selftests for lws_tokenize

build

 $ cmake . && make

usage

Commandline option Meaning
-d Debug verbosity in decimal, eg, -d15
-s "input string" String to tokenize
-f 15 LWS_TOKENIZE_F_ flag values to apply to processing of -s
 $ ./lws-api-test-lws_tokenize
[2018/10/09 09:14:17:4834] USER: LWS API selftest: lws_tokenize
[2018/10/09 09:14:17:4835] USER: Completed: PASS: 6, FAIL: 0

If the -s string option is given, the string is tokenized on stdout in the format used to produce the tests in the sources

 $ ./lws-api-test-lws_tokenize -s "hello: 1234,256"
[2018/10/09 09:14:17:4834] USER: LWS API selftest: lws_tokenize
{ LWS_TOKZE_TOKEN_NAME_COLON, "hello", 5 }
{ LWS_TOKZE_INTEGER, "1234", 4 }
{ LWS_TOKZE_DELIMITER, ",", 1 }
{ LWS_TOKZE_INTEGER, "256", 3 }
{ LWS_TOKZE_ENDED, "", 0 }