Add test that checks for duplicate category instances

This commit is contained in:
Peter Dimov
2018-01-14 05:10:44 +02:00
parent f69e195aaf
commit c3da8661dc
4 changed files with 85 additions and 0 deletions

View File

@ -124,6 +124,15 @@ project
[ run header_only_test.cpp
: : : -<library>/boost/system//boost_system <define>BOOST_NO_ANSI_APIS : header_only_test_no_ansi
]
[ run single_instance_test.cpp single_instance_1.cpp single_instance_2.cpp
: : : <link>static : single_instance_test_static
]
[ run single_instance_test.cpp single_instance_1.cpp single_instance_2.cpp
: : : <link>shared : single_instance_test_shared
]
[ run single_instance_test.cpp single_instance_1.cpp single_instance_2.cpp
: : : -<library>/boost/system//boost_system <define>BOOST_ERROR_CODE_HEADER_ONLY : single_instance_test_header
]
;
# Quick (CI) test

View File

@ -0,0 +1,22 @@
// Copyright 2018 Peter Dimov.
// Distributed under the Boost Software License, Version 1.0.
#include <boost/system/error_code.hpp>
using namespace boost::system;
namespace lib1
{
error_code get_system_code()
{
return error_code( 0, system_category() );
}
error_code get_generic_code()
{
return error_code( 0, generic_category() );
}
} // namespace lib1

View File

@ -0,0 +1,22 @@
// Copyright 2018 Peter Dimov.
// Distributed under the Boost Software License, Version 1.0.
#include <boost/system/error_code.hpp>
using namespace boost::system;
namespace lib2
{
error_code get_system_code()
{
return error_code( 0, system_category() );
}
error_code get_generic_code()
{
return error_code( 0, generic_category() );
}
} // namespace lib2

View File

@ -0,0 +1,32 @@
// Copyright 2018 Peter Dimov.
// Distributed under the Boost Software License, Version 1.0.
#include <boost/system/error_code.hpp>
#include <boost/core/lightweight_test.hpp>
using namespace boost::system;
namespace lib1
{
error_code get_system_code();
error_code get_generic_code();
} // namespace lib1
namespace lib2
{
error_code get_system_code();
error_code get_generic_code();
} // namespace lib2
int main()
{
BOOST_TEST_EQ( lib1::get_system_code(), lib2::get_system_code() );
BOOST_TEST_EQ( lib1::get_generic_code(), lib2::get_generic_code() );
return boost::report_errors();
}