From b4dc5440310bf944a7c1db620c53b32b69f101c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Mangano?= Date: Wed, 2 Mar 2016 15:35:36 +0100 Subject: [PATCH] ogg: test decoding garbage --- tests/ogg_test.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/ogg_test.cc b/tests/ogg_test.cc index 1e399eb..c31f855 100644 --- a/tests/ogg_test.cc +++ b/tests/ogg_test.cc @@ -21,3 +21,16 @@ TEST_CASE("decoding a single-stream file", "[ogg]") REQUIRE(s->type == ogg::OPUS_STREAM); REQUIRE(s->tags.get("encoder") == "Lavc57.24.102 libopus"); } + +TEST_CASE("decoding garbage", "[ogg]") +{ + std::ifstream src("Makefile"); + ogg::Decoder dec(src); + REQUIRE_THROWS(dec.read_page()); +} + +// TODO decoding a multi-stream file +// TODO decoding a vorbis ogg stream + +// Encoding is trickier, and might as well be done in actions_test.cc, given +// opustags::edit_tags covers all of Encoder's regular code.