-
На основе проекта необходимо реализовать менеджер Афиши (все фильмы хранятся внутри самого менеджера, без всякого репозитория).
Необходимые методы:
- Добавить фильм в ленту.
- Выдать последние 10 добавленных фильмов* (фильмы выдаются в обратном порядке).
-
Сделать так, чтобы по умолчанию выводилось последние 10 добавленных фильмов, но при создании менеджера можно было указать другое число, чтобы, например, выдавать 5 (а не 10).
-
Написать необходимые автотесты на различные состояния менеджера.
-
Разделить менеджера на менеджера и репозиторий.
В репозитории должны быть следующие методы:
findAll
- возвращает массив всех хранящихся в массиве объектовsave
- добавляет объект в массивfindById
- возвращает объект по идентификатору (либоnull
, если такого объекта нет)removeById
- удаляет объект по идентификатору (если объекта нет, то пусть будет исключение, как на лекции)removeAll
* - полностью вычищает репозиторий
-
Написать автотесты на репозиторий.
-
Обеспечить использование менеджером созданного репозитория.
-
Покрыть менеджера автотестами, используя Mockito для организации моков репозитория.