// Copyright 2015 The Chromium OS Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include <stdio.h> #include <gtest/gtest.h> extern "C" { #include "softvol_curve.h" } namespace { static float ABS_ERROR = 0.0000001; TEST(SoftvolCurveTest, ScalerDecibelConvert) { float scaler; scaler = convert_softvol_scaler_from_dB(-2000); EXPECT_NEAR(scaler, 0.1f, ABS_ERROR); scaler = convert_softvol_scaler_from_dB(-1000); EXPECT_NEAR(scaler, 0.3162277f, ABS_ERROR); scaler = convert_softvol_scaler_from_dB(-4000); EXPECT_NEAR(scaler, 0.01f, ABS_ERROR); scaler = convert_softvol_scaler_from_dB(-3500); EXPECT_NEAR(scaler, 0.0177828f, ABS_ERROR); } } // namespace /* Stubs */ extern "C" { } // extern "C" int main(int argc, char **argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }