mirror of
https://github.com/thunderbrewhq/squall.git
synced 2026-02-04 00:49:08 +00:00
36 lines
858 B
C++
36 lines
858 B
C++
#include "Test.hpp"
|
|
#include "storm/Big.hpp"
|
|
#include <vector>
|
|
|
|
class BigData;
|
|
|
|
// Fixture for repetitive handling of BigData objects.
|
|
struct BigDataTest {
|
|
using BigDataPtr = BigData*;
|
|
|
|
BigData* num;
|
|
|
|
BigDataTest() { SBigNew(&num); }
|
|
~BigDataTest() { SBigDel(num); }
|
|
|
|
BigData** operator &() { return # }
|
|
operator BigDataPtr() const { return num; }
|
|
BigData* operator->() const { return num; }
|
|
|
|
uint32_t ToUnsigned() {
|
|
uint32_t result;
|
|
SBigToUnsigned(num, &result);
|
|
return result;
|
|
}
|
|
|
|
std::vector<uint8_t> ToBinaryBuffer() {
|
|
uint32_t size = 1024 * 1024;
|
|
std::vector<uint8_t> data(size);
|
|
|
|
uint32_t bytes = 0;
|
|
SBigToBinaryBuffer(this->num, data.data(), size, &bytes);
|
|
data.resize(bytes);
|
|
|
|
return data;
|
|
}
|
|
};
|