From db953899562d2a9a3a00dc978b07ae12dbd409de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Fri, 23 Jan 2004 06:41:19 +0000 Subject: [PATCH] Added a program to test the == and < operator of media_format_description. Revealed some bugs in our previous implementation. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6235 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/tests/kits/media/Jamfile | 4 ++ src/tests/kits/media/mediaDescriptions.cpp | 63 ++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 src/tests/kits/media/mediaDescriptions.cpp diff --git a/src/tests/kits/media/Jamfile b/src/tests/kits/media/Jamfile index 8a85d17e3a..69fdccd66c 100644 --- a/src/tests/kits/media/Jamfile +++ b/src/tests/kits/media/Jamfile @@ -13,6 +13,10 @@ SimpleTest mediaFormats : mediaFormats.cpp : media ; +SimpleTest mediaDescriptions : + mediaDescriptions.cpp + : media ; + SubInclude OBOS_TOP src tests kits media media_decoder ; SubInclude OBOS_TOP src tests kits media notificationtest ; SubInclude OBOS_TOP src tests kits media nodetest ; diff --git a/src/tests/kits/media/mediaDescriptions.cpp b/src/tests/kits/media/mediaDescriptions.cpp new file mode 100644 index 0000000000..fc3df8c5d4 --- /dev/null +++ b/src/tests/kits/media/mediaDescriptions.cpp @@ -0,0 +1,63 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ + + +#include +#include + + +int +main(int argc, char **argv) +{ + media_format_description a; + a.family = B_AVI_FORMAT_FAMILY; + a.u.avi.codec = 'DIVX'; + + media_format_description b; + printf("avi/divx == empty? %s\n", a == b ? "yes" : "no"); + + b.family = a.family; + printf("avi/divx == same family, no codec? %s\n", a == b ? "yes" : "no"); + + a.family = B_QUICKTIME_FORMAT_FAMILY; + a.u.quicktime.vendor = 5; + a.u.quicktime.codec = 5; + + b.family = B_QUICKTIME_FORMAT_FAMILY; + b.u.quicktime.vendor = 6; + b.u.quicktime.codec = 5; + printf("qt(5,5) < qt(6, 5)? %s\n", a < b ? "yes" : "no"); + + b.u.quicktime.vendor = 4; + printf("qt(5,5) < qt(4, 5)? %s\n", a < b ? "yes" : "no"); + + b.u.quicktime.vendor = 5; + b.u.quicktime.codec = 6; + printf("qt(5,5) < qt(5, 6)? %s\n", a < b ? "yes" : "no"); + + b.u.quicktime.codec = 4; + printf("qt(5,5) < qt(5, 4)? %s\n", a < b ? "yes" : "no"); + + a.family = B_MISC_FORMAT_FAMILY; + a.u.misc.file_format = 5; + a.u.misc.codec = 5; + + b.family = B_MISC_FORMAT_FAMILY; + b.u.misc.file_format = 6; + b.u.misc.codec = 5; + printf("misc(5,5) < misc(6, 5)? %s\n", a < b ? "yes" : "no"); + + b.u.misc.file_format = 4; + printf("misc(5,5) < qt(4, 5)? %s\n", a < b ? "yes" : "no"); + + b.u.misc.file_format = 5; + b.u.misc.codec = 6; + printf("misc(5,5) < misc(5, 6)? %s\n", a < b ? "yes" : "no"); + + b.u.misc.codec = 4; + printf("misc(5,5) < misc(5, 4)? %s\n", a < b ? "yes" : "no"); + + return 0; +}