FDRp tests: less raw malloc/free

This commit is contained in:
Justin Viiret 2015-10-15 16:08:51 +11:00 committed by Matthew Barr
parent 4a98c664b4
commit 441329f15a

View File

@ -207,7 +207,6 @@ TEST_P(FDRp, SimpleSingle) {
TEST_P(FDRp, MultiLocation) { TEST_P(FDRp, MultiLocation) {
const u32 hint = GetParam(); const u32 hint = GetParam();
SCOPED_TRACE(hint); SCOPED_TRACE(hint);
u8 * data;
vector<hwlmLiteral> lits; vector<hwlmLiteral> lits;
lits.push_back(hwlmLiteral("abc", 0, 1)); lits.push_back(hwlmLiteral("abc", 0, 1));
@ -216,24 +215,23 @@ TEST_P(FDRp, MultiLocation) {
CHECK_WITH_TEDDY_OK_TO_FAIL(fdr, hint); CHECK_WITH_TEDDY_OK_TO_FAIL(fdr, hint);
const u32 testSize = 128; const u32 testSize = 128;
data = (u8 *)malloc(testSize);
memset(data, 0, testSize); vector<u8> data(testSize, 0);
for (u32 i = 0; i < testSize - 3; i++) { for (u32 i = 0; i < testSize - 3; i++) {
memcpy(data + i, "abc", 3); memcpy(data.data() + i, "abc", 3);
vector<match> matches; vector<match> matches;
fdrExec(fdr.get(), (const u8 *)data, testSize, 0, decentCallback, fdrExec(fdr.get(), data.data(), testSize, 0, decentCallback, &matches,
&matches, HWLM_ALL_GROUPS); HWLM_ALL_GROUPS);
ASSERT_EQ(1U, matches.size()); ASSERT_EQ(1U, matches.size());
EXPECT_EQ(match(i, i+2, 1), matches[0]); EXPECT_EQ(match(i, i+2, 1), matches[0]);
memset(data + i, 0, 3); memset(data.data() + i, 0, 3);
} }
free(data);
} }
TEST_P(FDRp, Flood) { TEST_P(FDRp, Flood) {
const u32 hint = GetParam(); const u32 hint = GetParam();
SCOPED_TRACE(hint); SCOPED_TRACE(hint);
u8 * data;
vector<hwlmLiteral> lits; vector<hwlmLiteral> lits;
lits.push_back(hwlmLiteral("aaaa", 0, 1)); lits.push_back(hwlmLiteral("aaaa", 0, 1));
@ -245,11 +243,10 @@ TEST_P(FDRp, Flood) {
CHECK_WITH_TEDDY_OK_TO_FAIL(fdr, hint); CHECK_WITH_TEDDY_OK_TO_FAIL(fdr, hint);
const u32 testSize = 1024; const u32 testSize = 1024;
data = (u8 *)malloc(testSize); vector<u8> data(testSize, 'a');
memset(data, 'a', testSize);
vector<match> matches; vector<match> matches;
fdrExec(fdr.get(), (const u8 *)data, testSize, 0, decentCallback, &matches, fdrExec(fdr.get(), data.data(), testSize, 0, decentCallback, &matches,
HWLM_ALL_GROUPS); HWLM_ALL_GROUPS);
ASSERT_EQ(testSize - 3 + testSize - 7, matches.size()); ASSERT_EQ(testSize - 3 + testSize - 7, matches.size());
EXPECT_EQ(match(0, 3, 1), matches[0]); EXPECT_EQ(match(0, 3, 1), matches[0]);
@ -266,8 +263,6 @@ TEST_P(FDRp, Flood) {
match(i - 3, i, 1) == matches[currentMatch]) match(i - 3, i, 1) == matches[currentMatch])
); );
} }
free(data);
} }
TEST_P(FDRp, NoRepeat1) { TEST_P(FDRp, NoRepeat1) {
@ -483,10 +478,10 @@ TEST_P(FDRp, moveByteStream) {
size_t size = fdrSize(fdrTable0.get()); size_t size = fdrSize(fdrTable0.get());
FDR *fdrTable = (FDR *)aligned_zmalloc(size); auto fdrTable = aligned_zmalloc_unique<FDR>(size);
EXPECT_TRUE(fdrTable); EXPECT_NE(nullptr, fdrTable);
memcpy(fdrTable, fdrTable0.get(), size); memcpy(fdrTable.get(), fdrTable0.get(), size);
// bugger up original // bugger up original
for (size_t i = 0 ; i < size; i++) { for (size_t i = 0 ; i < size; i++) {
@ -496,14 +491,13 @@ TEST_P(FDRp, moveByteStream) {
// check matches // check matches
vector<match> matches; vector<match> matches;
hwlm_error_t fdrStatus = fdrExec(fdrTable, (const u8 *)data, data_len, 0, hwlm_error_t fdrStatus = fdrExec(fdrTable.get(), (const u8 *)data,
decentCallback, &matches, HWLM_ALL_GROUPS); data_len, 0, decentCallback, &matches,
HWLM_ALL_GROUPS);
ASSERT_EQ(0, fdrStatus); ASSERT_EQ(0, fdrStatus);
ASSERT_EQ(1U, matches.size()); ASSERT_EQ(1U, matches.size());
EXPECT_EQ(match(12, 17, 0), matches[0]); EXPECT_EQ(match(12, 17, 0), matches[0]);
aligned_free(fdrTable);
} }
TEST_P(FDRp, Stream1) { TEST_P(FDRp, Stream1) {