RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
SplineTest.cpp File Reference
#include "common/Spline.h"
#include "adt/Casts.h"
#include "adt/Point.h"
#include <algorithm>
#include <array>
#include <cassert>
#include <cmath>
#include <cstdint>
#include <cstdlib>
#include <iterator>
#include <limits>
#include <ostream>
#include <string>
#include <tuple>
#include <type_traits>
#include <vector>
#include <gtest/gtest.h>
Include dependency graph for SplineTest.cpp:

Go to the source code of this file.

Classes

class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::IdentityTest< T >
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::CalculateStepsEdgesTest
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::CalculateStepsTest< T >
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::ConstantTest< T >
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::AbstractReferenceTest
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::SinReferenceTest< mul, div >
class  rawspeed_test::anonymous_namespace{SplineTest.cpp}::ReferenceTest< Tb >
class  Spline< T >

Namespaces

namespace  rawspeed
namespace  rawspeed_test
namespace  rawspeed_test::anonymous_namespace{SplineTest.cpp}

Typedefs

using rawspeed_test::anonymous_namespace{SplineTest.cpp}::identityType
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::IntegerIdentityTest = IdentityTest<uint16_t>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::DoubleIdentityTest = IdentityTest<double>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::calculateStepsType = std::tuple<int, std::vector<int>>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::DoubleCalculateStepsTest = CalculateStepsTest<double>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::IntegerCalculateStepsTest = CalculateStepsTest<int>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::constantType = std::tuple<int, int>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::IntegerConstantTest = ConstantTest<uint16_t>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::DoubleConstantTest = ConstantTest<double>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::referenceType = std::tuple<int, long double>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::Sin2PiRefTest = ReferenceTest<SinReferenceTest<2, 1>>
using rawspeed_test::anonymous_namespace{SplineTest.cpp}::SinPiRefTest = ReferenceTest<SinReferenceTest<1, 1>>

Functions

::std::ostream & rawspeed::operator<< (::std::ostream &os, const iPoint2D p)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineStaticTest, DefaultIsUshort16)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, AtLeastTwoPoints)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, XIsFullRange)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, YIsLimited)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, XIsStrictlyIncreasing)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, ClampUshort16Min)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (SplineDeathTest, ClampUshort16Max)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (IntegerIdentityTest, IntegerIdentityTest, ::testing::ValuesIn(identityValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerIdentityTest, ValuesAreLinearlyInterpolated)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerIdentityTest, SegmentCoeffients)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (DoubleIdentityTest, DoubleIdentityTest, ::testing::ValuesIn(identityValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleIdentityTest, ValuesAreLinearlyInterpolated)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleIdentityTest, SegmentCoeffients)
template<typename T>
rawspeed_test::anonymous_namespace{SplineTest.cpp}::lerp (T v0, T v1, T t)
template<typename T = int>
requires std::is_arithmetic_v<T>
std::vector< T > rawspeed_test::anonymous_namespace{SplineTest.cpp}::calculateSteps (int numCp)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST (CalculateStepsEdgesTest, IdentityTest)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (CalculateStepsEdgesTest, CalculateStepsEdgesTest, ::testing::Range(0, 254))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (CalculateStepsEdgesTest, Count)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (CalculateStepsEdgesTest, EdgesAreProper)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (CalculateStepsTest, DoubleCalculateStepsTest, ::testing::ValuesIn(calculateStepsValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleCalculateStepsTest, Count)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleCalculateStepsTest, GotExpectedOutput)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (CalculateStepsTest, IntegerCalculateStepsTest, ::testing::ValuesIn(calculateStepsValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerCalculateStepsTest, Count)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerCalculateStepsTest, GotExpectedOutput)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (IntegerConstantTest, IntegerConstantTest, constantValues)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerConstantTest, AllValuesAreEqual)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (IntegerConstantTest, SegmentCoeffients)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (DoubleConstantTest, DoubleConstantTest, constantValues)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleConstantTest, AllValuesAreEqual)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (DoubleConstantTest, SegmentCoeffients)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (Sin2Pi, Sin2PiRefTest, ::testing::ValuesIn(sin2PiRefValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (Sin2PiRefTest, NearlyMatchesReference)
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::INSTANTIATE_TEST_SUITE_P (SinPi, SinPiRefTest, ::testing::ValuesIn(sinPiRefValues))
 rawspeed_test::anonymous_namespace{SplineTest.cpp}::TEST_P (SinPiRefTest, NearlyMatchesReference)

Variables

const identityType rawspeed_test::anonymous_namespace{SplineTest.cpp}::identityValues []
const calculateStepsType rawspeed_test::anonymous_namespace{SplineTest.cpp}::calculateStepsValues []
constexpr auto rawspeed_test::anonymous_namespace{SplineTest.cpp}::NumExtraSteps = 3
const auto rawspeed_test::anonymous_namespace{SplineTest.cpp}::constantValues
const referenceType rawspeed_test::anonymous_namespace{SplineTest.cpp}::sin2PiRefValues []
const referenceType rawspeed_test::anonymous_namespace{SplineTest.cpp}::sinPiRefValues []