summaryrefslogtreecommitdiff
path: root/test/test_header.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_header.c')
-rw-r--r--test/test_header.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/test_header.c b/test/test_header.c
index 1ae4e19..15aa18c 100644
--- a/test/test_header.c
+++ b/test/test_header.c
@@ -30,9 +30,18 @@ extern int tests_run;
char *test_header_read(void) {
struct stream *s = stream_new(sizeof(struct xp3_header));
+
memset(s->_start, '\x00', sizeof(struct xp3_header));
struct xp3_header *h = read_header(s);
mu_assert("Header assertions failed", h == NULL);
+
+ stream_rewind(s);
+ memcpy(s->_start, "\x58\x50\x33\x0d\x0a\x20\x0a\x1a\x8b\x67\x01\x17\x00"
+ "\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x80\x00\x00\x00\x00\x00"
+ "\x00\x00\x00\xd1\xfe\x56\x0b\x00\x00\x00\x00", 42);
+ h = read_header(s);
+ mu_assert("Header read as invalid", h != NULL);
+
stream_free(s);
return NULL;
}