obfs, sample, random: Fix type name to ull

This commit is contained in:
revsic
2019-04-07 02:42:26 +09:00
parent 4e2dbd6f55
commit 57df654667
+5 -5
View File
@@ -1,12 +1,12 @@
#include <obfs/random.hpp>
#include <catch2/catch.hpp>
using uint64_t = unsigned long long;
using ull = unsigned long long;
// https://en.wikipedia.org/wiki/Xorshift
uint64_t xorshift128plus(uint64_t state[2]) {
uint64_t t = state[0];
uint64_t const s = state[1];
ull xorshift128plus(ull state[2]) {
ull t = state[0];
ull const s = state[1];
state[0] = s;
t ^= t << 23; // a
t ^= t >> 17; // b
@@ -17,7 +17,7 @@ uint64_t xorshift128plus(uint64_t state[2]) {
TEST_CASE("Random case", "[obfs::Xorshift+]") {
constexpr size_t val = MAKE_RAND_VAL(100);
uint64_t state[2] = { val, val << 1 };
ull state[2] = { val, val << 1 };
REQUIRE(obfs::Xorshiftplus<val, 1>::value == xorshift128plus(state));
REQUIRE(obfs::Xorshiftplus<val, 2>::value == xorshift128plus(state));