Commit Graph

149 Commits

Author SHA1 Message Date
Marten Seemann
47d87740ae add an integration test for invalid certificates 2017-10-02 16:47:40 +08:00
Marten Seemann
9cb7480050 rename connection ID truncation to connection ID omission 2017-09-29 22:52:54 +07:00
Marten Seemann
d9abbb6575 run the self integration tests with the TLS handshake 2017-09-29 17:35:28 +07:00
Marten Seemann
55c35a3c4e add an integration test for the TLS handshake 2017-09-28 15:51:59 +07:00
Marten Seemann
6dde979f8f implement a string representation of the version number
This will be useful as soon as we start supporting non-gQUIC versions.
2017-09-28 15:19:12 +07:00
Marten Seemann
faa8a1ec1a Merge pull request #837 from lucas-clemente/rename-stk-to-cookie
rename the STK to Cookie
2017-09-22 19:57:27 +07:00
Marten Seemann
265c35c2eb rename the STK to Cookie 2017-09-22 18:58:04 +07:00
Marten Seemann
d4c6de9377 actually use the log file set as a flag in the integration tests 2017-09-22 18:50:13 +07:00
Marten Seemann
039edc1ccd add an integration test for version negotiation 2017-09-15 17:28:03 +07:00
Marten Seemann
0c26a6eaf2 add an integration test for dropped packets during the handshake 2017-09-12 15:39:59 +07:00
Marten Seemann
1993ce7228 add drop tests with stochastically dropped packets 2017-09-12 15:36:49 +07:00
Marten Seemann
142abb08b3 refactor drop tests, add test with dropped packets in both directions 2017-09-12 15:36:49 +07:00
Marten Seemann
792047a2c5 Merge pull request #819 from lucas-clemente/server-tests-quic-versions
run integration tests with the quic_server with all supported versions
2017-09-12 10:31:29 +02:00
Marten Seemann
3cc34a3ae7 don't parse the Public Header in the proxy 2017-09-12 14:42:27 +07:00
Marten Seemann
7ba9fb0f8b use a kernel determined server address in proxy tests
Now we can execute the proxy tests in parallel without running into
"address already in use" errors.
2017-09-12 14:38:37 +07:00
Marten Seemann
99f4a923cd run integration tests with the quic_server with all supported versions 2017-09-11 15:55:39 +02:00
Marten Seemann
71f7ab1326 Merge pull request #812 from lucas-clemente/travis-chrome-quic39
activate Chrome tests with QUIC 39 on Travis
2017-09-11 11:35:20 +02:00
Marten Seemann
11a31cfdac fix version dependent Public Header parsing in the proxy 2017-09-10 23:26:14 +02:00
Marten Seemann
5c7f104b6d activate Chrome tests with QUIC 39 on Travis
The Chrome installed on Travis now supports QUIC 39.
2017-09-09 12:37:29 +03:00
Marten Seemann
17a0541edb use the quic.Config to set the QUIC version in the Chrome tests 2017-09-05 19:30:14 +02:00
Marten Seemann
5751b599ee use atomics in the Chrome test HTTP handlers
This fixes a race condition in these tests.
2017-09-05 19:30:14 +02:00
Marten Seemann
7d446253c4 use the quic.Config to set the QUIC version in client integration tests
This fixes a race condition in that test.
2017-09-05 19:30:14 +02:00
Marten Seemann
682d8b1c7a fix race condition in the handshake RTT tests 2017-09-05 19:30:14 +02:00
Marten Seemann
e513cb7ad2 fix multiple race conditions in the proxy tests 2017-09-05 19:30:14 +02:00
Marten Seemann
508586ea7e fix a race condition in server integration test setup 2017-09-05 19:30:14 +02:00
Marten Seemann
f5abd5d858 delete empty files in the integration tests folder
These empty files were necessary in Go 1.8, but are obsolete now.
2017-08-31 17:18:40 +07:00
Marten Seemann
f1ada87dcf make the protocol package internal 2017-08-30 00:19:44 +07:00
Marten Seemann
ed522ebbce make wire an internal package 2017-08-29 23:51:56 +07:00
Marten Seemann
1794636220 more the PublicHeader to the wire package 2017-08-29 23:45:38 +07:00
Marten Seemann
8ff8637bb8 don't print Chrome output 2017-08-28 15:28:07 +07:00
Marten Seemann
3390564e98 Merge pull request #782 from lucas-clemente/quic39
add support for QUIC 39
2017-08-24 17:59:51 +07:00
Marten Seemann
2b683be36a add QUIC 39 to supported versions
The Chrome installed on Travis doesn't support QUIC 39 yet.
2017-08-24 17:05:57 +07:00
Marten Seemann
cbc6f64461 try to find the Chrome executable in different paths 2017-08-23 16:44:58 +07:00
Marten Seemann
dd0daaaf1e implement version-dependent parsing of the Public Header 2017-08-23 16:00:45 +07:00
Lucas Clemente
19d1210a9a Remove dataManager and move client_test.go from gquic/ to self/ 2017-08-18 12:06:37 +02:00
Lucas Clemente
6150e2d05d Add caching to PR data generation and add a separate prdatalong handler 2017-08-18 12:06:37 +02:00
Lucas Clemente
84db78db83 Move rest of integration tests into the gquic folder 2017-08-18 12:06:37 +02:00
Lucas Clemente
0b1d7c46f5 Rename handshake/ to self/, will be the place for future quic-go self tests 2017-08-18 12:06:37 +02:00
Lucas Clemente
57e0616b3d Simplify integration suite setup 2017-08-18 12:06:37 +02:00
Lucas Clemente
6277d633e0 Factor out inttest logging setup into a separate package 2017-08-18 12:06:37 +02:00
Lucas Clemente
bb5a199467 Move Chrome tests and test server setup to separate packages 2017-08-18 12:06:37 +02:00
Lucas Clemente
56cbce35b3 Move proxy/ to new tools/ folder 2017-08-18 12:06:37 +02:00
Lucas Clemente
8ec11c0b53 Move testdata/ to internal/ 2017-08-18 12:06:36 +02:00
Marten Seemann
1d1edfa615 use the gbytes.TimeoutReader in integration tests 2017-07-24 19:22:09 +07:00
Marten Seemann
e291066e48 increase RTT and make assertion more lenient in handshake test 2017-07-10 17:21:52 +08:00
Marten Seemann
32bc70ba0c fix flaky proxy test 2017-07-07 12:23:34 +02:00
Marten Seemann
c776a35b68 bind proxy to random port in proxy tests 2017-07-07 12:23:34 +02:00
Lucas Clemente
b6b4283d3f Retry starting Chrome if it doesn't hit the endpoints 2017-07-07 12:06:16 +02:00
Lucas Clemente
e0ba8b082d Replace docker with a directly launched Chrome for integration tests
The benefits:

- Speed up chrome tests (from 160s to 34s on my machine).
- Allow us to remove docker, which caused quite a few headaches.
- Gets us a more current Chrome, so now we run tests against all
  supported versions.
- We don't touch the FS anymore.
- We no longer depend on sudo for travis, which means we can use
  their new container-based infrastructure. This also speeds up our
  tests :)

Tests are now implemented in javascript; the server detects when
they are complete and kills Chrome.

Fixes #417.
2017-07-07 12:05:48 +02:00
Lucas Clemente
bf8ae2bb50 Pass -v to ginkgo in integrationtests 2017-07-05 21:02:13 +02:00