Open alexey-malov opened 8 years ago
Fixed
BOOST_AUTO_TEST_CASE(EncodeNotEmptyString)
{
std::string source = R"(a"bb'c<<d>>e&&&)";
BOOST_CHECK_EQUAL(HtmlEncode(source), "a"bb'c<<d&dt;&dt;e&&&");
};
BOOST_AUTO_TEST_CASE(EncodeEmptyString)
{
std::string source = "";
BOOST_CHECK_EQUAL(HtmlEncode(source), "");
};
тестовые данные должны представлять из себя текст, читаемый человеком точку с запятой после } тест-кейса ставить не нужно. имена тестам лучше дать такие, чтобы они читались как спецификация, описывающая поведение функции
Минутка грамматики replace with vs replace by: http://english.stackexchange.com/questions/151309/replace-with-versus-replace-by
Разработайте на ее основе программу, выполняющую построчное html-кодирование текста, поступающего со стандартного потока ввода, и выводящую результат в стандартный поток вывода.
Твоя же программа кодирует только первую строку текста
При помощи CGetlineIterator можно выполнить данную задачу вызывая HtmlEncode через алгоритм std::transform https://github.com/alexey-malov/oop/blob/master/samples/02-stl-tdd/CustomIterator/main.cpp (вместо copy используй transform с функцией HtmlEncode в качестве трансформирующей функции)
k=0,85
Обработка данных должна быть построчной посмотри пример с кастом итератором, либо сделай через getline