323 buf1, sizeof(buf1), "%s: %s::%s", |
324 buf1, sizeof(buf1), "%s: %s::%s", |
324 bmtag, |
325 bmtag, |
325 QTestResult::currentTestObjectName(), |
326 QTestResult::currentTestObjectName(), |
326 result.context.slotName.toAscii().data()); |
327 result.context.slotName.toAscii().data()); |
327 |
328 |
328 |
|
329 char bufTag[1024]; |
329 char bufTag[1024]; |
330 bufTag[0] = 0; |
330 bufTag[0] = 0; |
331 QByteArray tag = result.context.tag.toAscii(); |
331 QByteArray tag = result.context.tag.toAscii(); |
332 if (tag.isEmpty() == false) { |
332 if (tag.isEmpty() == false) { |
333 QTest::qt_snprintf(bufTag, sizeof(bufTag), ":\"%s\"", tag.data()); |
333 QTest::qt_snprintf(bufTag, sizeof(bufTag), ":\"%s\"", tag.data()); |
339 QTest::qt_snprintf( |
339 QTest::qt_snprintf( |
340 fillFormat, sizeof(fillFormat), ":\n%%%ds", fillLength); |
340 fillFormat, sizeof(fillFormat), ":\n%%%ds", fillLength); |
341 char fill[1024]; |
341 char fill[1024]; |
342 QTest::qt_snprintf(fill, sizeof(fill), fillFormat, ""); |
342 QTest::qt_snprintf(fill, sizeof(fill), fillFormat, ""); |
343 |
343 |
344 |
344 const char * unitText = QTest::benchmarkMetricUnit(result.metric); |
345 QByteArray unitText = QBenchmarkGlobalData::current->measurer->unitText().toAscii(); |
|
346 |
345 |
347 qreal valuePerIteration = qreal(result.value) / qreal(result.iterations); |
346 qreal valuePerIteration = qreal(result.value) / qreal(result.iterations); |
348 char resultBuffer[100] = ""; |
347 char resultBuffer[100] = ""; |
349 formatResult(resultBuffer, 100, valuePerIteration, countSignificantDigits(result.value)); |
348 formatResult(resultBuffer, 100, valuePerIteration, countSignificantDigits(result.value)); |
350 |
349 |
351 QByteArray iterationText = "per iteration"; |
|
352 |
|
353 char buf2[1024]; |
350 char buf2[1024]; |
|
351 QTest::qt_snprintf( |
|
352 buf2, sizeof(buf2), "%s %s", |
|
353 resultBuffer, |
|
354 unitText); |
|
355 |
|
356 char buf2_[1024]; |
|
357 QByteArray iterationText = " per iteration"; |
354 Q_ASSERT(result.iterations > 0); |
358 Q_ASSERT(result.iterations > 0); |
355 QTest::qt_snprintf( |
359 QTest::qt_snprintf( |
356 buf2, sizeof(buf2), "%s %s %s", |
360 buf2_, |
357 resultBuffer, |
361 sizeof(buf2_), "%s", |
358 unitText.data(), |
|
359 iterationText.data()); |
362 iterationText.data()); |
360 |
363 |
361 char buf3[1024]; |
364 char buf3[1024]; |
362 Q_ASSERT(result.iterations > 0); |
365 Q_ASSERT(result.iterations > 0); |
|
366 formatResult(resultBuffer, 100, result.value, countSignificantDigits(result.value)); |
363 QTest::qt_snprintf( |
367 QTest::qt_snprintf( |
364 buf3, sizeof(buf3), " (total: %s, iterations: %d)\n", |
368 buf3, sizeof(buf3), " (total: %s, iterations: %d)", |
365 QByteArray::number(result.value).constData(), // no 64-bit qt_snprintf support |
369 resultBuffer, |
366 result.iterations); |
370 result.iterations); |
367 |
371 |
368 char buf[1024]; |
372 char buf[1024]; |
369 QTest::qt_snprintf(buf, sizeof(buf), "%s%s%s%s%s", buf1, bufTag, fill, buf2, buf3); |
373 |
|
374 if (result.setByMacro) { |
|
375 QTest::qt_snprintf( |
|
376 buf, sizeof(buf), "%s%s%s%s%s%s\n", buf1, bufTag, fill, buf2, buf2_, buf3); |
|
377 } else { |
|
378 QTest::qt_snprintf(buf, sizeof(buf), "%s%s%s%s\n", buf1, bufTag, fill, buf2); |
|
379 } |
|
380 |
370 memcpy(buf, bmtag, strlen(bmtag)); |
381 memcpy(buf, bmtag, strlen(bmtag)); |
371 outputMessage(buf); |
382 outputMessage(buf); |
372 } |
383 } |
373 } |
384 } |
374 |
385 |