Здарейте, не разбрах repo.commit("mnogo qki raboti") трябва ли да има метод result или не трябва?
В условието пише само за message!!!
Пета задача
@Влади, в тестовете ти за checkout се проверява за съобщение 'Commit blah does not exist.', вместо blah, мисля че трябваше hash-a да се сложи.
Иначе благодаря много, много помагат! :)
@Георги, да, при успех след
commit
, върнатият обект трябва да има методresult
, който да съдържа обект, представляващ последния commit - реално същото, което би ти върналоrepo.head.result
. Т.е.,repo.commit(...).result == repo.head.result
.@Анджелин, няма защо - и аз благодаря за коментарите - оправих си 3-4 пропуска. :D
За твоя, обаче няма да се съглася: интерфейсът е следния:
repo.checkout(hash) #=> message: "Commit hash does not exist."
, в спека понеже няма много смисъл да генерирам SHA1 на стринг, който да подам наcheckout
просто се опитвам да чекаутаcommit
, чиито хеш е 'blah'. Да, не прилича на хеш, но а) не се върши допълнителна работа в спек-а, която може да въведе грешки, които не са свързани със самото решение, б) 100% това няма да сработи и ще даде неуспешен резултат, което се опитваме да тестваме. За да е още по-обстоен теста, може да се добави още един екзампъл, в кaто се прави къмит, и после се опитва да се чекаутне този къмит поmessage
и се очаква грешка.Кои са всички операции, които трябва да върнат обект с метод result?
Не мога да спазя ограниченията за дълбочина на методите, може ли да ми бъде прието решението
@Марк, правилата не позволяват да направим това.
Може ли продъкшън спека? Няма го в репото.
Тестовете и нашето решение са качени в хранилището. Точките ще се забавят още малко :(
@Влади, съгласен съм, оттеглям забележката. (:
Точките от пета задача са live.
Все още много от вас нарушават стиловите конвенции, заложени в ръководството по стил.
Препоръчвам на всеки да си прегледа грешките спрямо нашите тестове и да помисли каква е причината за грешката, след което да прегледа нашето примерно решение, както и да хвърли едно око на решенията на колегите си.
Току-що видях, че имам 0 точки на задачата, като не са изпълнявани никакви тестови върху нея. Ако може да погледнете какво се е случило, защото са изпълнени всички ограничения.
@Пепа, проблемът ти е, че в кода имаше един
require 'binding_of_caller'
, което се оптива да зареди някакъв външен gem, който явно ти си си инсталирала, но това не е част от стандартната Ruby библиотека и го няма там, където пускаме тестовете. Грешката ти си е грешка и не е трябвало да го правиш – в никоя задача не е позволено ползването на външни gem-ове, освен ако не сме го указали изрично. Понякога е допустима употребата на неща от стандартната библиотека на Ruby, които също се зареждат сrequire
, но в твоя случай това не е окей.Въпреки това, правим компромис в твоя случай. Изтрил съм проблемния ред код и съм пуснал тестовете отново. Вече си над нула точки.
Трябва да сте влезли в системата, за да може да отговаряте на теми.