// Copyright 2016, University of Freiburg,
// Chair of Algorithms and Data Structures.
// Author: Hannah Bast <bast@cs.uni-freiburg.de>.
#include <gtest/gtest.h>
#include "./Array.h"
// _____________________________________________________________________________
TEST(ArrayTest, ArrayInt) {
int array[3] = { 1, 2, 3 };
Array<int> A(array, 3);
ASSERT_EQ(3, A._size);
ASSERT_EQ(1, A.get(0));
ASSERT_EQ(2, A.get(1));
ASSERT_EQ(3, A.get(2));
}
// _____________________________________________________________________________
TEST(ArrayTest, ArrayFloat) {
float array[3] = { 1.1, 2.2, 13.7 };
Array<float> A(array, 3);
ASSERT_EQ(3, A._size);
ASSERT_FLOAT_EQ(1.1, A.get(0));
ASSERT_FLOAT_EQ(2.2, A.get(1));
ASSERT_FLOAT_EQ(13.7, A.get(2));
}
// _____________________________________________________________________________
TEST(ArrayTest, ArrayBool) {
bool array[5] = { true, false, true, true, false };
Array<bool> A(array, 5);
ASSERT_EQ(5, A._size);
ASSERT_TRUE(A.get(0));
ASSERT_FALSE(A.get(1));
ASSERT_TRUE(A.get(2));
ASSERT_TRUE(A.get(3));
ASSERT_FALSE(A.get(4));
}
// OLD NON-TEMPLATED CODE
/*
// _____________________________________________________________________________
TEST(ArrayTest, ArrayInt) {
int array[3] = { 1, 2, 3 };
ArrayInt A(array, 3);
ASSERT_EQ(3, A._size);
ASSERT_EQ(1, A.get(0));
ASSERT_EQ(2, A.get(1));
ASSERT_EQ(3, A.get(2));
}
// _____________________________________________________________________________
TEST(ArrayTest, ArrayFloat) {
float array[3] = { 1.1, 2.2, 13.7 };
ArrayFloat A(array, 3);
ASSERT_EQ(3, A._size);
ASSERT_FLOAT_EQ(1.1, A.get(0));
ASSERT_FLOAT_EQ(2.2, A.get(1));
ASSERT_FLOAT_EQ(13.7, A.get(2));
}
*/