blob: 3f4685aa4d5a2152f0405d30cb20fa1bda899b92 [file] [log] [blame]
// Copyright 2021 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "gtest/gtest.h"
#include "puffin/src/include/puffin/brotli_util.h"
#include "puffin/src/memory_stream.h"
#include "puffin/src/puffin_stream.h"
namespace puffin {
namespace {
// echo "puffin test" | xxd -i
const Buffer kTestString = {0x70, 0x75, 0x66, 0x66, 0x69, 0x6e,
0x20, 0x74, 0x65, 0x73, 0x74, 0x0a};
} // namespace
TEST(BrotliUtilTest, CompressAndDecompressTest) {
Buffer compressed;
ASSERT_TRUE(BrotliEncode(kTestString.data(), kTestString.size(),
MemoryStream::CreateForWrite(&compressed)));
ASSERT_FALSE(compressed.empty());
Buffer decompressed;
ASSERT_TRUE(BrotliDecode(compressed.data(), compressed.size(),
MemoryStream::CreateForWrite(&decompressed)));
ASSERT_EQ(kTestString, decompressed);
}
} // namespace puffin