|
19 | 19 | Поля: `Id`, `FullName`, `Phone`. |
20 | 20 |
|
21 | 21 | - **Rental** — факт аренды велосипеда. |
22 | | - Поля: `Id`, `Bike`, `Renter`, `StartTime`, `DurationHours`, метод `GetTotalPrice()` для расчёта стоимости аренды. |
| 22 | + Поля: `Id`, `Bike`, `Renter`, `StartTime`, `DurationHours` |
23 | 23 |
|
24 | | -- **BikeType (Enum)** — перечисление типов велосипедов (например: `Road`, `Mountain`, `Hybrid`, `BMX`, `Electric`). |
| 24 | +- **BikeType (Enum)** — перечисление типов велосипедов |
25 | 25 |
|
26 | 26 | DataSeeder — это вспомогательный класс, который создаёт тестовые данные. |
| 27 | +RentalFixture — это класс, который один раз создаёт общие тестовые данны и передаёт их во все тесты. |
27 | 28 |
|
28 | 29 |
|
29 | 30 | ### Unit-тесты |
30 | | -- **GetAllSportBikes_ReturnsOnlySportModels()** |
31 | 31 |
|
32 | | -Проверяет, что запрос возвращает только спортивные велосипеды. |
| 32 | +- **ShouldFindAllSportBikes** |
| 33 | +Проверяет, что возвращаются только модели велосипедов типа Sport. |
33 | 34 |
|
34 | | -- **GetTop5ModelsByProfit_ReturnsCorrectOrder()** |
| 35 | +- **ShouldCalculateTop5ModelsByProfit** |
| 36 | +Считает топ-5 моделей по прибыли от аренды (на основе HourlyRate * DurationHours) и проверяет порядок моделей. |
35 | 37 |
|
36 | | -Считает топ-5 моделей по прибыли от аренды (на основе цены * часов). |
37 | | - |
38 | | -- **GetTop5ModelsByDuration_ReturnsCorrectOrder()** |
39 | | - |
40 | | -Считает топ-5 моделей по длительности аренды. |
41 | | - |
42 | | -- **GetMinMaxAverageRentalTime_ReturnsCorrectValues()** |
| 38 | +- **ShouldCalculateTop5ModelsByDuration** |
| 39 | +Считает топ-5 моделей по суммарной длительности аренды и проверяет порядок моделей. |
43 | 40 |
|
| 41 | +- **ShouldFindMinMaxAvgRentalDuration** |
44 | 42 | Вычисляет минимальное, максимальное и среднее время аренды среди всех записей. |
45 | 43 |
|
46 | | -- **GetTotalRentalTimeByType_ReturnsCorrectSum()** |
47 | | - |
48 | | -Считает суммарное время аренды по каждому типу велосипеда. |
| 44 | +- **ShouldSumRentalTimeByBikeType** |
| 45 | +Считает суммарное время аренды по каждому типу велосипеда и проверяет соответствие ожидаемым значениям. |
49 | 46 |
|
50 | | -- **GetTopRentersByCount_ReturnsCorrectClients()** |
| 47 | +- **ShouldFindTopRentersByUsage** |
| 48 | +Определяет топ-3 арендатора по количеству аренд и проверяет их имена. |
51 | 49 |
|
52 | | -Определяет арендаторов, которые чаще всего брали велосипеды в прокат. |
0 commit comments