/
Xakka
/
CPP2
Обзор
Документация
Войти
/
Xakka
/
CPP2
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/tests/test_vector.cpp
106 строк
3 KB
moshedur
master: release 1.0
04 янв 2025, 23:35
04 янв 2025, 23:35
1c45f0a
Код
Авторство
О чём код?
#include "test_s21.h" class test_vector : public testing::Test { public: }; // Vector Element access TEST(test_vector, test_vector_1) { s21::s21_vector<int> vec; vec[1] = 11; ASSERT_EQ(vec[1], 11); } TEST(test_vector, test_vector_2) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.at(3), 4); } TEST(test_vector, test_vector_3) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.at(3) = 12, 12); } TEST(test_vector, test_vector_5) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(*vec.data(), 1); } TEST(test_vector, test_vector_6) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.front(), 1); } TEST(test_vector, test_vector_7) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.back(), 5); } // Vector Capacity TEST(test_vector, test_vector_8) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.empty(), 0); } TEST(test_vector, test_vector_9) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.size(), 5); } TEST(test_vector, test_vector_10) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ((vec.max_size() > 0), 1); } TEST(test_vector, test_vector_11) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; s21::s21_vector<int> vec2{1, 2, 3, 4, 5}; vec2.reserve(55); for (int x = 0; x < vec2.size(); x++) { ASSERT_EQ(vec2[x], vec[x]); } ASSERT_EQ(vec2.capacity(), 55); ASSERT_EQ(vec2.size(), 5); } TEST(test_vector, test_vector_12) { s21::s21_vector<int> vec{1, 2, 3, 4, 5}; ASSERT_EQ(vec.capacity(), 5); } TEST(test_vector, test_vector_13) { s21::s21_vector<int> reference(5); reference[0] = 11; reference.reserve(14); reference.shrink_to_fit(); ASSERT_EQ(reference.capacity(), 5); ASSERT_EQ(reference[0], 11); } // Constructors TEST(test_vector, test_vector_14) { s21::s21_vector<int> reference(5); s21::s21_vector<int> vec = reference; ASSERT_EQ(reference.capacity(), vec.capacity()); ASSERT_EQ(reference.size(), vec.size()); } TEST(test_vector, test_vector_15) { s21::s21_vector<int> reference(5); s21::s21_vector<int> reference2(5); s21::s21_vector<int> vec = std::move(reference); ASSERT_EQ(reference2.capacity(), vec.capacity()); ASSERT_EQ(reference2.size(), vec.size()); } TEST(test_vector, test_vector_16) { s21::s21_vector<int> reference{1, 2, 3}; s21::s21_vector<int> result{2, 3, 4}; s21::s21_vector<int> vec{2, 3, 4}; reference = std::move(vec); for (int x = 0; x < reference.size(); x++) { ASSERT_EQ(reference[x], result[x]); } } // Vector Modifiers