NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.3: NDN, CCN, CCNx, content centric networks
API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ndnSIM
ndnSIM documentation
All Attributes
All GlobalValues
All LogComponents
All TraceSources
Todo List
Deprecated List
Modules
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
utilities.cpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2011, Peter Thorson. All rights reserved.
3
*
4
* Redistribution and use in source and binary forms, with or without
5
* modification, are permitted provided that the following conditions are met:
6
* * Redistributions of source code must retain the above copyright
7
* notice, this list of conditions and the following disclaimer.
8
* * Redistributions in binary form must reproduce the above copyright
9
* notice, this list of conditions and the following disclaimer in the
10
* documentation and/or other materials provided with the distribution.
11
* * Neither the name of the WebSocket++ Project nor the
12
* names of its contributors may be used to endorse or promote products
13
* derived from this software without specific prior written permission.
14
*
15
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18
* ARE DISCLAIMED. IN NO EVENT SHALL PETER THORSON BE LIABLE FOR ANY
19
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25
*
26
*/
27
//#define BOOST_TEST_DYN_LINK
28
#define BOOST_TEST_MODULE utility
29
#include <boost/test/unit_test.hpp>
30
31
#include <iostream>
32
#include <string>
33
34
#include <
websocketpp/utilities.hpp
>
35
36
BOOST_AUTO_TEST_SUITE ( utility )
37
38
BOOST_AUTO_TEST_CASE
( substr_found ) {
39
std::string haystack =
"abc123"
;
40
std::string needle =
"abc"
;
41
42
BOOST_CHECK(
websocketpp::utility::ci_find_substr
(haystack,needle) ==haystack.begin());
43
}
44
45
BOOST_AUTO_TEST_CASE
( substr_found_ci ) {
46
std::string haystack =
"abc123"
;
47
std::string needle =
"aBc"
;
48
49
BOOST_CHECK(
websocketpp::utility::ci_find_substr
(haystack,needle) ==haystack.begin());
50
}
51
52
BOOST_AUTO_TEST_CASE
( substr_not_found ) {
53
std::string haystack =
"abd123"
;
54
std::string needle =
"abcd"
;
55
56
BOOST_CHECK(
websocketpp::utility::ci_find_substr
(haystack,needle) == haystack.end());
57
}
58
59
BOOST_AUTO_TEST_CASE
(
to_lower
) {
60
std::string in =
"AbCd"
;
61
62
BOOST_CHECK_EQUAL(
websocketpp::utility::to_lower
(in),
"abcd"
);
63
}
64
65
BOOST_AUTO_TEST_CASE
(
string_replace_all
) {
66
std::string source =
"foo \"bar\" baz"
;
67
std::string dest =
"foo \\\"bar\\\" baz"
;
68
69
using
websocketpp::utility::string_replace_all
;
70
BOOST_CHECK_EQUAL(
string_replace_all
(source,
"\""
,
"\\\""
),dest);
71
}
72
73
BOOST_AUTO_TEST_SUITE_END()
BOOST_AUTO_TEST_CASE
BOOST_AUTO_TEST_CASE(substr_found)
Definition:
utilities.cpp:38
websocketpp::utility::string_replace_all
std::string string_replace_all(std::string subject, std::string const &search, std::string const &replace)
Replace all occurrances of a substring with another.
Definition:
utilities_impl.hpp:73
websocketpp::utility::to_lower
std::string to_lower(std::string const &in)
Convert a string to lowercase.
Definition:
utilities_impl.hpp:37
websocketpp::utility::ci_find_substr
T::const_iterator ci_find_substr(T const &haystack, T const &needle, std::locale const &loc=std::locale())
Find substring (case insensitive)
Definition:
utilities.hpp:103
utilities.hpp
ndnSIM
NFD
websocketpp
test
utility
utilities.cpp
Generated on Thu Nov 2 2017 03:30:29 for ndnSIM by
1.8.11