Benjamin Sergeant
081dd2c4bb
Add unittest to IXSentryClient to lua backtrace parsing code
2019-10-26 10:54:47 -07:00
Benjamin Sergeant
bbfa76a2c9
move sentry code around and add a stub unittest for it
2019-10-25 14:54:31 -07:00
Benjamin Sergeant
c3a619f114
Add client support for websocket subprotocol. Look for the new addSubProtocol method for details
2019-10-13 13:37:34 -07:00
Benjamin Sergeant
a383ac10d9
make sure the unittest pass withouth SSL
2019-10-03 09:41:17 -07:00
Benjamin Sergeant
afed387bcf
Socket Factory has only one function which works for server and client code, and can do tls for both
2019-09-30 22:06:46 -07:00
Benjamin Sergeant
bf46f3fe8f
unittest / specify a cacert for tls client tests
2019-09-29 21:24:22 -07:00
Benjamin Sergeant
7e1a60e61d
DNS lookup test works on windows
2019-09-27 14:34:47 -07:00
Benjamin Sergeant
4cd11fdbc7
mbedtls fixes / the unittest now pass on macOS, and hopefully will on Windows/AppVeyor as well.
2019-09-27 14:07:01 -07:00
Benjamin Sergeant
6762978ddf
http server unittest + refactoring
2019-09-26 09:45:59 -07:00
Benjamin Sergeant
3cd7c0194f
Stop having ws send subcommand send a binary message in text mode, which would cause error in make ws_test
shell script test
2019-09-25 15:39:43 -07:00
Benjamin Sergeant
94c589f696
Fix 2 race conditions detected with TSan, one in CobraMetricsPublisher::push and another one in WebSocketTransport::sendData (that one was bad).
2019-09-24 11:46:54 -07:00
Benjamin Sergeant
490fbf4cb5
try to enable more tests on windows
2019-09-23 21:52:32 -07:00
Benjamin Sergeant
d46ce7eb63
fix tsan errors on macOS when running the unittest
2019-09-23 21:51:55 -07:00
Benjamin Sergeant
ceb0c602c9
Add simple Redis Server which is only capable of doing publish / subscribe. New ws redis_server sub-command to use it. The server is used in the unittest, so that we can run on CI in environment where redis isn not available like github actions env.
2019-09-23 21:04:01 -07:00
Benjamin Sergeant
95722e3bbb
fix linux compilation error, by ordering dependant libraries properly
2019-09-23 12:32:04 -07:00
Benjamin Sergeant
1cde26771a
move snake code to its own subfolder like ixcobra, ixcrypto, etc...
2019-09-23 11:46:16 -07:00
Benjamin Sergeant
cd3c9d879c
reformat everything with clang-format
2019-09-23 10:25:23 -07:00
Benjamin Sergeant
398c4fbf99
fix unittest
2019-09-22 19:40:33 -07:00
Benjamin Sergeant
e7b4a985b4
fix unittest compiler warnings
2019-09-22 19:22:48 -07:00
Benjamin Sergeant
20ce498d23
On error while doing a client handshake, additionally display port number next to the host name
2019-09-17 12:08:52 -07:00
Benjamin Sergeant
354c9b412e
rename test file
2019-09-17 12:07:31 -07:00
Benjamin Sergeant
e2121d809e
fix unittest warnings + remove trailing spaces
2019-09-12 11:43:52 -07:00
Benjamin Sergeant
2453f5b717
restructure project
2019-09-10 12:19:22 -07:00
Benjamin Sergeant
64d3c99f99
improve some websocket error messages + add a utility function with unittest to parse status line and stop using scanf which triggers warnings on Windows
2019-09-09 21:23:57 -07:00
Benjamin Sergeant
6c0890594b
improve some websocket error messages + add a utility function with unittest to parse status line and stop using scanf which triggers warnings on Windows
2019-09-09 17:34:36 -07:00
Benjamin Sergeant
427db5bd59
Fix Windows CI with appveyor ( #110 )
...
Fix windows CI with appveyor + minor tweaks.
2019-09-07 14:07:00 -07:00
Benjamin Sergeant
c259c918ac
cobra metrics publisher test uses random free port
2019-09-05 22:05:00 -07:00
Benjamin Sergeant
2f7438f0d5
cobra chat test uses random free port
2019-09-05 22:02:10 -07:00
Benjamin Sergeant
37a7b362d8
add cobra metrics publisher + server unittest
2019-09-05 21:57:05 -07:00
Benjamin Sergeant
c0f098a578
Add new cobra unittest, using server and client
2019-09-05 20:49:58 -07:00
Benjamin Sergeant
51799353a6
Sending invalid UTF-8 TEXT message should fail and close the connection (fix remaining autobahn test: 6.X UTF-8 Handling)
2019-09-03 14:12:40 -07:00
Benjamin Sergeant
e98ec9ec75
clang format
2019-08-13 10:59:18 -07:00
Benjamin Sergeant
dfc188a24d
do not use mbed tls for the unittest
2019-07-03 14:39:46 -07:00
Benjamin Sergeant
e8a20c7e8a
refactor select code + add protection against large fds (cf Android 9)
2019-06-25 15:41:39 -07:00
Benjamin Sergeant
0423ed01a6
Add extra check in IXWebSocketCloseTest.cpp
2019-06-25 14:10:39 -07:00
Benjamin Sergeant
f84bc53c8d
Feature/httpd ( #94 )
...
* Stub code for http server
* can send a response, cannot process body yet
* write headers to the response
* remove commented code
* add simple test + set default http handler
* tweak CI + unittest
* add missing file
* rewrite http::trim in a simple way
* doc
2019-06-23 14:54:21 -07:00
Benjamin Sergeant
b26e9d0338
IXDNSLookup. Uses weak pointer + smart_ptr + shared_from_this instead of static sets + mutex to handle object going away before dns lookup has resolved
2019-06-19 00:43:59 -07:00
Benjamin Sergeant
9d70fb2b86
disable building ws on windows on travis
2019-06-10 22:01:19 -07:00
Benjamin Sergeant
03b5a57474
compile error in IXWebSocketMessageQTest
2019-06-09 12:25:36 -07:00
Benjamin Sergeant
f58cf4826a
fix IXWebSocketMessageQTest.cpp
2019-06-09 12:08:00 -07:00
Benjamin Sergeant
3e15840b14
- WebSocket::send() sends message in TEXT mode by default
...
- WebSocketMessage sets a new binary field, which tells whether the received incoming message is binary or text
2019-06-09 11:56:47 -07:00
Benjamin Sergeant
be93f7480a
WebSocket callback only take one object, a const ix::WebSocketMessagePtr& msg
2019-06-09 11:33:17 -07:00
Benjamin Sergeant
2e5f24f1f8
...
2019-06-09 10:22:27 -07:00
Benjamin Sergeant
051c34bc5d
Add test/compatibility folder with small servers and clients written in different languages and different libraries to test compatibility.
2019-06-08 09:46:26 -07:00
Benjamin Sergeant
076e8bf6a3
add an option to easily disable per message deflate compression
2019-06-06 13:48:53 -07:00
Benjamin Sergeant
78b3d7ff2d
Feature/http async ( #90 )
...
* unittest working / uses shared_ptr for a bunch of things 🗿
* fix command line tools
* fix ws + add doc
* add more logging
2019-06-05 17:04:24 -07:00
Benjamin Sergeant
539abe5151
HttpResponse is a struct, not a tuple 🉐
2019-06-03 22:12:52 -07:00
Benjamin Sergeant
6b933391e5
http client: stop hardcoding Accept header, and use a default value if one is passed in 👭
2019-06-03 14:02:54 -07:00
Benjamin Sergeant
1e2a5ee21d
Add simple HTTP and HTTPS client test ㊙️
2019-06-03 12:23:35 -07:00
Benjamin Sergeant
06cbebe22e
Feature/mbedtls ( #84 )
...
* try to import mbedtls and build it
* add stubs socket class
* some boilterplate, read and write function implemented
* more boilterplate / current error in handshake because no CA cert is setup
* add something so skip ca verification, can ws curl https://google.com !
* cleanup / close implemented
* tweak CMakefiles
* typo in include
* update readme
* disable unittests
2019-06-01 17:41:48 -07:00