BMallocIO Tests
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1212 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
#include "MallocBufferLengthTest.h"
|
||||
#include "cppunit/TestCaller.h"
|
||||
#include <DataIO.h>
|
||||
#include <stdio.h>
|
||||
|
||||
MallocBufferLengthTest::MallocBufferLengthTest(std::string name) :
|
||||
BTestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
MallocBufferLengthTest::~MallocBufferLengthTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
MallocBufferLengthTest::PerformTest(void)
|
||||
{
|
||||
BMallocIO mem;
|
||||
size_t size;
|
||||
size_t bufLen;
|
||||
status_t error;
|
||||
char writeBuf[11] = "0123456789";
|
||||
|
||||
NextSubTest();
|
||||
bufLen = mem.BufferLength();
|
||||
CPPUNIT_ASSERT(bufLen == 0);
|
||||
|
||||
NextSubTest();
|
||||
size = mem.Write(writeBuf, 10);
|
||||
bufLen = mem.BufferLength();
|
||||
CPPUNIT_ASSERT(bufLen == 10);
|
||||
CPPUNIT_ASSERT(size = 10);
|
||||
|
||||
NextSubTest();
|
||||
error = mem.SetSize(0);
|
||||
bufLen = mem.BufferLength();
|
||||
CPPUNIT_ASSERT(bufLen == 0);
|
||||
CPPUNIT_ASSERT(error == B_OK);
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test *MallocBufferLengthTest::suite(void)
|
||||
{
|
||||
typedef CppUnit::TestCaller<MallocBufferLengthTest>
|
||||
MallocBufferLengthTestCaller;
|
||||
|
||||
return(new MallocBufferLengthTestCaller("BMallocIO::BufferLength Test", &MallocBufferLengthTest::PerformTest));
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef MallocBufferLengthTest_H
|
||||
#define MallocBufferLengthTest_H
|
||||
|
||||
#include "TestCase.h"
|
||||
#include <DataIO.h>
|
||||
|
||||
|
||||
class MallocBufferLengthTest : public BTestCase
|
||||
{
|
||||
|
||||
private:
|
||||
|
||||
protected:
|
||||
|
||||
public:
|
||||
static Test *suite(void);
|
||||
void PerformTest(void);
|
||||
MallocBufferLengthTest(std::string name = "");
|
||||
virtual ~MallocBufferLengthTest();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,24 @@
|
||||
#include "cppunit/Test.h"
|
||||
#include "cppunit/TestSuite.h"
|
||||
#include "MallocIOTest.h"
|
||||
#include "MallocSeekTest.h"
|
||||
#include "MallocWriteTest.h"
|
||||
#include "MallocBufferLengthTest.h"
|
||||
|
||||
CppUnit::Test *MallocIOTestSuite()
|
||||
{
|
||||
CppUnit::TestSuite *testSuite = new CppUnit::TestSuite();
|
||||
|
||||
testSuite->addTest(MallocSeekTest::suite());
|
||||
testSuite->addTest(MallocWriteTest::suite());
|
||||
testSuite->addTest(MallocBufferLengthTest::suite());
|
||||
|
||||
return(testSuite);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#ifndef _mallocio_test_h_
|
||||
#define _mallocio_test_h_
|
||||
|
||||
class CppUnit::Test;
|
||||
|
||||
CppUnit::Test *MallocIOTestSuite();
|
||||
|
||||
#endif // _mallocio_test_h_
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
#include "MallocSeekTest.h"
|
||||
#include "cppunit/TestCaller.h"
|
||||
#include <DataIO.h>
|
||||
#include <stdio.h>
|
||||
|
||||
MallocSeekTest::MallocSeekTest(std::string name) :
|
||||
BTestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
MallocSeekTest::~MallocSeekTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
MallocSeekTest::PerformTest(void)
|
||||
{
|
||||
BMallocIO mem;
|
||||
off_t err;
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(3, SEEK_SET);
|
||||
CPPUNIT_ASSERT(err == 3);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(3, SEEK_CUR);
|
||||
CPPUNIT_ASSERT(err == 6);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(0, SEEK_END);
|
||||
CPPUNIT_ASSERT(err == 0);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(-5, SEEK_END);
|
||||
CPPUNIT_ASSERT(err == -5);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(5, SEEK_END);
|
||||
CPPUNIT_ASSERT(err == 5);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Seek(-20, SEEK_SET);
|
||||
CPPUNIT_ASSERT((int)err == -20);
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test *MallocSeekTest::suite(void)
|
||||
{
|
||||
typedef CppUnit::TestCaller<MallocSeekTest>
|
||||
MallocSeekTestCaller;
|
||||
|
||||
return(new MallocSeekTestCaller("BMallocIO::Seek Test", &MallocSeekTest::PerformTest));
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef MallocSeekTest_H
|
||||
#define MallocSeekTest_H
|
||||
|
||||
#include "TestCase.h"
|
||||
#include <DataIO.h>
|
||||
|
||||
|
||||
class MallocSeekTest : public BTestCase
|
||||
{
|
||||
|
||||
private:
|
||||
|
||||
protected:
|
||||
|
||||
public:
|
||||
static Test *suite(void);
|
||||
void PerformTest(void);
|
||||
MallocSeekTest(std::string name = "");
|
||||
virtual ~MallocSeekTest();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,48 @@
|
||||
#include "MallocWriteTest.h"
|
||||
#include "cppunit/TestCaller.h"
|
||||
#include <DataIO.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
MallocWriteTest::MallocWriteTest(std::string name) :
|
||||
BTestCase(name)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
MallocWriteTest::~MallocWriteTest()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
MallocWriteTest::PerformTest(void)
|
||||
{
|
||||
const char *writeBuf = "ABCDEFG";
|
||||
|
||||
BMallocIO mem;
|
||||
ssize_t err;
|
||||
off_t pos;
|
||||
|
||||
NextSubTest();
|
||||
err = mem.Write(writeBuf, 7);
|
||||
CPPUNIT_ASSERT(err == 7); // Check how much data we wrote
|
||||
|
||||
NextSubTest();
|
||||
err = mem.WriteAt(0, writeBuf, 4);
|
||||
CPPUNIT_ASSERT(err == 4);
|
||||
|
||||
NextSubTest();
|
||||
err = mem.WriteAt(34, writeBuf, 256);
|
||||
CPPUNIT_ASSERT(err == 256);
|
||||
}
|
||||
|
||||
|
||||
CppUnit::Test *MallocWriteTest::suite(void)
|
||||
{
|
||||
typedef CppUnit::TestCaller<MallocWriteTest>
|
||||
MallocWriteTestCaller;
|
||||
|
||||
return(new MallocWriteTestCaller("BMallocIO::Write Test", &MallocWriteTest::PerformTest));
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef MallocWriteTest_H
|
||||
#define MallocWriteTest_H
|
||||
|
||||
#include "TestCase.h"
|
||||
#include <DataIO.h>
|
||||
|
||||
|
||||
class MallocWriteTest : public BTestCase
|
||||
{
|
||||
|
||||
private:
|
||||
|
||||
protected:
|
||||
|
||||
public:
|
||||
static Test *suite(void);
|
||||
void PerformTest(void);
|
||||
MallocWriteTest(std::string name = "");
|
||||
virtual ~MallocWriteTest();
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user