Глоссарий
МО - обычный маршрут. Маршрут в конфигурации которого не указано поле role
либо не является одним из значений 'login' | 'modal' | '404'
МОК - МО, но в url
которого есть квери параметры. Пример: /book?page=3
ММ - маршрут-модалка. Маршрут в конфигурации которого есть поле role='modal'
ММК - ММ, но в url
которого есть квери параметры. Пример: /book?page=3
НН - нажатие на системную кнопку "Назад" в браузере
--> - переход на маршрут. Пример: --> МО следует читать как "переход на обычный маршрут"
|--> - начальная загрузка. Аналог перезагрузки страницы.
+ - показывает последовательность действий. Пример: |--> МО + --> ММ + НН следует читать как "Загрузка страницы на обычном маршруте, затем переход на маршрут-модалку, затем нажатие на системную кнопку 'назад' в браузере"
x - закрытие модального окна
Тест кейсы
- |--> МО
- |--> МО + --> ММ + НН
- |--> МО + --> ММ + x
- |--> МО + --> ММК + НН
- |--> МО + --> ММК + x
- |--> МОК
- |--> МОК + --> ММ + НН
- |--> МОК + --> ММК + НН
- |--> МОК + --> ММ + x
- |--> ММ
- |--> ММ + x
- |--> ММ + --> МО + НН
- |--> ММК + --> МО + НН
Примеры некорректной работы
- |--> МО + --> ММ + x
/book/kray-rodnoy/chapter_2
--> /book/kray-rodnoy/chapter_2/dictionary/1
+ x = /book/kray-rodnoy/chapter_2?articleId=1
- |--> МО + --> ММК + x
/book/kray-rodnoy/chapter_2
--> /book/kray-rodnoy/chapter_2/audio-text?audioId=2
+ x = /book/kray-rodnoy/chapter_2?audioId=2
- |--> МОК + --> ММ + x
/book/kray-rodnoy/dictionary?chapterId=2
--> /book/kray-rodnoy/dictionary/1
+ x = /book/kray-rodnoy/dictionary?articleId=1
Некорректная работа заключается в том, что после закрытия ММ либо ММК в родительский маршрут попадают ненужные квери параметры либо удаляются нужные квери параметры и добавляются ненужные. Исправление может сказываться на других тест кейсах, поэтому после исправления некорректной работы крайне желательно проверить пройтись по всем тест кейсам и убедиться в корректности работы(желательно тестами).
Дополнительно
Связанный PR. В рамках этого MR было сделано исправление, которое сказывается на работе других тест кейсов. А именно стали некорректно работать пункты: 12, 13