воскресенье, 10 августа 2014 г.

Задачка по фиксанию проваленного юнит-теста

Есть юнит тест:


BOOST_AUTO_TEST_CASE(testEscapeSequenceWithAsciiAndOneNonAscii)
{
    unsigned char bytes[] = { '.', 't', 'e', 0x0, 'x', 't' };

    size_t len = sizeof(bytes) / sizeof(*bytes);
    BOOST_ASSERT(StringUtils::escape_sequence(bytes, len) == std::string(".te\\x0xt"));
}
В этом кейсе применяется escape_sequence(), которая переданный массив байт конвертирует в строку точно также как в Python 3.3 тип 'bytes' конвертируется в тип 'str'.

Вопрос: Что неправильно в этом тесте и как его надо править чтобы он проходил?



Ответ(base64.ru): 0JIg0YHRgtGA0L7QutC1IHN0ZDo6c3RyaW5nKCIudGVcXHgweHQiKSDQvdC10L/RgNCw0LLQuNC70YzQvdC+INC30LDQtNCw0L0gMHgwLiDQktC80LXRgdGC0L4gXFx4MCDQvdCw0LTQviDQv9C40YHQsNGC0YwgXFx4MDAuINC4INGC0L7Qs9C+INC/0YDQsNCy0LjQu9GM0L3QviDQsdGD0LTQtdGCIHN0ZDo6c3RyaW5nKCIudGVcXHgwMHh0Iik=

Комментариев нет: