test: test LZP compression
This commit is contained in:
parent
c244d425ca
commit
2a79e08343
|
@ -10,8 +10,8 @@ void
|
|||
lzp_compress(uint8_t *out, size_t *outsz, const uint8_t *in, size_t insz)
|
||||
{
|
||||
uint8_t c;
|
||||
uint16_t hash = 0;
|
||||
uint32_t mask = 0;
|
||||
uint16_t hash;
|
||||
uint32_t mask;
|
||||
uint8_t table[LZP_HASH_SIZE] = { 0 };
|
||||
size_t i, j;
|
||||
size_t inpos;
|
||||
|
@ -20,9 +20,11 @@ lzp_compress(uint8_t *out, size_t *outsz, const uint8_t *in, size_t insz)
|
|||
|
||||
inpos = 0;
|
||||
outpos = 0;
|
||||
hash = 0;
|
||||
while (inpos < insz)
|
||||
{
|
||||
j = 1;
|
||||
mask = 0;
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
if (inpos >= insz)
|
||||
|
|
|
@ -4,14 +4,24 @@
|
|||
#include <setjmp.h>
|
||||
#include <cmocka.h>
|
||||
|
||||
static const char *uncompress_data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
||||
void lzp_compress(uint8_t *out, size_t *outsz, const uint8_t *in, size_t insz);
|
||||
void lzp_decompress(uint8_t *out, size_t *outsz, const uint8_t *in, size_t insz);
|
||||
|
||||
static const char uncompress_data[298] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
||||
"abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc"
|
||||
"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccabcabcabcabcabcabcabcabcabcabcabcabcabcabc";
|
||||
|
||||
static void
|
||||
test_lzp(void **state)
|
||||
{
|
||||
(void)state;
|
||||
uint8_t compressed[298];
|
||||
char result[298];
|
||||
size_t outsz;
|
||||
|
||||
lzp_compress(compressed, &outsz, (uint8_t *)uncompress_data, 298);
|
||||
lzp_decompress((uint8_t *)result, &outsz, compressed, outsz);
|
||||
|
||||
assert_int_equal(298, outsz);
|
||||
assert_memory_equal(uncompress_data, result, 298);
|
||||
}
|
||||
|
||||
int
|
||||
|
|
Loading…
Reference in a new issue