test: expand gtest coverage for common/core utilities
Add unit tests for: - CommandLineParser, Debug handler, Decibel, Digit, JobTime, FFmpegUtils - Core StringUtils, Timecode, TimeRange, Bezier, Color - Extend Frame tests to cover pixel access, interlace, conversion Coverage improvements (app + ext/core): - commandlineparser.cpp: 0% -> 93% - debug.cpp: 0% -> 85% - decibel.h: 25% -> 88% - digit.h: 0% -> 100% - ffmpegutils.cpp: 29% -> 90% - frame.cpp: 53% -> 97% - bezier.cpp: 16% -> 98% - color.cpp: 13% -> 71% - Overall line coverage: 17% -> 19%
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "common/decibel.h"
|
||||
|
||||
TEST(CommonDecibel, FromLinearZeroReturnsMinimum)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::fromLinear(0.0), olive::Decibel::MINIMUM);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, FromLinearOneReturnsZero)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::fromLinear(1.0), 0.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, FromLinearTenReturnsTwenty)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::fromLinear(10.0), 20.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, ToLinearZeroReturnsOne)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::toLinear(0.0), 1.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, ToLinearMinimumReturnsZero)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::toLinear(olive::Decibel::MINIMUM), 0.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, ToLinearTwentyReturnsTen)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::toLinear(20.0), 10.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, FromLogarithmicAtEdges)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::fromLogarithmic(0.0),
|
||||
olive::Decibel::MINIMUM);
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::fromLogarithmic(1.0), 0.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, ToLogarithmicAtEdges)
|
||||
{
|
||||
EXPECT_DOUBLE_EQ(olive::Decibel::toLogarithmic(0.0), 1.0);
|
||||
}
|
||||
|
||||
TEST(CommonDecibel, LinearLogarithmicRoundTrip)
|
||||
{
|
||||
EXPECT_NEAR(olive::Decibel::LogarithmicToLinear(
|
||||
olive::Decibel::LinearToLogarithmic(0.5)),
|
||||
0.5, 1e-6);
|
||||
}
|
||||
Reference in New Issue
Block a user