tests: Added more tests

This commit is contained in:
WerWolv
2021-09-11 23:13:49 +02:00
parent 254b204d6c
commit 3d15a108af
13 changed files with 351 additions and 21 deletions

View File

@@ -0,0 +1,38 @@
#pragma once
#include "test_pattern.hpp"
namespace hex::test {
class TestPatternPadding : public TestPattern {
public:
TestPatternPadding() : TestPattern("Padding") {
auto testStruct = create<PatternDataStruct>(0x100, sizeof(s32) + 20 + sizeof(u8[0x10]), "TestStruct", "testStruct");
auto variable = create<PatternDataSigned>(0x100, sizeof(s32), "s32", "variable");
auto padding = create<PatternDataPadding>(0x100 + sizeof(s32), 20, "", "");
auto array = create<PatternDataStaticArray>(0x100 + sizeof(s32) + 20, sizeof(u8[0x10]), "u8", "array");
array->setEntries(create<PatternDataUnsigned>(0x100 + sizeof(s32) + 20, sizeof(u8), "u8", ""), 0x10);
testStruct->setMembers({ variable, padding, array });
addPattern(testStruct);
}
~TestPatternPadding() override = default;
[[nodiscard]]
std::string getSourceCode() const override {
return R"(
struct TestStruct {
s32 variable;
padding[20];
u8 array[0x10];
};
TestStruct testStruct @ 0x100;
)";
}
};
}