aboutsummaryrefslogtreecommitdiff
path: root/third_party/abseil-cpp/absl/base/internal/endian_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/abseil-cpp/absl/base/internal/endian_test.cc')
-rw-r--r--third_party/abseil-cpp/absl/base/internal/endian_test.cc24
1 files changed, 13 insertions, 11 deletions
diff --git a/third_party/abseil-cpp/absl/base/internal/endian_test.cc b/third_party/abseil-cpp/absl/base/internal/endian_test.cc
index a1691b1f82..aa6b849690 100644
--- a/third_party/abseil-cpp/absl/base/internal/endian_test.cc
+++ b/third_party/abseil-cpp/absl/base/internal/endian_test.cc
@@ -54,22 +54,24 @@ const uint32_t k32ValueBE{0x67452301};
const uint16_t k16ValueBE{0x2301};
#endif
-std::vector<uint16_t> GenerateAllUint16Values() {
- std::vector<uint16_t> result;
- result.reserve(size_t{1} << (sizeof(uint16_t) * 8));
- for (uint32_t i = std::numeric_limits<uint16_t>::min();
- i <= std::numeric_limits<uint16_t>::max(); ++i) {
- result.push_back(static_cast<uint16_t>(i));
+template<typename T>
+std::vector<T> GenerateAllValuesForType() {
+ std::vector<T> result;
+ T next = std::numeric_limits<T>::min();
+ while (true) {
+ result.push_back(next);
+ if (next == std::numeric_limits<T>::max()) {
+ return result;
+ }
+ ++next;
}
- return result;
}
template<typename T>
-std::vector<T> GenerateRandomIntegers(size_t num_values_to_test) {
+std::vector<T> GenerateRandomIntegers(size_t numValuesToTest) {
std::vector<T> result;
- result.reserve(num_values_to_test);
std::mt19937_64 rng(kRandomSeed);
- for (size_t i = 0; i < num_values_to_test; ++i) {
+ for (size_t i = 0; i < numValuesToTest; ++i) {
result.push_back(rng());
}
return result;
@@ -146,7 +148,7 @@ void Swap64(char* bytes) {
}
TEST(EndianessTest, Uint16) {
- GBSwapHelper(GenerateAllUint16Values(), &Swap16);
+ GBSwapHelper(GenerateAllValuesForType<uint16_t>(), &Swap16);
}
TEST(EndianessTest, Uint32) {