Format source files
This commit is contained in:
151
test/vector.cpp
151
test/vector.cpp
@@ -1,111 +1,110 @@
|
||||
#include "../src/sequential/vector.hpp"
|
||||
#include "testutil.hpp"
|
||||
|
||||
void FillWithSequentialNumbers(Vector<unsigned> & vector,
|
||||
unsigned const count = 1024u)
|
||||
void FillWithSequentialNumbers(Vector<unsigned> & vector, unsigned const count = 1024u)
|
||||
{
|
||||
for(unsigned i = 0; i < count; ++i)
|
||||
{
|
||||
vector[i] = i;
|
||||
}
|
||||
for(unsigned i = 0; i < count; ++i)
|
||||
{
|
||||
vector[i] = i;
|
||||
}
|
||||
}
|
||||
|
||||
bool TestInsertion()
|
||||
{
|
||||
unsigned const targetSize = 1024u;
|
||||
Vector<unsigned> vector;
|
||||
try
|
||||
{
|
||||
vector.Resize(targetSize);
|
||||
}
|
||||
catch(std::exception & e)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
unsigned const targetSize = 1024u;
|
||||
Vector<unsigned> vector;
|
||||
try
|
||||
{
|
||||
vector.Resize(targetSize);
|
||||
}
|
||||
catch(std::exception & e)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
FillWithSequentialNumbers(vector, targetSize);
|
||||
FillWithSequentialNumbers(vector, targetSize);
|
||||
|
||||
for(unsigned i = 0; i < vector.GetSize(); ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for(unsigned i = 0; i < vector.GetSize(); ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
vector[targetSize + 1] = 42;
|
||||
}
|
||||
catch(std::exception & e)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
try
|
||||
{
|
||||
vector[targetSize + 1] = 42;
|
||||
}
|
||||
catch(std::exception & e)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool TestResize()
|
||||
{
|
||||
Vector<unsigned> vector;
|
||||
Vector<unsigned> vector;
|
||||
|
||||
vector.Resize(2048u);
|
||||
FillWithSequentialNumbers(vector);
|
||||
vector.Resize(2048u);
|
||||
FillWithSequentialNumbers(vector);
|
||||
|
||||
vector.Resize(vector.GetSize() / 2u);
|
||||
for(unsigned i = 0; i < vector.GetSize(); ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
vector.Resize(vector.GetSize() / 2u);
|
||||
for(unsigned i = 0; i < vector.GetSize(); ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
vector.Resize(vector.GetSize() * 16u);
|
||||
vector.Resize(vector.GetSize() * 16u);
|
||||
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TestReserve()
|
||||
{
|
||||
std::size_t const testSize = 8096ul;
|
||||
std::size_t const testSize = 8096ul;
|
||||
|
||||
Vector<unsigned> vector;
|
||||
vector.Reserve(testSize);
|
||||
if(vector.GetReserveSize() != testSize)
|
||||
{
|
||||
std::puts("[ERROR] Reserve size reported not equal to reserve size set.");
|
||||
return false;
|
||||
}
|
||||
Vector<unsigned> vector;
|
||||
vector.Reserve(testSize);
|
||||
if(vector.GetReserveSize() != testSize)
|
||||
{
|
||||
std::puts("[ERROR] Reserve size reported not equal to reserve size set.");
|
||||
return false;
|
||||
}
|
||||
|
||||
for(std::size_t i = 0; i < testSize; ++i)
|
||||
{
|
||||
vector.Resize(i + 1ul);
|
||||
vector[i] = i;
|
||||
for(std::size_t i = 0; i < testSize; ++i)
|
||||
{
|
||||
vector.Resize(i + 1ul);
|
||||
vector[i] = i;
|
||||
|
||||
if(vector.GetReserveSize() != testSize)
|
||||
{
|
||||
std::puts("[ERROR] Reserve size changed during resize.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if(vector.GetReserveSize() != testSize)
|
||||
{
|
||||
std::puts("[ERROR] Reserve size changed during resize.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
for(std::size_t i = 0; i < testSize; ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for(std::size_t i = 0; i < testSize; ++i)
|
||||
{
|
||||
if(vector[i] != i)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
Test::Execute(TestInsertion, "Insertion test");
|
||||
Test::Execute(TestResize, "Resize test");
|
||||
Test::Execute(TestReserve, "Reserve test");
|
||||
Test::Execute(TestInsertion, "Insertion test");
|
||||
Test::Execute(TestResize, "Resize test");
|
||||
Test::Execute(TestReserve, "Reserve test");
|
||||
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user