Ъм само на мен ли ми се струва, че в теста test_o_wins накрая трябва да е self.assertEqual('O wins!', v.game_status()) (:
Четвърта задача
Не е само на теб - Иван го добави този ред, но си призна че е е copy-paste-нал от миналия тест, когато Мария го поправи. Тоест права си -
v
е. Сигурно скоро ще бъде ъпдейтнато@Людмил
Ако имаш game_status различен от 'Game in progress.' не би следвало изобщо да се опитваш да обработваш следващи ходове.
Т.е. прави "нищо".
Ако в играта има вече победител би трябвало да можеш да попълваш празните квадратчета, но не трябва да можеш да променяш резултата.
"Би трябвало да можеш да попълваш празните квадратчета" на мен поне ми звучи като обработване на следващ ход.
Също така бих казал, че да не прави нищо след като играта е приключила ми звучи като доста по-логично действие отколкото да дава възможност за попълване на останалите квадратчета.
Постарах се да коментирам решенията предадени до този момент.
Има решения, които се нуждаят от спешна помощ. Ако видите употребата на удивителни знаци в коментара ми или изрично да съм ви казал да прочетете
PEP8
или да пуснетеsample_test.py
- вашето е едно от тях.Ако съм коментирал няколко аспекта на решението ви. Важността им не е свързана с реда, в който съм ги описал.
Здравейте,
Искам да попитам, как е правилно да се постъпи, когато има exception. Тестовете на Симеон минават само ако не съм си третирал exception а, което ми се струва странно, но при cache ване дава грешка, че изобщо не е бил хварлен. Може ли някакво пояснение как трябва да е?
Здрасти,
Понеже сега не имплементираш цяла игра а само клас който моделира правилата, Exception-ите не трябва да се хващат. На практика по този начин даваш информация на програмиста който ще използва класа ти че нещо бърка. Този програмист може да си ти след някоя друга седмица :-)
Ако правехме цялата щяхме да имаме друг клас който използва този и хваща изключенията за да ги обработва и скрива от крайните потребители -- играчите.
А за всички хора които ползват регулярни изрази за валидация на координати и прочее -- помислете си какво ще стане ако ви бъде подадено нещо което не е
str
.Не съм ви обещавал че входът ще бъде валиден :-)
Трябва да сте влезли в системата, за да може да отговаряте на теми.