Each unit test .cpp file is not a separate compilation unit in Xcode project like it is in Visual Studio. Hopefully, Visual Studio test tool still likes this arrangement. Signed-off-by: Simon Rozman <simon@rozman.si>
37 lines
1.1 KiB
C++
37 lines
1.1 KiB
C++
/*
|
|
SPDX-License-Identifier: MIT
|
|
Copyright © 2024 Amebis
|
|
*/
|
|
|
|
#include "pch.hpp"
|
|
|
|
using namespace std;
|
|
#ifdef _WIN32
|
|
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
|
|
#endif
|
|
|
|
namespace UnitTests
|
|
{
|
|
void zlib::test()
|
|
{
|
|
static const char inflated[] = "This is a test.";
|
|
stdex::stream::memory_file dat_deflated;
|
|
{
|
|
stdex::zlib_writer zlib(dat_deflated, 9, 4);
|
|
zlib.write(inflated, sizeof(inflated) - sizeof(*inflated));
|
|
}
|
|
static const uint8_t deflated[] = { 0x78, 0xda, 0x0b, 0xc9, 0xc8, 0x2c, 0x56, 0x00, 0xa2, 0x44, 0x85, 0x92, 0xd4, 0xe2, 0x12, 0x3d, 0x00, 0x29, 0x97, 0x05, 0x24 };
|
|
Assert::AreEqual<size_t>(sizeof(deflated), dat_deflated.size());
|
|
Assert::AreEqual(0, memcmp(deflated, dat_deflated.data(), sizeof(deflated)));
|
|
|
|
dat_deflated.seekbeg(0);
|
|
stdex::stream::memory_file dat_inflated;
|
|
{
|
|
stdex::zlib_reader zlib(dat_deflated, 3);
|
|
dat_inflated.write_stream(zlib);
|
|
}
|
|
Assert::AreEqual<size_t>(sizeof(inflated) - sizeof(*inflated), dat_inflated.size());
|
|
Assert::AreEqual(0, memcmp(inflated, dat_inflated.data(), sizeof(inflated) - sizeof(*inflated)));
|
|
}
|
|
}
|