Switch to U64 Logger Tests (#4262)

* Use U64 for LoggerTests

* Switch `%llu` to PRI_U64

* Add back the `%` before PRI_U64

* clang-format LoggerRules.cpp
This commit is contained in:
Will MacCormack 2025-10-06 15:26:36 -05:00 committed by GitHub
parent e9d7f3ab66
commit 589ed5d437
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 71 additions and 42 deletions

1
.gitignore vendored
View File

@ -26,6 +26,7 @@ RemoteSystemsTempFiles
*.stackdump *.stackdump
Dict Dict
*.core *.core
*.swp
**/coverage/ **/coverage/
*.gcov *.gcov

View File

@ -46,12 +46,16 @@ bool LogGood::precondition(const MockLogging::FakeLogger& truth) {
return truth.s_current != nullptr; return truth.s_current != nullptr;
} }
U64 randomU64() {
return static_cast<U64>(STest::Pick::lowerUpper(0, 0xffffffff)) << 32 | STest::Pick::lowerUpper(0, 0xffffffff);
}
// Log valid messages // Log valid messages
void LogGood::action(MockLogging::FakeLogger& truth) { void LogGood::action(MockLogging::FakeLogger& truth) {
U32 random = STest::Pick::lowerUpper(0, 10); U32 random = STest::Pick::lowerUpper(0, 10);
U32 ra[10]; U64 ra[10];
for (int i = 0; i < 10; ++i) { for (int i = 0; i < 10; ++i) {
ra[i] = STest::Pick::lowerUpper(0, 0xffffffff); ra[i] = randomU64();
} }
Fw::String correct; Fw::String correct;
switch (random) { switch (random) {
@ -60,52 +64,65 @@ void LogGood::action(MockLogging::FakeLogger& truth) {
correct = "No args"; correct = "No args";
break; break;
case 1: case 1:
Fw::Logger::log("One arg: %lu", ra[0]); Fw::Logger::log("One arg: %" PRI_U64, ra[0]);
correct.format("One arg: %lu", ra[0]); correct.format("One arg: %" PRI_U64, ra[0]);
break; break;
case 2: case 2:
Fw::Logger::log("Two arg: %lu %lu", ra[0], ra[1]); Fw::Logger::log("Two arg: %" PRI_U64 " %" PRI_U64, ra[0], ra[1]);
correct.format("Two arg: %lu %lu", ra[0], ra[1]); correct.format("Two arg: %" PRI_U64 " %" PRI_U64, ra[0], ra[1]);
break; break;
case 3: case 3:
Fw::Logger::log("Three arg: %lu %lu %lu", ra[0], ra[1], ra[2]); Fw::Logger::log("Three arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2]);
correct.format("Three arg: %lu %lu %lu", ra[0], ra[1], ra[2]); correct.format("Three arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2]);
break; break;
case 4: case 4:
Fw::Logger::log("Four arg: %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3]); Fw::Logger::log("Four arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2],
correct.format("Four arg: %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3]); ra[3]);
correct.format("Four arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2], ra[3]);
break; break;
case 5: case 5:
Fw::Logger::log("Five arg: %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4]); Fw::Logger::log("Five arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1],
correct.format("Five arg: %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4]); ra[2], ra[3], ra[4]);
correct.format("Five arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1],
ra[2], ra[3], ra[4]);
break; break;
case 6: case 6:
Fw::Logger::log("Six arg: %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]); Fw::Logger::log("Six arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
correct.format("Six arg: %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]); ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]);
correct.format("Six arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]);
break; break;
case 7: case 7:
Fw::Logger::log("Seven arg: %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], Fw::Logger::log("Seven arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
ra[6]); " %" PRI_U64,
correct.format("Seven arg: %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6]);
ra[6]); correct.format("Seven arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6]);
break; break;
case 8: case 8:
Fw::Logger::log("Eight arg: %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], Fw::Logger::log("Eight arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
ra[5], ra[6], ra[7]); " %" PRI_U64 " %" PRI_U64,
correct.format("Eight arg: %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7]);
ra[5], ra[6], ra[7]); correct.format("Eight arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7]);
break; break;
case 9: case 9:
Fw::Logger::log("Nine arg: %lu %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], Fw::Logger::log("Nine arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
ra[5], ra[6], ra[7], ra[8]); " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
correct.format("Nine arg: %lu %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8]);
ra[5], ra[6], ra[7], ra[8]); correct.format("Nine arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8]);
break; break;
case 10: case 10:
Fw::Logger::log("Ten arg: %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], Fw::Logger::log("Ten arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]); " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
correct.format("Ten arg: %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu", ra[0], ra[1], ra[2], ra[3], ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]);
ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]); correct.format("Ten arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]);
break; break;
default: default:
@ -150,9 +167,9 @@ bool LogBad::precondition(const MockLogging::FakeLogger& truth) {
// Log valid messages // Log valid messages
void LogBad::action(MockLogging::FakeLogger& truth) { void LogBad::action(MockLogging::FakeLogger& truth) {
U32 random = STest::Pick::lowerUpper(0, 10); U32 random = STest::Pick::lowerUpper(0, 10);
U32 ra[10]; U64 ra[10];
for (int i = 0; i < 10; ++i) { for (int i = 0; i < 10; ++i) {
ra[i] = STest::Pick::lowerUpper(0, 0xffffffff); ra[i] = randomU64();
} }
switch (random) { switch (random) {
@ -160,34 +177,44 @@ void LogBad::action(MockLogging::FakeLogger& truth) {
Fw::Logger::log("No args"); Fw::Logger::log("No args");
break; break;
case 1: case 1:
Fw::Logger::log("One arg: %lu", ra[0]); Fw::Logger::log("One arg: %" PRI_U64 " %" PRI_U64, ra[0]);
break; break;
case 2: case 2:
Fw::Logger::log("Two arg: %lu", ra[0], ra[1]); Fw::Logger::log("Two arg: %" PRI_U64 " %" PRI_U64, ra[0], ra[1]);
break; break;
case 3: case 3:
Fw::Logger::log("Three arg: %lu", ra[0], ra[1], ra[2]); Fw::Logger::log("Three arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2]);
break; break;
case 4: case 4:
Fw::Logger::log("Four arg: %lu", ra[0], ra[1], ra[2], ra[3]); Fw::Logger::log("Four arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1], ra[2], ra[3]);
break; break;
case 5: case 5:
Fw::Logger::log("Five arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4]); Fw::Logger::log("Five arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64, ra[0], ra[1],
ra[2], ra[3], ra[4]);
break; break;
case 6: case 6:
Fw::Logger::log("Six arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]); Fw::Logger::log("Six arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5]);
break; break;
case 7: case 7:
Fw::Logger::log("Seven arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6]); Fw::Logger::log("Seven arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6]);
break; break;
case 8: case 8:
Fw::Logger::log("Eight arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7]); Fw::Logger::log("Eight arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7]);
break; break;
case 9: case 9:
Fw::Logger::log("Nine arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8]); Fw::Logger::log("Nine arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8]);
break; break;
case 10: case 10:
Fw::Logger::log("Ten arg: %lu", ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]); Fw::Logger::log("Ten arg: %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64
" %" PRI_U64 " %" PRI_U64 " %" PRI_U64 " %" PRI_U64,
ra[0], ra[1], ra[2], ra[3], ra[4], ra[5], ra[6], ra[7], ra[8], ra[9]);
break; break;
default: default:
ASSERT_EQ(0, 1); ASSERT_EQ(0, 1);

View File

@ -64,3 +64,4 @@ urllib3==2.5.0
Werkzeug==3.0.6 Werkzeug==3.0.6
zipp==3.19.1 zipp==3.19.1
zstandard==0.23.0 zstandard==0.23.0
pip