build: align minimum build dependencies with ndn-cxx
* Recommend boost >= 1.65.1 and gcc >= 7.4.0 * Require clang >= 4.0, or Xcode >= 9.0 on macOS * Silence an ABI-related diagnostic message from gcc on armv7 Refs: #5087, #5106 Change-Id: I88ef0e0f183736f19ac414a84baebb0e1073381b
This commit is contained in:
1 parent
8a2907ea04
commit
b07d7a96da
11 files changed
+107
-102
No files matched your search
+5
-6
@@ -1,13 +1,12 @@
|
||||
ndn-tools unit tests
|
||||
====================
|
||||
# ndn-tools unit tests
|
||||
|
||||
## Assumptions
|
||||
|
||||
Unit tests for a tool `foo` should be placed in the folder `foo` and build script for the tool
|
||||
should define `foo-objects` that includes all object files for the tool, except object files
|
||||
defining main function.
|
||||
Unit tests for a tool `foo` should be placed in the folder `foo` and the build script
|
||||
for the tool should define `foo-objects` that includes all object files for that tool,
|
||||
except the object that contains the `main()` function.
|
||||
|
||||
For example,
|
||||
For example:
|
||||
|
||||
bld(features='cxx',
|
||||
name='tool-subtool-objects',
|
||||
|
||||
+3
-4
@@ -1,6 +1,6 @@
|
||||
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
|
||||
/*
|
||||
* Copyright (c) 2014-2019, Regents of the University of California,
|
||||
* Copyright (c) 2014-2020, Regents of the University of California,
|
||||
* Arizona Board of Regents,
|
||||
* Colorado State University,
|
||||
* University Pierre & Marie Curie, Sorbonne University,
|
||||
@@ -23,6 +23,5 @@
|
||||
* ndn-tools, e.g., in COPYING.md file. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#define BOOST_TEST_MODULE ndn-tools Unit Tests
|
||||
|
||||
#include "boost-test.hpp"
|
||||
#define BOOST_TEST_MODULE ndn-tools
|
||||
#include "tests/boost-test.hpp"
|
||||
@@ -1,6 +1,6 @@
|
||||
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
|
||||
/**
|
||||
* Copyright (c) 2014-2016, Arizona Board of Regents.
|
||||
/*
|
||||
* Copyright (c) 2014-2020 Arizona Board of Regents.
|
||||
*
|
||||
* This file is part of ndn-tools (Named Data Networking Essential Tools).
|
||||
* See AUTHORS.md for complete list of ndn-tools authors and contributors.
|
||||
@@ -17,22 +17,22 @@
|
||||
* ndn-tools, e.g., in COPYING.md file. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
// #include "unit-under-test.hpp"
|
||||
// Unit being tested MUST be included first, to ensure header compiles on its own.
|
||||
// The unit being tested should be included first, to ensure the header compiles on its own.
|
||||
// For further information about test naming conventions, see
|
||||
// http://redmine.named-data.net/projects/nfd/wiki/UnitTesting
|
||||
// https://redmine.named-data.net/projects/nfd/wiki/UnitTesting
|
||||
//#include "unit-under-test.hpp"
|
||||
|
||||
#include "tests/test-common.hpp"
|
||||
|
||||
namespace ndn {
|
||||
namespace tool_name {
|
||||
namespace tests {
|
||||
// Unit tests SHOULD go inside ndn::tool_name::tests namespace.
|
||||
// Unit tests should go inside the ndn::tool_name::tests namespace.
|
||||
|
||||
// Common fixtures in ndn::tests can be imported.
|
||||
// Common fixtures in ndn::tests can be imported if needed.
|
||||
using namespace ndn::tests;
|
||||
|
||||
// See http://redmine.named-data.net/projects/nfd/wiki/UnitTesting on how to name a test suite.
|
||||
// See https://redmine.named-data.net/projects/nfd/wiki/UnitTesting for a guide on how to name a test suite.
|
||||
BOOST_AUTO_TEST_SUITE(TestSkeleton)
|
||||
|
||||
BOOST_AUTO_TEST_CASE(Test1)
|
||||
@@ -40,16 +40,16 @@ BOOST_AUTO_TEST_CASE(Test1)
|
||||
int i = 0;
|
||||
|
||||
// For reference of available Boost.Test macros, see
|
||||
// https://www.boost.org/doc/libs/1_58_0/libs/test/doc/html/utf/testing-tools/reference.html
|
||||
// https://www.boost.org/doc/libs/1_65_1/libs/test/doc/html/boost_test/testing_tools/summary.html
|
||||
|
||||
BOOST_REQUIRE_NO_THROW(i = 1);
|
||||
BOOST_REQUIRE_EQUAL(i, 1);
|
||||
BOOST_CHECK_EQUAL(i, 1);
|
||||
}
|
||||
|
||||
// Use UnitTestTimeFixture to mock clocks.
|
||||
BOOST_FIXTURE_TEST_CASE(Test2, UnitTestTimeFixture)
|
||||
{
|
||||
// this->advanceClocks increments mock clocks.
|
||||
// advanceClocks() increments mock clocks.
|
||||
boost::asio::io_service io;
|
||||
this->advanceClocks(io, time::milliseconds(500));
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user