From 2521f8ea39248b3b0a08c36975813d4a38f32185 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Wed, 22 Oct 2014 11:11:55 +0200 Subject: [PATCH] Convert BufferTest to cppunit. --- src/tests/kits/media/BufferTest.cpp | 136 ++++++++++++--------- src/tests/kits/media/BufferTest.h | 28 +++++ src/tests/kits/media/Jamfile | 5 +- src/tests/kits/media/MediaKitTestAddon.cpp | 2 + 4 files changed, 111 insertions(+), 60 deletions(-) create mode 100644 src/tests/kits/media/BufferTest.h diff --git a/src/tests/kits/media/BufferTest.cpp b/src/tests/kits/media/BufferTest.cpp index 22e8f7ff51..b9b72d028e 100644 --- a/src/tests/kits/media/BufferTest.cpp +++ b/src/tests/kits/media/BufferTest.cpp @@ -1,9 +1,31 @@ +/* + * Copyright 2014 Haiku, Inc. + * Distributed under the terms of the MIT License. + */ + + +#include "BufferTest.h" + #include #include #include -#include -int main() +#include +#include + + +BufferTest::BufferTest() +{ +} + + +BufferTest::~BufferTest() +{ +} + + +void +BufferTest::TestDefault() { // app_server connection (no need to run it) BApplication app("application/x-vnd-test"); @@ -11,91 +33,91 @@ int main() BBufferGroup * group; status_t s; int32 count; - BBuffer *buffer; -/* - printf("using default constructor:\n"); group = new BBufferGroup(); - s = group->InitCheck(); - printf("InitCheck: status = %ld\n",s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); s = group->CountBuffers(&count); - printf("CountBuffers: count = %ld, status = %ld\n",count,s); - - delete group; -*/ - printf("\n"); - printf("using size = 1234 constructor:\n"); + CPPUNIT_ASSERT_EQUAL(B_OK, s); + CPPUNIT_ASSERT_EQUAL(0, count); +} + + +void +BufferTest::TestRef() +{ + BBufferGroup * group; + status_t s; + int32 count; + BBuffer *buffer; + group = new BBufferGroup(1234); s = group->InitCheck(); - printf("InitCheck: status = %ld\n",s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); s = group->CountBuffers(&count); - printf("CountBuffers: count = %ld, status = %ld\n",count,s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); + CPPUNIT_ASSERT_EQUAL(3, count); s = group->GetBufferList(1,&buffer); - printf("GetBufferList: status = %ld\n",s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); - printf("Buffer->Data: = %08x\n",(int)buffer->Data()); - - printf("Buffer->ID: = %d\n",(int)buffer->ID()); - - printf("Buffer->Size: = %ld\n",buffer->Size()); - - printf("Buffer->SizeAvailable: = %ld\n",buffer->SizeAvailable()); - - printf("Buffer->SizeUsed: = %ld\n",buffer->SizeUsed()); - - printf("\n"); + CPPUNIT_ASSERT_EQUAL(1234, buffer->Size()); + CPPUNIT_ASSERT_EQUAL(1234, buffer->SizeAvailable()); + CPPUNIT_ASSERT_EQUAL(0, buffer->SizeUsed()); media_buffer_id id = buffer->ID(); BBufferGroup * group2 = new BBufferGroup(1,&id); - printf("creating second group with a buffer from first group:\n"); s = group2->InitCheck(); - printf("InitCheck: status = %ld\n",s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); s = group2->CountBuffers(&count); - printf("CountBuffers: count = %ld, status = %ld\n",count,s); + CPPUNIT_ASSERT_EQUAL(B_OK, s); + CPPUNIT_ASSERT_EQUAL(1, count); buffer = 0; s = group2->GetBufferList(1,&buffer); - printf("GetBufferList: status = %ld\n",s); - printf("Buffer->Data: = %08x\n",(int)buffer->Data()); - - printf("Buffer->ID: = %d\n",(int)buffer->ID()); - - printf("Buffer->Size: = %ld\n",buffer->Size()); - - printf("Buffer->SizeAvailable: = %ld\n",buffer->SizeAvailable()); - - printf("Buffer->SizeUsed: = %ld\n",buffer->SizeUsed()); + CPPUNIT_ASSERT_EQUAL(1234, buffer->Size()); + CPPUNIT_ASSERT_EQUAL(1234, buffer->SizeAvailable()); + CPPUNIT_ASSERT_EQUAL(0, buffer->SizeUsed()); delete group; delete group2; +} - printf("\n"); -/* - printf("creating a BSmallBuffer:\n"); + +void +BufferTest::TestSmall() +{ + // FIXME currently not implemented, BSmallBuffer constructor will debugger(). +#if 0 BSmallBuffer * sb = new BSmallBuffer; - - printf("sb->Data: = %08x\n",(int)sb->Data()); - - printf("sb->ID: = %d\n",(int)sb->ID()); - - printf("sb->Size: = %ld\n",sb->Size()); - - printf("sb->SizeAvailable: = %ld\n",sb->SizeAvailable()); - - printf("sb->SizeUsed: = %ld\n",sb->SizeUsed()); - - printf("sb->SmallBufferSizeLimit: = %ld\n",sb->SmallBufferSizeLimit()); + CPPUNIT_ASSERT_EQUAL(0, sb->Size()); + CPPUNIT_ASSERT_EQUAL(0, sb->SizeAvailable()); + CPPUNIT_ASSERT_EQUAL(0, sb->SizeUsed()); + CPPUNIT_ASSERT_EQUAL(0, sb->SmallBufferSizeLimit()); delete sb; -*/ - return 0; +#endif +} + + +/*static*/ void +BufferTest::AddTests(BTestSuite& parent) +{ + CppUnit::TestSuite& suite = *new CppUnit::TestSuite("BufferTest"); + + suite.addTest(new CppUnit::TestCaller( + "BufferTest::TestDefault", &BufferTest::TestDefault)); + suite.addTest(new CppUnit::TestCaller( + "BufferTest::TestRef", &BufferTest::TestRef)); + suite.addTest(new CppUnit::TestCaller( + "BufferTest::TestSmall", &BufferTest::TestSmall)); + + parent.addTest("BufferTest", &suite); } diff --git a/src/tests/kits/media/BufferTest.h b/src/tests/kits/media/BufferTest.h new file mode 100644 index 0000000000..20f764c9a1 --- /dev/null +++ b/src/tests/kits/media/BufferTest.h @@ -0,0 +1,28 @@ +/* + * Copyright 2014 Haiku, Inc. + * Distributed under the terms of the MIT License. + */ +#ifndef BUFFER_TEST_H +#define BUFFER_TEST_H + + +#include +#include + + +class BufferTest: public BTestCase { +public: + BufferTest(); + virtual ~BufferTest(); + + void TestDefault(); + void TestRef(); + void TestSmall(); + + static void AddTests(BTestSuite& suite); +}; + + +#endif + + diff --git a/src/tests/kits/media/Jamfile b/src/tests/kits/media/Jamfile index 802c58e559..afb66ad72f 100644 --- a/src/tests/kits/media/Jamfile +++ b/src/tests/kits/media/Jamfile @@ -1,7 +1,5 @@ SubDir HAIKU_TOP src tests kits media ; -SimpleTest BufferTest : BufferTest.cpp : libmedia.so be [ TargetLibsupc++ ] ; - SimpleTest SizeofTest : SizeofTest.cpp : be ; SimpleTest TimedEventQueueTest : TimedEventQueueTest.cpp @@ -19,8 +17,9 @@ UnitTestLib libmediatest.so : MediaKitTestAddon.cpp AreaTest.cpp + BufferTest.cpp - : be [ TargetLibstdc++ ] [ TargetLibsupc++ ] + : be media [ TargetLibstdc++ ] [ TargetLibsupc++ ] ; SubInclude HAIKU_TOP src tests kits media media_decoder ; diff --git a/src/tests/kits/media/MediaKitTestAddon.cpp b/src/tests/kits/media/MediaKitTestAddon.cpp index 7d12bdc190..f2826d06a4 100644 --- a/src/tests/kits/media/MediaKitTestAddon.cpp +++ b/src/tests/kits/media/MediaKitTestAddon.cpp @@ -8,6 +8,7 @@ #include #include "AreaTest.h" +#include "BufferTest.h" BTestSuite* @@ -16,6 +17,7 @@ getTestSuite() BTestSuite* suite = new BTestSuite("MediaKit"); AreaTest::AddTests(*suite); + BufferTest::AddTests(*suite); return suite; }