aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)Author
2013-07-12Merge branch 'fix/websocket-inflate-unmask' of git://github.com/soundrop/cowboyLoïc Hoguin
2013-07-12Merge branch 'fix-chunked-req' of git://github.com/fishcakez/cowboyLoïc Hoguin
2013-07-05Fix decoding of chunked body.James Fish
Previously cowboy_http:te_chunked/2 would enter an incorrect state if it tried to parse an incomplete chunk when the length was known from the partial chunk. Previosuly cowboy_http:te_chunked/2 expected the trailing "\r\n" to always be present if chunk body was present in the buffer. This is not guaranteed and so this commit accommodates that situation.
2013-07-02Add failing tests for the websocket deflate supportAli Sabil
2013-06-29Merge branch 'fix/http-tests-get-mtu' of git://github.com/soundrop/cowboyLoïc Hoguin
2013-06-20Add asn1 to the list of applications to be started for SSLLoïc Hoguin
Required since R16B01. And apparently needed in some cases before.
2013-06-20Add support for the webkit deflate frame extensionAli Sabil
2013-06-13Use ct_helper for retrieving the loopack interface MTUAli Sabil
2013-06-10Improve the detection of localhost interfaces for the HTTP test suiteAli Sabil
2013-06-07Fix the reading of the localhost MTU in the HTTP testsAli Sabil
Sometimes the localhost interface has a different name from "lo", this fix adds a helper function to read the MTU value when the interface name starts with "lo".
2013-06-03Add sendfile support to SPDY, enabling cowboy_static useLoïc Hoguin
2013-06-03Move static files creation into ct_helperLoïc Hoguin
2013-05-31In content-types, the charset parameter is converted to lowercaseLoïc Hoguin
We know this specific parameter is case insensitive so we automatically lowercase it to make things simpler to the developer.
2013-05-30Add experimental and incomplete SPDY supportLoïc Hoguin
The SPDY connection processes are also supervisors. Missing: * sendfile support * request body reading support
2013-05-16Make the return value of AcceptResource callback consistentLoïc Hoguin
2013-05-01Update Ranch to 0.8.2 and use ct_helper for testing SSLLoïc Hoguin
2013-04-28Merge branch 'chunked-set-resp-body-fun' of git://github.com/fishcakez/cowboyLoïc Hoguin
2013-04-26Add chunked response body funJames Fish
Adds a new type of streaming response fun. It can be set in a similar way to a streaming body fun with known length: Req2 = cowboy_req:set_resp_body_fun(chunked, StreamFun, Req) The fun, StreamFun, should accept a fun as its single argument. This fun, ChunkFun, is used to send chunks of iodata: ok = ChunkFun(IoData) ChunkFun should not be called with an empty binary or iolist as this will cause HTTP 1.1 clients to believe the stream is over. The final (0 length) chunk will be sent automatically - even if it has already been sent - assuming no exception is raised. Also note that the connection will close after the last chunk for HTTP 1.0 clients.
2013-04-26Move a test resource where it belongsLoïc Hoguin
2013-04-26Merge branch 'fix-tests' of git://github.com/fishcakez/cowboyLoïc Hoguin
2013-04-26Merge branch 'pr-381-fix' of git://github.com/seletskiy/cowboyLoïc Hoguin
2013-04-26Add default CTP: "text/html" maps to `to_html`Seletskiy Stanislav
2013-04-26Fix memory issue with large return values in testcasesJames Fish
Previously http_SUITE:echo_body/1 and http_SUITE:check_raw_status/1 returned large values. Common test would then try to write these to the logs causing tests to take a long time and use lots of memory.
2013-04-24Update Autobahn test suite to 0.5.3Loïc Hoguin
2013-04-24Only test Websocket RFC6455 in Autobahn from now onLoïc Hoguin
2013-04-24Reorganize the http test suiteLoïc Hoguin
2013-04-22Move SSL test certificates in a subdirectoryLoïc Hoguin
2013-04-22Reorganize the websocket test suiteLoïc Hoguin
We now have the suite specific modules in the data folder. Compilation is performed by the Makefile instead of ct_run.
2013-04-12Add default operations for OPTIONS method in RESTLoïc Hoguin
It defaults to setting the Allow header to "HEAD, GET, OPTIONS".
2013-04-12Ensure we can fetch the body in the info/3 function of loop handlersLoïc Hoguin
2013-04-12rest: reject incorrect content-type headerVladimir Dronnikov
2013-04-11Remove process_post, post_is_create, create_path, created_path callbacksLoïc Hoguin
Instead it will always go through content_types_accepted and it is up to the resource code to do any creation and to return the created path if the method is POST and the client should be redirected to the created resource's location. This removes the meta value 'put_path' as it is not needed anymore. This fixes an issue with PATCH where content types were not normalized.
2013-03-06Check the length before reading the body in body/1 and body_qs/1rambocoder
2013-03-03Add '*' matcher for parametersSlava Yurin
For get_type_provided: '*' will be match any parameters of media-range in "accept" header. If '*' matched, then '*' is replaced by the matching parameters. If Accept header is missing and '*' using, then in media_type in parameters will be '*' and reply content-type will be without any parameters. For content_types_accepted: '*' will be match any parameters in "content-type" header.
2013-03-02Run tests in parallelLoïc Hoguin
2013-03-02Use random ports for testsLoïc Hoguin
2013-02-20Add cowboy:set_env/3Loïc Hoguin
2013-02-11Better handle socket closing with loop handlersLoïc Hoguin
We now read from the socket to be able to detect errors or TCP close events, and buffer the data if any. Once the data receive goes over a certain limit, which defaults to 5000 bytes, we simply close the connection with an {error, overflow} reason.
2013-01-29Merge branch 'patch-1' of https://github.com/CamShaft/cowboyLoïc Hoguin
Conflicts: src/cowboy_rest.erl
2013-01-29allow POST rest handling to specify path after accepting contentTom Burdick
2013-01-29Merge branch 'rest_patch' of https://github.com/treetopllc/cowboyLoïc Hoguin
2013-01-29Fix chunked streaming of request body and improve speedLoïc Hoguin
2013-01-29add patch support to cowboy_restTom Burdick
2013-01-28New routingLoïc Hoguin
Ultimately few things change, it's mostly just a nicer syntax and slightly different expectations. The name of the value `dispatch` did not change, because the previous dispatch values will now fail if the code is not updated to using `cowboy_router:compile/1`. No constraints have been implemented in this commit.
2013-01-22Do not require inets for running tests anymoreLoïc Hoguin
2013-01-22Replace terminate/2 with terminate/3, adding a ReasonLoïc Hoguin
This should have been done a *long* time ago, back when I initially added Websocket support. This is the first part of two in improving loop handler support with regards to socket closure. Reason may include: {normal, shutdown} for the most normal shutdown, {normal, timeout} for a loop handler timeout shutdown, or {error, _} if an error occured.
2013-01-21Improve keepalive testsLoïc Hoguin
2013-01-20Fix an issue for replies in onresponse mishandling headersLoïc Hoguin
Reported and fixed over email by Adrian Roe.
2013-01-19Make cowboy_req:has_body/1 return boolean()Loïc Hoguin
This makes it similar to the other has_* functions.
2013-01-14Improve websocket close handlingLoïc Hoguin
We now always send a failure reason (bad protocol, bad encoding, etc.) unless the closure was initiated by the client and it didn't send a close code. We now check that the close frames have a payload that is valid UTF-8, unless they don't have a payload at all. We now do not crash the process anymore when bad opcodes are sent, or when the opcode 0 is sent before fragmentation was initiated. Overall this makes us closer to full compliance with the RFC.