#include "gtest/gtest.h" #include "pistringlist.h" using namespace std; TEST(PIStringList_Tests, construct_empty){ PIStringList lis; ASSERT_TRUE(lis.isEmpty()); } TEST(PIStringList_Tests, construct_one_str_length){ PIString str1 = "first string"; PIStringList lis (str1); ASSERT_EQ(lis.length(),1); } TEST(PIStringList_Tests, construct_one_str_data){ PIString str1 = "first string"; PIStringList lis (str1); ASSERT_EQ(str1, lis[0]); } TEST(PIStringList_Tests, construct_one_str_move_length){ PIString str1 = "first string"; PIStringList lis (move(str1)); ASSERT_EQ(lis.length(), 1); } TEST(PIStringList_Tests, construct_one_str_move_data){ PIString str1 = "first string"; PIString str = str1; PIStringList lis (move(str)); ASSERT_EQ(str1, lis[0]); } TEST(PIStringList_Tests, construct_two_str_length){ PIString str1 = "first string"; PIString str2 = "second string"; PIStringList lis (str1, str2); ASSERT_EQ(lis.length(), 2); } TEST(PIStringList_Tests, construct_two_str_data){ PIString str1 = "first string"; PIString str2 = "second string"; PIStringList lis (str1, str2); ASSERT_EQ(str1, lis[0]); ASSERT_EQ(str2, lis[1]); } TEST(PIStringList_Tests, construct_two_str_move_length){ PIString str1 = "first string"; PIString str2 = "second string"; PIStringList lis (move(str1), move(str2)); ASSERT_EQ(lis.length(), 2); } TEST(PIStringList_Tests, construct_two_str_move_data){ PIString str1 = "first string"; PIString str2 = "second string"; PIString str1_res = str1; PIString str2_res = str2; PIStringList lis (move(str1), move(str2)); ASSERT_EQ(str1_res, lis[0]); ASSERT_EQ(lis[1], str2_res); } TEST(PIStringList_Tests, construct_three_str_length){ PIString str1 = "first string"; PIString str2 = "second string"; PIString str3 = "third string"; PIStringList lis (str1, str2, str3); ASSERT_EQ(lis.length(),3); }