2025-10-03 00:46:08 -07:00
|
|
|
#include "Test.hpp"
|
|
|
|
|
#include "storm/Big.hpp"
|
2025-10-24 10:44:58 -07:00
|
|
|
#include <vector>
|
2025-10-03 00:46:08 -07:00
|
|
|
|
|
|
|
|
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; }
|
2025-10-24 10:44:58 -07:00
|
|
|
|
|
|
|
|
uint32_t ToUnsigned() {
|
|
|
|
|
uint32_t result;
|
|
|
|
|
SBigToUnsigned(num, &result);
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::vector<uint8_t> ToBinaryBuffer() {
|
2025-10-24 11:53:05 -07:00
|
|
|
uint32_t size = 1024 * 1024;
|
2025-10-24 10:44:58 -07:00
|
|
|
std::vector<uint8_t> data(size);
|
|
|
|
|
|
|
|
|
|
uint32_t bytes = 0;
|
|
|
|
|
SBigToBinaryBuffer(this->num, data.data(), size, &bytes);
|
|
|
|
|
data.resize(bytes);
|
|
|
|
|
|
|
|
|
|
return data;
|
|
|
|
|
}
|
2025-10-03 00:46:08 -07:00
|
|
|
};
|