blob: 15124cd8dfa7ac809bac8657d496e695c52c99f1 [file] [log] [blame]
Junxiao Shid9ee45c2014-02-27 15:38:11 -07001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2/**
Alexander Afanasyev9bcbc7c2014-04-06 19:37:37 -07003 * Copyright (c) 2014 Regents of the University of California,
4 * Arizona Board of Regents,
5 * Colorado State University,
6 * University Pierre & Marie Curie, Sorbonne University,
7 * Washington University in St. Louis,
8 * Beijing Institute of Technology
9 *
10 * This file is part of NFD (Named Data Networking Forwarding Daemon).
11 * See AUTHORS.md for complete list of NFD authors and contributors.
12 *
13 * NFD is free software: you can redistribute it and/or modify it under the terms
14 * of the GNU General Public License as published by the Free Software Foundation,
15 * either version 3 of the License, or (at your option) any later version.
16 *
17 * NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
18 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
19 * PURPOSE. See the GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License along with
22 * NFD, e.g., in COPYING.md file. If not, see <http://www.gnu.org/licenses/>.
23 **/
Junxiao Shid9ee45c2014-02-27 15:38:11 -070024
Alexander Afanasyev613e2a92014-04-15 13:36:58 -070025#ifndef NFD_TESTS_TEST_COMMON_HPP
26#define NFD_TESTS_TEST_COMMON_HPP
Junxiao Shid9ee45c2014-02-27 15:38:11 -070027
Alexander Afanasyev8552a382014-05-15 20:13:42 -070028#include "boost-test.hpp"
29
Junxiao Shid9ee45c2014-02-27 15:38:11 -070030#include "core/global-io.hpp"
Steve DiBenedettobf6a93d2014-03-21 14:03:02 -060031#include "core/logger.hpp"
Alexander Afanasyev8552a382014-05-15 20:13:42 -070032
Alexander Afanasyev4a771362014-04-24 21:29:33 -070033#include <ndn-cxx/security/key-chain.hpp>
Junxiao Shid9ee45c2014-02-27 15:38:11 -070034
35namespace nfd {
36namespace tests {
37
38/** \brief base test fixture
39 *
40 * Every test case should be based on this fixture,
41 * to have per test case io_service initialization.
42 */
43class BaseFixture
44{
45protected:
46 BaseFixture()
47 : g_io(getGlobalIoService())
48 {
49 }
Junxiao Shif3c07812014-03-11 21:48:49 -070050
Junxiao Shid9ee45c2014-02-27 15:38:11 -070051 ~BaseFixture()
52 {
53 resetGlobalIoService();
54 }
55
56protected:
57 /// reference to global io_service
58 boost::asio::io_service& g_io;
59};
60
Junxiao Shif3c07812014-03-11 21:48:49 -070061
62inline shared_ptr<Interest>
63makeInterest(const Name& name)
64{
65 return make_shared<Interest>(name);
66}
67
68inline shared_ptr<Data>
69makeData(const Name& name)
70{
71 shared_ptr<Data> data = make_shared<Data>(name);
72
73 ndn::SignatureSha256WithRsa fakeSignature;
Ilya Moiseenko96b80bb2014-04-05 20:53:27 -040074 fakeSignature.setValue(ndn::dataBlock(tlv::SignatureValue,
75 reinterpret_cast<const uint8_t*>(0), 0));
Junxiao Shif3c07812014-03-11 21:48:49 -070076 data->setSignature(fakeSignature);
77
78 return data;
79}
80
Junxiao Shid9ee45c2014-02-27 15:38:11 -070081} // namespace tests
82} // namespace nfd
83
Alexander Afanasyev613e2a92014-04-15 13:36:58 -070084#endif // NFD_TESTS_TEST_COMMON_HPP