2014-08-04 23:21:01 +02:00
|
|
|
#include <boost/test/unit_test.hpp>
|
|
|
|
#include "test_globals.hpp"
|
2016-04-15 02:06:10 +02:00
|
|
|
#include <loaders/RWBinaryStream.hpp>
|
2014-08-04 23:21:01 +02:00
|
|
|
|
|
|
|
BOOST_AUTO_TEST_SUITE(RWBStreamTests)
|
|
|
|
|
2016-06-16 22:11:55 +02:00
|
|
|
#if RW_TEST_WITH_DATA
|
2014-08-04 23:21:01 +02:00
|
|
|
BOOST_AUTO_TEST_CASE(iterate_stream_test)
|
|
|
|
{
|
|
|
|
{
|
2015-04-18 02:11:17 +02:00
|
|
|
auto d = Global::get().e->data->openFile("landstal.dff");
|
2014-08-04 23:21:01 +02:00
|
|
|
|
|
|
|
RWBStream stream(d->data, d->length);
|
|
|
|
|
|
|
|
RWBStream::ChunkID id = stream.getNextChunk();
|
|
|
|
|
|
|
|
BOOST_REQUIRE_EQUAL( id, 0x0010 );
|
|
|
|
|
|
|
|
auto inner = stream.getInnerStream();
|
|
|
|
|
|
|
|
auto inner1 = inner.getNextChunk();
|
|
|
|
|
|
|
|
BOOST_REQUIRE_EQUAL( inner1, 0x0001 );
|
|
|
|
|
|
|
|
auto innerCursor = inner.getCursor();
|
|
|
|
|
|
|
|
// This is a value inside in the Clump's struct header section.
|
|
|
|
BOOST_CHECK_EQUAL( *(std::uint32_t*)innerCursor, 0x10 );
|
|
|
|
}
|
|
|
|
}
|
2016-06-16 22:11:55 +02:00
|
|
|
#endif
|
2014-08-04 23:21:01 +02:00
|
|
|
|
|
|
|
BOOST_AUTO_TEST_SUITE_END()
|