
1. Интерфейс
1.1. Панель выбора адреса
1.1.1. Поле "Откуда"
1.1.1.1. Буквы русского алфавита
1.1.1.2. Цифры
1.1.1.3. Пробел
1.1.1.4. Тире
1.1.1.5. Точка
1.1.1.6. Запятая
1.1.1.7. Количество символов
1.1.1.7.1. Меньше 1
1.1.1.7.2. От 1 до 50
1.1.1.7.3. Больше 50
1.1.2. Поле "Куда"
1.1.2.1. Буквы русского алфавита
1.1.2.2. Цифры
1.1.2.3. Пробел
1.1.2.4. Тире
1.1.2.5. Точка
1.1.2.6. Запятая
1.1.2.7. Количество символов
1.1.2.7.1. Меньше 1
1.1.2.7.2. От 1 до 50
1.1.2.7.3. Больше 50
1.2. Панель выбора времени
1.2.1. Поле "Часы"
1.2.1.1. Целые числа
1.2.1.1.1. Количество символов
1.2.2. Поле "Минуты"
1.2.2.1. Целые числа
1.3. Панель выбора вида транспорта и режима
1.3.1. Панель выбора вида транспорта
1.3.1.1. Свой автомобиль
1.3.1.2. Такси
1.3.1.3. Самокат
1.3.1.4. Велосипед
1.3.1.5. Пешком
1.3.1.6. Каршеринг
1.3.2. Панель выбора вида режима
1.3.2.1. Режимы маршрута «Свой»
1.3.2.2. Режимы маршрута «Оптимальный»
1.3.2.3. Режимы маршрута «Быстрый »
1.3.3. Кнопка заказа+сумма+время
2. Логика
2.1. Проверка правильности ввода данных в поля
2.1.1. Поле ввода часов
2.1.1.1. заполнено корректно
2.1.1.1.1. Указание часов
2.1.1.2. заполнено некорректно
2.1.1.2.1. При некорректном вводе подсвечивается красным, ошибка «Вы ввели некорректное время»
2.1.2. Поле ввода минут
2.1.2.1. заполнено корректно
2.1.2.1.1. Указание минут
2.1.2.2. заполнено некорректно
2.1.2.2.1. При некорректном вводе подсвечивается красным, ошибка «Вы ввели некорректное время»
2.1.3. Поле ввода адреса
2.1.3.1. заполнено корректно
2.1.3.1.1. На карте отображаются точки А и В
2.1.3.2. заполнено некорректно
2.1.3.2.1. При некорректном вводе подсвечивается красным, ошибка "Вы ввели некорректный адрес".
2.2. Выбор вида транспорта и режима
2.2.1. Если выбран режим Оптимальный и Быстрый - выбрать транспорт в этих режимах нельзя — панель видов транспорта неактивна.
2.2.2. Если выбрать режим «Свой», панель видов транспорта активна — можно переключать. Под каждый вид транспорта строится маршрут; рассчитывается время и стоимость поездки
2.3. Расчёт времени и стоимости
2.3.1. Система получает данные о начале поездки, точке А и точке В. После этого рассчитывает продолжительность и стоимость поездки по определённому алгоритму