Commit Graph

620 Commits

Author SHA1 Message Date
Lucas Clemente
e2f5d72301 add an integration test using a dockered chrome via selenium
this commit also moves the {Before,After}Suite functions from the
integration_test.go file into the integrationtests_suite_test.go file,
and adds the docker-specific hooks.

ref #162
2016-06-05 15:57:24 +02:00
Marten Seemann
f34890e608 add a simple UDP proxy for integration tests
ref #167
2016-06-05 17:22:30 +07:00
Lucas Clemente
981b465287 fix a race condition of openStreamsCount in session 2016-06-05 12:17:10 +02:00
Marten Seemann
d2c1f0c71a move integration tests to separate package 2016-06-05 17:04:15 +07:00
Lucas Clemente
6a46465092 reduce calls to Debugf when not debugging to reduce slice allocs
ref #129
2016-06-04 15:13:46 +02:00
Lucas Clemente
0f941214b4 fix linter 2016-06-03 21:03:46 +02:00
Lucas Clemente
cc3a94f6b4 handle errors in integration test http.Handlers 2016-06-03 21:02:57 +02:00
Lucas Clemente
68478ed3f1 fix a race condition with stream creation
fixes #164, ref #163
2016-06-03 21:01:02 +02:00
Lucas Clemente
ffacf2f328 fix a possible deadlock in flow controller
ref #164
2016-06-03 18:21:26 +02:00
Lucas Clemente
f6be8716b5 kill client after timeout in integration tests
this should fix the hang-issue of #163
2016-06-03 15:16:32 +02:00
Lucas Clemente
c7324bbfe9 improve integration tests with new server.Serve API
this probably fixes the refused connections issue in #163
2016-06-03 13:31:15 +02:00
Lucas Clemente
3b5b4c1557 add h2quic.Server.Serve(*net.UDPConn) and improve server tests 2016-06-03 13:30:19 +02:00
Lucas Clemente
a47a04d16d add server.Serve() API and improve server tests by listening on port 0 2016-06-03 13:10:04 +02:00
Lucas Clemente
c0b73c4beb fix a potential race in server.Close() 2016-06-03 12:13:07 +02:00
Lucas Clemente
240946dfde replace version number literals with constants to make grepping easier 2016-06-03 11:09:48 +02:00
Lucas Clemente
556bf2fe4b add a test for h2quic.ListenAndServeQUIC
fixes #160
2016-06-03 10:12:34 +02:00
Lucas Clemente
45554e67c4 fix a race condition in quic.Server 2016-06-02 21:22:04 +02:00
Lucas Clemente
bd228ffe27 fix race conditions in h2quic.Server 2016-06-02 21:19:43 +02:00
Lucas Clemente
cdff2e5531 add more tests for h2quic.Server
ref #160
2016-06-02 21:11:11 +02:00
Marten Seemann
c6f4d9720f fix int overflow on 32 bit in handshake parsing 2016-06-02 23:28:13 +07:00
Marten Seemann
cf382be954 fix int overflow on 32 bit architecture in ACK frame test 2016-06-02 23:25:18 +07:00
Marten Seemann
d67c7612a6 run Travis tests on 64 bit (amd64) and 32 bit (386) 2016-06-02 23:20:40 +07:00
Lucas Clemente
d87e20efc9 remove DiversificationNonce() from the AEAD interface 2016-06-02 16:13:48 +02:00
Lucas Clemente
5ed0182b67 fix a race condition in CryptoSetup
CryptoSetup's AEADs were changed between calls to
DiversificationNonce() and Seal()
2016-06-02 16:13:06 +02:00
Lucas Clemente
60611a0176 increase timeout in integration tests 2016-06-02 15:56:30 +02:00
Lucas Clemente
64b34b52a8 add integration tests for loading larger files
ref #152
2016-06-02 13:38:05 +02:00
Lucas Clemente
21db6f9270 move CHLO log to debug 2016-06-02 13:33:19 +02:00
Lucas Clemente
1896003f42 count diversification nonce in public header length
fixes #161
2016-06-02 12:40:14 +02:00
Lucas Clemente
252e884076 add an integration test for POSTing data
ref #152
2016-06-02 12:05:51 +02:00
Lucas Clemente
93629bc595 test all supported quic versions in integration tests
ref #152
2016-06-02 12:05:24 +02:00
Lucas Clemente
0900b5ba73 add a first integration test
ref #152
2016-06-02 11:51:38 +02:00
Lucas Clemente
682c18eac3 increase max crypto param size, the client sends a longer PAD tag 2016-06-02 11:51:19 +02:00
Marten Seemann
2206c12574 add more Go versions for Travis 2016-06-02 15:58:39 +07:00
Lucas Clemente
7ee5f96efd implement h2quic.Server.Close()
fixes #155
2016-06-01 15:35:08 +02:00
Lucas Clemente
c0b2bfa247 fix two typos 2016-06-01 14:19:46 +02:00
Marten Seemann
4df007dc99 reduce MaxPacketSize to the value used by Chromium
ref #94, #117
2016-06-01 17:19:32 +07:00
Lucas Clemente
a6c62d1a26 add a stub for CloseGracefully to h2quic.Server
ref #153, #124
2016-06-01 12:07:06 +02:00
Marten Seemann
443fd530db send OverlappingStreamData errors for overlapping StreamFrame data
fixes #115
2016-06-01 16:57:01 +07:00
Marten Seemann
d10766906c limit number of gaps in received StreamFrame data
fixes #159
2016-06-01 15:41:29 +07:00
Lucas Clemente
dbaae7fc2b improve readme 2016-06-01 10:35:21 +02:00
Marten Seemann
9476ae499c implement a buffer for received StreamFrames
fixes #116, ref #115
2016-06-01 14:33:12 +07:00
Marten Seemann
2f49a9525a add DataLen function to StreamFrame 2016-06-01 09:23:26 +07:00
Lucas Clemente
981d4e7fb8 add support for ECDSA private keys
fixes #158
2016-05-31 23:06:38 +02:00
Lucas Clemente
8fa3e62de9 implement parsing and writing of GOAWAY frames 2016-05-31 19:22:27 +02:00
Lucas Clemente
4b2ab55435 fix a race when multiple requests were handled at the same time
fixes #157
2016-05-31 19:05:33 +02:00
Lucas Clemente
a7afffe700 add a SetQuicHeaders function to h2quic.Server
fixes #156
2016-05-31 16:02:39 +02:00
Lucas Clemente
ae778fc042 add mock close method to h2quic.Server 2016-05-31 14:13:03 +02:00
Lucas Clemente
33edcc5e88 make h2quic.Server.Serve panic
ref #124
2016-05-30 17:18:10 +02:00
Lucas Clemente
25c34723a3 implement h2quic.Server.ListenAndServeTLS
ref #124
2016-05-30 17:14:59 +02:00
Lucas Clemente
6b1669c116 add ListenAndServeQUIC convenience function 2016-05-30 14:41:21 +02:00