TEST(TStr, SplitLeftOfRightOf) { const TStr Str = "abcde"; TStr LStr, RStr; Str.SplitLeftOfRightOf(LStr, 2, 2, RStr); // basic ASSERT_EQ(LStr, "ab"); ASSERT_EQ(RStr, "de"); // edge cases Str.SplitLeftOfRightOf(LStr, 0, Str.Len()-1, RStr); ASSERT_EQ(LStr, ""); ASSERT_EQ(RStr, ""); // exceptions ASSERT_ANY_THROW(Str.SplitLeftOfRightOf(LStr, 4,3, RStr)); ASSERT_ANY_THROW(Str.SplitLeftOfRightOf(LStr, -1,3, RStr)); ASSERT_ANY_THROW(Str.SplitLeftOfRightOf(LStr, 0,Str.Len(), RStr)); }