Add basic facades for Extractor and Contractor run methods.

Based on idea suggested in comments to #3776, simplifies
use of extractor and contractor as libraries.
This commit is contained in:
Mateusz Łoskot
2017-03-08 11:27:38 +01:00
committed by Patrick Niklaus
parent 5aba239fc1
commit e13ba8ba11
10 changed files with 279 additions and 3 deletions
+21
View File
@@ -0,0 +1,21 @@
#include <boost/test/test_case_template.hpp>
#include <boost/test/unit_test.hpp>
#include "osrm/contractor.hpp"
#include "osrm/contractor_config.hpp"
#include <tbb/task_scheduler_init.h> // default_num_threads
BOOST_AUTO_TEST_SUITE(library_contract)
BOOST_AUTO_TEST_CASE(test_contract_with_invalid_config)
{
using namespace osrm;
osrm::ContractorConfig config;
config.requested_num_threads = tbb::task_scheduler_init::default_num_threads();
BOOST_CHECK_THROW(osrm::contract(config),
std::exception); // including osrm::util::exception, etc.
}
BOOST_AUTO_TEST_SUITE_END()
+27
View File
@@ -0,0 +1,27 @@
#include <boost/test/test_case_template.hpp>
#include <boost/test/unit_test.hpp>
#include "osrm/extractor.hpp"
#include "osrm/extractor_config.hpp"
#include <tbb/task_scheduler_init.h> // default_num_threads
BOOST_AUTO_TEST_SUITE(library_extract)
BOOST_AUTO_TEST_CASE(test_extract_with_invalid_config)
{
osrm::ExtractorConfig config;
config.requested_num_threads = tbb::task_scheduler_init::default_num_threads();
BOOST_CHECK_THROW(osrm::extract(config),
std::exception); // including osrm::util::exception, osmium::io_error, etc.
}
BOOST_AUTO_TEST_CASE(test_extract_with_valid_config)
{
osrm::ExtractorConfig config;
config.input_path = {OSRM_TEST_DATA_DIR "/monaco.osm.pbf"};
config.requested_num_threads = tbb::task_scheduler_init::default_num_threads();
BOOST_CHECK_NO_THROW(osrm::extract(config));
}
BOOST_AUTO_TEST_SUITE_END()