NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
Main Page
Related Pages
Modules
+
Namespaces
Namespace List
+
Namespace Members
+
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
+
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
+
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
+
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
+
Enumerations
a
b
c
d
f
i
k
l
n
p
q
r
s
t
u
v
+
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
z
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
~
+
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
~
+
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
+
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
+
Enumerations
_
a
c
e
r
s
t
v
+
Enumerator
a
c
d
e
f
h
i
l
m
n
p
r
s
u
v
w
+
Related Functions
a
b
c
d
e
f
g
i
k
l
m
n
o
p
s
v
+
Files
File List
+
File Members
+
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
+
Functions
b
c
d
e
f
g
h
m
o
p
r
s
t
u
v
w
+
Variables
a
b
c
d
e
f
g
i
k
l
m
n
p
r
s
t
+
Typedefs
b
c
d
e
i
m
p
s
u
w
Enumerations
Enumerator
+
Macros
_
a
b
d
e
i
l
m
n
o
p
r
s
t
u
v
z
•
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:101
utilities.hpp
ndnSIM
NFD
websocketpp
test
utility
utilities.cpp
Generated on Fri May 6 2022 12:34:14 for ndnSIM by
1.8.13