fix race condition when saving the encryption level in h2quic.Client

fixes #551
This commit is contained in:
Marten Seemann
2017-04-18 14:30:25 +07:00
parent 2a1b3da971
commit dc782e78eb
2 changed files with 14 additions and 2 deletions

View File

@@ -104,6 +104,13 @@ var _ = Describe("Client", func() {
Expect(client.encryptionLevel).To(Equal(protocol.EncryptionForwardSecure))
})
It("sets the correct crypto level, if the ConnStateCallback is called in the wrong order", func() {
client.config.ConnState(session, quic.ConnStateForwardSecure)
Expect(client.encryptionLevel).To(Equal(protocol.EncryptionForwardSecure))
client.config.ConnState(session, quic.ConnStateSecure)
Expect(client.encryptionLevel).To(Equal(protocol.EncryptionForwardSecure))
})
Context("Doing requests", func() {
var request *http.Request
var dataStream *mockStream