xref: /openbmc/bmcweb/test/include/ossl_random.cpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
32c6ffdb0SEd Tanous #include "ossl_random.hpp"
42c6ffdb0SEd Tanous 
5478b7adfSEd Tanous #include <gmock/gmock.h>
6478b7adfSEd Tanous #include <gtest/gtest.h>
72c6ffdb0SEd Tanous 
82c6ffdb0SEd Tanous namespace
92c6ffdb0SEd Tanous {
102c6ffdb0SEd Tanous 
11b7f3a82bSEd Tanous using testing::IsEmpty;
122c6ffdb0SEd Tanous using testing::MatchesRegex;
132c6ffdb0SEd Tanous 
TEST(Bmcweb,GetRandomUUID)142c6ffdb0SEd Tanous TEST(Bmcweb, GetRandomUUID)
152c6ffdb0SEd Tanous {
162c6ffdb0SEd Tanous     using bmcweb::getRandomUUID;
172c6ffdb0SEd Tanous     // 78e96a4b-62fe-48d8-ac09-7f75a94671e0
182c6ffdb0SEd Tanous     EXPECT_THAT(
192c6ffdb0SEd Tanous         getRandomUUID(),
202c6ffdb0SEd Tanous         MatchesRegex(
212c6ffdb0SEd Tanous             "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$"));
222c6ffdb0SEd Tanous }
232c6ffdb0SEd Tanous 
TEST(Bmcweb,GetRandomIdOfLength)24b7f3a82bSEd Tanous TEST(Bmcweb, GetRandomIdOfLength)
25b7f3a82bSEd Tanous {
26b7f3a82bSEd Tanous     using bmcweb::getRandomIdOfLength;
27b7f3a82bSEd Tanous     EXPECT_THAT(getRandomIdOfLength(1), MatchesRegex("^[a-zA-Z0-9]$"));
28b7f3a82bSEd Tanous     EXPECT_THAT(getRandomIdOfLength(10), MatchesRegex("^[a-zA-Z0-9]{10}$"));
29b7f3a82bSEd Tanous     EXPECT_THAT(getRandomIdOfLength(0), IsEmpty());
30b7f3a82bSEd Tanous }
31b7f3a82bSEd Tanous 
322c6ffdb0SEd Tanous } // namespace
33