30 #include "gtest/gtest.h" 65 TEST(rolling_median, series)
68 std::vector<uint64_t> v;
70 for (
int i = 0; i < 10000; ++i)
77 std::vector<uint64_t> vcopy = v;
82 TEST(rolling_median, clear_whole)
88 for (
int i = 0; i < 10000; ++i)
95 for (
int i = 0; i < 10000; ++i)
102 TEST(rolling_median, clear_partway)
108 for (
int i = 0; i < 10000; ++i)
115 for (
int i = 10000 - 100; i < 10000; ++i)
125 std::vector<uint64_t>
random;
127 for (
int i = 0; i < 1000; ++i)
136 for (
int i = 0; i < 1000; ++i)
142 for (
int i = 0; i < 1000; ++i)
146 std::shuffle(
random.begin(),
random.end(), std::default_random_engine(crypto::rand<unsigned>()));
148 for (
int i = 0; i < 1000; ++i)
153 TEST(rolling_median, history_blind)
158 for (
int i = 0; i < 1000; ++i)
161 int history_length = 743723 % (i+1);
162 while (history_length--)
164 for (
int j = 0; j < 10; ++j)
165 m.
insert(8924829384 % (j+1));
184 for (
int i = 0; i < 10; ++i)
197 for (
int i = 0; i < 1000; ++i)
#define ASSERT_EQ(val1, val2)
void rand(size_t N, uint8_t *bytes)
unsigned __int64 uint64_t
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
type_vec_type median(std::vector< type_vec_type > &v)
uint64_t random(const uint64_t max_value)