UnitTests: Optimize example string generation

Change-Id: I9cc17269812dd9a61b192598f947e2754673c96e
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Marco Bubke
2023-07-20 18:35:01 +02:00
parent f1b5fb6e11
commit 3d7f1a0f7f

View File

@@ -618,21 +618,21 @@ TEST(SmallString, to_q_string)
class FromQString : public testing::TestWithParam<qsizetype>
{
protected:
QString randomString(qsizetype size)
QString exampleString(qsizetype size)
{
static constexpr char16_t characters[] = u"0123456789"
"abcdefghijklmnopqrstuvwxyz"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
static std::mt19937 generator{std::random_device{}()};
static std::uniform_int_distribution<std::size_t> pick(0, std::size(characters) - 1);
QString string;
string.reserve(size);
std::size_t index = 0;
std::generate_n(std::back_inserter(string), size, [&]() {
return characters[pick(generator)];
if (index >= std::size(characters))
index = 0;
return characters[index++];
});
return string;
@@ -646,7 +646,7 @@ INSTANTIATE_TEST_SUITE_P(SmallString, FromQString, testing::Range<qsizetype>(0,
TEST_P(FromQString, from_qstring)
{
const QString qStringText = randomString(size);
const QString qStringText = exampleString(size);
auto text = SmallString(qStringText);