[vlc-commits] http: tests for WINDOW_UPDATE parsing
Rémi Denis-Courmont
git at videolan.org
Sun Sep 22 20:11:21 CEST 2019
vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sun Sep 22 21:09:58 2019 +0300| [8791fb164ecd615d81434de096139a200546ea6e] | committer: Rémi Denis-Courmont
http: tests for WINDOW_UPDATE parsing
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8791fb164ecd615d81434de096139a200546ea6e
---
modules/access/http/h2frame_test.c | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/modules/access/http/h2frame_test.c b/modules/access/http/h2frame_test.c
index 35cb5777a4..677a379284 100644
--- a/modules/access/http/h2frame_test.c
+++ b/modules/access/http/h2frame_test.c
@@ -197,8 +197,20 @@ static int vlc_h2_stream_error(void *ctx, uint_fast32_t id, uint_fast32_t code)
{
assert(ctx == CTX);
- assert(id == STREAM_ID + 2);
- assert(code == VLC_H2_REFUSED_STREAM);
+ switch (id)
+ {
+ case STREAM_ID + 2:
+ assert(code == VLC_H2_REFUSED_STREAM);
+ break;
+ case STREAM_ID + 4:
+ assert(code == VLC_H2_PROTOCOL_ERROR);
+ break;
+ case STREAM_ID + 6:
+ assert(code == VLC_H2_FRAME_SIZE_ERROR);
+ break;
+ default:
+ assert(0);
+ }
return 0;
}
@@ -460,6 +472,12 @@ int main(void)
test_bad_seq(CTX, localize(ping()), NULL);
test_bad_seq(CTX, localize(goaway()), NULL);
test_bad_seq(CTX, resize(goaway(), 7), NULL);
+ test_bad_seq(CTX, vlc_h2_frame_window_update(0, 0), NULL);
+ test_bad_seq(CTX, resize(vlc_h2_frame_window_update(0, 0), 3), NULL);
+
+ test_seq(CTX, resize(vlc_h2_frame_window_update(STREAM_ID + 6, 0), 5),
+ NULL);
+ test_seq(CTX, vlc_h2_frame_window_update(STREAM_ID + 4, 0), NULL);
/* TODO: PUSH_PROMISE, PRIORITY, padding, unknown, invalid stuff... */
More information about the vlc-commits
mailing list