Пример #1
0
//--------------------------------------------------------------------------------------------------
/// 
//--------------------------------------------------------------------------------------------------
TEST(ArrayTest, MinMaxFloat)
{
    FloatArray a;

    // Test empty arrays
    EXPECT_FLOAT_EQ(std::numeric_limits<float>::max(), a.min());
    EXPECT_FLOAT_EQ(std::numeric_limits<float>::min(), a.max());

    a.reserve(5);
    a.add(1.0f);
    a.add(-3.3f);
    a.add(123.5f);
    a.add(999.9f);
    a.add(-2.3f);

    float min = a.min();
    float max = a.max();

    EXPECT_FLOAT_EQ(-3.3f, min);
    EXPECT_FLOAT_EQ(999.9f, max);

    size_t minIdx = 0;
    size_t maxIdx = 0;

    a.min(&minIdx);
    a.max(&maxIdx);

    EXPECT_EQ(1, minIdx);
    EXPECT_EQ(3, maxIdx);
}