osrm-backend/test/t/io/test_compression_factory.cpp
Patrick Niklaus 6eb4f090f9 Squashed 'third_party/libosmium/' content from commit ce865381f
git-subtree-dir: third_party/libosmium
git-subtree-split: ce865381fb752323ff1e66181f5a49b7f500ffa3
2017-08-30 09:30:27 +00:00

24 lines
1019 B
C++

#include "catch.hpp"
#include <osmium/io/compression.hpp>
TEST_CASE("Create compressor using factory") {
const auto& factory = osmium::io::CompressionFactory::instance();
REQUIRE(factory.create_compressor(osmium::io::file_compression::none, -1, osmium::io::fsync::no));
}
TEST_CASE("Create decompressor using factory") {
const auto& factory = osmium::io::CompressionFactory::instance();
REQUIRE(factory.create_decompressor(osmium::io::file_compression::none, nullptr, 0));
}
TEST_CASE("Compression factory fails on undefined compression") {
const auto& factory = osmium::io::CompressionFactory::instance();
REQUIRE_THROWS_AS(factory.create_compressor(osmium::io::file_compression::gzip, -1, osmium::io::fsync::no),
const osmium::unsupported_file_format_error&);
REQUIRE_THROWS_WITH(factory.create_compressor(osmium::io::file_compression::gzip, -1, osmium::io::fsync::no),
"Support for compression 'gzip' not compiled into this binary");
}