Задача 3: въпроси
-
Poly.new трябва ли да може да работи във този си вид, т.е. без аргумент пак да създава нулев полином?
И find съвсем като истинския find ли да работи – като му се подава нещо и ако не се намери елемент то се оценява и се връща оцененото. Или винаги е nil?Провокирано от теста на Димитър :)
Публикувано преди повече от 4 години -
Мда, като истинския
find
.Публикувано преди повече от 4 години -
Вече беше зададен този въпрос, но така и не получи нормален отговор. Какво трябва да са Poly.new.to_s, Poly.new({}).to_s, Poly.new([]).to_s — “0” или ""?
Публикувано преди повече от 4 години -
Грешна тема, съжалявам
Благодаря за тестовете… хванаха ми бая грешки, явно не ме бива в писане на юнит-тестове.
Мисля че в миск теста може да добавите:
b = [1,2]
pol2 = Poly.new(b)
pol2[100_] = 5
assert_equal( [1,2], b )… за да се тества и конструйрането от списък за този проблем.
Публикувано преди повече от 4 години -
Като гледам всичко изписано за задачата, да предполагам, че полиномът трябва да работи само с цели коефициенти ли?
Публикувано преди повече от 4 години -
Ако ти работи с не-цели пробвай:
p Poly.new([0.3]) - Poly.new([0.2]) == Poly.new([0.1])
:)
И възможно ли е да има тестове от сорта на:
assert Poly.new() [-1] == 0 assert_equal 'larodix', Poly.new({1 => "larodi"}).to_s
Публикувано преди повече от 4 години -
Възможно е. Т.е., абсолютно нищо не ми пречи да напиша такъв тест.
Дали аз или Ники ще го направим, оставяме на вас да прецените :)
Публикувано преди повече от 4 години -
Добре, ако има нещо от рода на Poly.new({1 => "larodi"}) в тестовете, какво трябва да направи програмата – да хвърли ексепшън още в конструктора (което ми звучи по-добре от larodix)?
Poly.new([1,2,3])[-1000] трябва да върне nil или 0 или да хвърли ексепшън?Публикувано преди повече от 4 години -
Според мен Стефан намекна, че няма да има такива тестове. Пък и е логично, все пак в условието никъде не се споманава за невалидни входни данни.
Публикувано преди повече от 4 години -
Да, параноята ме е подгонила о_0
Публикувано преди повече от 4 години -
тест за
Poly.new.to_s == '' # '0'
няма да има.
Истината е някъде там :)Публикувано преди повече от 4 години -
Прав е Шай-Хулуд. Няма да има такъв тест :)
Публикувано преди повече от 4 години
Нов отговор
Трябва да сте вътре за да отговаряте.