add Frame.MaxLength and implement it for currently needed frames

This commit is contained in:
Lucas Clemente
2016-04-20 15:06:10 +02:00
parent 93cea4f5de
commit 6be70bc29c
7 changed files with 70 additions and 1 deletions

View File

@@ -163,6 +163,33 @@ var _ = Describe("AckFrame", func() {
Expect(packetNumber1).To(BeEquivalentTo([]byte{1, 0, 0, 0, 0, 0}))
Expect(packetNumber2).To(BeEquivalentTo([]byte{1, 0, 0, 0, 0, 0}))
})
It("has proper max length", func() {
b := &bytes.Buffer{}
f := &AckFrame{
Entropy: 2,
LargestObserved: 1,
}
f.Write(b)
Expect(f.MaxLength()).To(Equal(b.Len()))
})
It("has proper max length with nack ranges", func() {
b := &bytes.Buffer{}
f := &AckFrame{
Entropy: 2,
LargestObserved: 4,
NackRanges: []NackRange{
NackRange{
FirstPacketNumber: 2,
Length: 1,
},
},
}
err := f.Write(b)
Expect(err).ToNot(HaveOccurred())
Expect(f.MaxLength()).To(Equal(b.Len()))
})
})
Context("self-consistency checks", func() {