Toolbox
snapshot
The Reactive C++ Toolbox
Loading...
Searching...
No Matches
toolbox
util
Random.ut.cpp
Go to the documentation of this file.
1
// The Reactive C++ Toolbox.
2
// Copyright (C) 2013-2019 Swirly Cloud Limited
3
// Copyright (C) 2024 Reactive Markets Limited
4
//
5
// Licensed under the Apache License, Version 2.0 (the "License");
6
// you may not use this file except in compliance with the License.
7
// You may obtain a copy of the License at
8
//
9
// http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing, software
12
// distributed under the License is distributed on an "AS IS" BASIS,
13
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
// See the License for the specific language governing permissions and
15
// limitations under the License.
16
17
#include "
Random.hpp
"
18
19
#include <boost/test/tools/old/interface.hpp>
20
#include <boost/test/unit_test.hpp>
21
22
using namespace
std
;
23
using namespace
toolbox
;
24
25
BOOST_AUTO_TEST_SUITE
(
RandomSuite
)
26
27
BOOST_AUTO_TEST_CASE
(
RandIntCase
)
28
{
29
constexpr
int
lower_bound
= 0;
30
constexpr
int
upper_bound
= 100;
31
32
vector<int>
rand_ints
;
33
for
(
int
i
= 0;
i
< 100;
i
++) {
34
rand_ints
.push_back(
randint
(
lower_bound
,
upper_bound
));
35
}
36
37
for
(
int
num
:
rand_ints
) {
38
BOOST_CHECK_GE
(
num
,
lower_bound
);
39
BOOST_CHECK_LE
(
num
,
upper_bound
);
40
}
41
}
42
43
BOOST_AUTO_TEST_CASE
(
RandIntNegativeCase
)
44
{
45
constexpr
int
lower_bound
= -100;
46
constexpr
int
upper_bound
= 100;
47
48
vector<int>
rand_ints
;
49
for
(
int
i
= 0;
i
< 100;
i
++) {
50
rand_ints
.push_back(
randint
(
lower_bound
,
upper_bound
));
51
}
52
53
for
(
int
num
:
rand_ints
) {
54
BOOST_CHECK_GE
(
num
,
lower_bound
);
55
BOOST_CHECK_LE
(
num
,
upper_bound
);
56
}
57
}
58
59
BOOST_AUTO_TEST_SUITE_END
()
Random.hpp
BOOST_AUTO_TEST_CASE
BOOST_AUTO_TEST_CASE(RandIntCase)
Definition
Random.ut.cpp:27
std
STL namespace.
toolbox::util::randint
IntT randint(IntT a, IntT b)
Definition
Random.hpp:30
toolbox::util::bind
constexpr auto bind() noexcept
Definition
Slot.hpp:92
toolbox
Definition
Benchmark.cpp:26
Generated by
1.9.8