Задача 3: въпроси

  1. Poly.new трябва ли да може да работи във този си вид, т.е. без аргумент пак да създава нулев полином?
    И find съвсем като истинския find ли да работи – като му се подава нещо и ако не се намери елемент то се оценява и се връща оцененото. Или винаги е nil?

    Провокирано от теста на Димитър :)

    Публикувано преди повече от 4 години
  2. Мда, като истинския find.

    Публикувано преди повече от 4 години
  3. Вече беше зададен този въпрос, но така и не получи нормален отговор. Какво трябва да са Poly.new.to_s, Poly.new({}).to_s, Poly.new([]).to_s — “0” или ""?

    Публикувано преди повече от 4 години
  4. Грешна тема, съжалявам

    Благодаря за тестовете… хванаха ми бая грешки, явно не ме бива в писане на юнит-тестове.
    Мисля че в миск теста може да добавите:
    b = [1,2]
    pol2 = Poly.new(b)
    pol2[100_] = 5
    assert_equal( [1,2], b )

    … за да се тества и конструйрането от списък за този проблем.

    Публикувано преди повече от 4 години
  5. Като гледам всичко изписано за задачата, да предполагам, че полиномът трябва да работи само с цели коефициенти ли?

    Публикувано преди повече от 4 години
  6. Ако ти работи с не-цели пробвай:

    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 години
  7. Възможно е. Т.е., абсолютно нищо не ми пречи да напиша такъв тест.

    Дали аз или Ники ще го направим, оставяме на вас да прецените :)

    Публикувано преди повече от 4 години
  8. Добре, ако има нещо от рода на Poly.new({1 => "larodi"}) в тестовете, какво трябва да направи програмата – да хвърли ексепшън още в конструктора (което ми звучи по-добре от larodix)?
    Poly.new([1,2,3])[-1000] трябва да върне nil или 0 или да хвърли ексепшън?

    Публикувано преди повече от 4 години
  9. Според мен Стефан намекна, че няма да има такива тестове. Пък и е логично, все пак в условието никъде не се споманава за невалидни входни данни.

    Публикувано преди повече от 4 години
  10. Да, параноята ме е подгонила о_0

    Публикувано преди повече от 4 години
  11. тест за

    Poly.new.to_s == '' # '0'

    няма да има.
    Истината е някъде там :)

    Публикувано преди повече от 4 години
  12. Прав е Шай-Хулуд. Няма да има такъв тест :)

    Публикувано преди повече от 4 години

Нов отговор

Трябва да сте вътре за да отговаряте.