EXPECT_EQ(expected, actual):
Описание: Проверяет, что значение actual равно ожидаемому значению expected.
int a = 42, b = 42;
EXPECT_EQ(a, b); // Ожидаем, что a == b
EXPECT_NE(expected, actual):
Описание: Проверяет, что значение actual не равно ожидаемому значению expected.
// 2. EXPECT_NE(expected, actual):
// Описание: Проверяет, что значение actual не равно ожидаемому значению expected.
int a = 42, b = 42;
EXPECT_NE(a, b + 1); // Ожидаем, что a != (b + 1)
EXPECT_TRUE(expression):
Описание: Проверяет, что логическое выражение expression истинно.
// 3. EXPECT_TRUE(expression):
// Описание: Проверяет, что логическое выражение expression истинно.
EXPECT_TRUE(a == b); // Ожидаем, что выражение a == b истинно
EXPECT_FALSE(expression):
Описание: Проверяет, что логическое выражение expression ложно.
// 4. EXPECT_FALSE(expression):
// Описание: Проверяет, что логическое выражение expression ложно.
EXPECT_FALSE(a != b); // Ожидаем, что выражение a != b ложно
EXPECT_LT(val1, val2):
Описание: Проверяет, что значение val1 < val2.
// 5. EXPECT_LT(val1, val2):
// Описание: Проверяет, что значение val1 меньше значения val2.
int x = 5, y = 10;
EXPECT_LT(x, y); // Ожидаем, что x меньше y
EXPECT_GT(val1, val2):
Описание: Проверяет, что значение val1 > val2.
// 6. EXPECT_GT(val1, val2):
// Описание: Проверяет, что значение val1 больше значения val2.
EXPECT_GT(y, x); // Ожидаем, что y больше x
EXPECT_LE(val1, val2):
Описание: Проверяет, что значение val1 <= val2.
// 7. EXPECT_LE(val1, val2):
// Описание: Проверяет, что значение val1 меньше или равно значению val2.
EXPECT_LE(x, y); // Ожидаем, что x меньше или равно y
EXPECT_GE(val1, val2):
Описание: Проверяет, что значение val1 >= val2.
// 8. EXPECT_GE(val1, val2):
// Описание: Проверяет, что значение val1 больше или равно значению val2.
EXPECT_GE(y, x); // Ожидаем, что y больше или равно x
EXPECT_STREQ(expected, actual):
Описание: Проверяет, что логическое выражение expected и actual идентичны.
// 9. EXPECT_STREQ(expected, actual):
// Описание: Проверяет, что строки expected и actual идентичны.
std::string str1 = "hello";
std::string str2 = "Hello";
EXPECT_STREQ(str1.c_str(), str2.c_str()); // Ожидаем, что строки str1 и str2 идентичны
EXPECT_STRNE(expected, actual):
Описание: Проверяет, что логическое выражение expected и actual НЕ идентичны.
// 10. EXPECT_STRNE(str1, str2):
// Описание: Проверяет, что строки str1 и str2 не идентичны.
EXPECT_STRNE(str1.c_str(), str2.c_str()); // Ожидаем, что строки str1 и str2 не идентичны
EXPECT_STRCASEEQ(expected, actual):
Описание: Проверяет, что логическое выражение expected и actual идентичны БЕЗ учета регистра.
// 11. EXPECT_STRCASEEQ(expected, actual):
// Описание: Проверяет, что строки expected и actual идентичны без учета регистра.
EXPECT_STRCASEEQ("hello", str1.c_str()); // Ожидаем, что строки "hello" и str1 идентичны без учета регистра
EXPECT_STRCASENE(expected, actual):
Описание: Проверяет, что логическое выражение expected и actual идентичны БЕЗ учета регистра.
// 12. EXPECT_STRCASENE(str1, str2):
// Описание: Проверяет, что строки str1 и str2 не идентичны без учета регистра.
EXPECT_STRCASENE(str1.c_str(), str2.c_str()); // Ожидаем, что строки str1 и str2 не идентичны без учета регистра
общий код
#include "gtest/gtest.h"
// Пример 1: Проверка равенства
TEST(ExpectExamples, Equality) {
int a = 42;
int b = 42;
// EXPECT_EQ - ожидается, что a равно b, иначе продолжает выполнение теста
EXPECT_EQ(a, b);
// EXPECT_NE - ожидается, что a не равно b + 1, иначе продолжает выполнение теста
EXPECT_NE(a, b + 1);
// EXPECT_TRUE - ожидается, что выражение a == b истинно, иначе продолжает выполнение теста
EXPECT_TRUE(a == b);
// EXPECT_FALSE - ожидается, что выражение a != b ложно, иначе продолжает выполнение теста
EXPECT_FALSE(a != b);
}
// Пример 2: Проверка неравенства
TEST(ExpectExamples, Inequality) {
int x = 5;
int y = 10;
// EXPECT_LT - ожидается, что x меньше y, иначе продолжает выполнение теста
EXPECT_LT(x, y);
// EXPECT_GT - ожидается, что y больше x, иначе продолжает выполнение теста
EXPECT_GT(y, x);
// EXPECT_LE - ожидается, что x меньше или равно y, иначе продолжает выполнение теста
EXPECT_LE(x, y);
// EXPECT_GE - ожидается, что y больше или равно x, иначе продолжает выполнение теста
EXPECT_GE(y, x);
}
// Пример 3: Проверка для строк
TEST(ExpectExamples, StringComparison) {
std::string str1 = "Hello";
std::string str2 = "World";
// EXPECT_STREQ - ожидается, что строки "Hello" и str1 совпадают, иначе продолжает выполнение теста
EXPECT_STREQ("Hello", str1.c_str());
// EXPECT_STRNE - ожидается, что строки str1 и str2 не совпадают, иначе продолжает выполнение теста
EXPECT_STRNE(str1.c_str(), str2.c_str());
// EXPECT_STRCASEEQ - ожидается, что строки "hello" и str1 совпадают без учета регистра, иначе продолжает выполнение теста
EXPECT_STRCASEEQ("hello", str1.c_str());
// EXPECT_STRCASENE - ожидается, что строки str1 и str2 не совпадают без учета регистра, иначе продолжает выполнение теста
EXPECT_STRCASENE(str1.c_str(), str2.c_str());
}
// Пример 4: Проверка для контейнеров
TEST(ExpectExamples, ContainerComparison) {
std::vector<int> vec1 = {1, 2, 3};
std::vector<int> vec2 = {1, 2, 3};
// EXPECT_EQ для контейнеров - ожидается, что vec1 и vec2 равны, иначе продолжает выполнение теста
EXPECT_EQ(vec1, vec2);
// EXPECT_NE для контейнеров - ожидается, что vec1 и {3, 2, 1} не равны, иначе продолжает выполнение теста
EXPECT_NE(vec1, std::vector<int>{3, 2, 1});
}