Skip to content

Develop1#1241

Open
MonikaRS wants to merge 5 commits intoyandex-praktikum:mainfrom
MonikaRS:develop1
Open

Develop1#1241
MonikaRS wants to merge 5 commits intoyandex-praktikum:mainfrom
MonikaRS:develop1

Conversation

@MonikaRS
Copy link

@MonikaRS MonikaRS commented Feb 7, 2026

Подключены библиотеки: JaCoCo, Mockito, JUnit 4

Класс Burger покрыт юнит-тестами

Использованы моки (Mockito)

Использована параметризация (BurgerParameterizedTest)

Покрытие кода 100% достигнуто

MonikaRS added 3 commits February 1, 2026 22:08
- Подключены библиотеки: JUnit 4, Mockito, JaCoCo
- Создан BurgerTest.java с моками и стабами (17 тестов)
- Создан BurgerParameterizedTest.java с параметризацией (6 тестов)
- Покрытие кода 100%
- Все тесты проходят успешно
- Update BurgerTest.java with additional comments
- Improve BurgerParameterizedTest.java
- Update pom.xml with better configuration
- All tests pass with 100% coverage
public void setUp() {
// Создаем моки как локальные переменные
Bun mockBun = mock(Bun.class);
Ingredient mockIngredient1 = mock(Ingredient.class);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. При нейминге не рекомендуется использовать числа (Field2), их еще называют magicNumbers. Очень тяжело поддерживать код с magicNumbers.


burger.removeIngredient(0);

assertEquals(1, burger.ingredients.size());

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Для юнит-тестов придерживаемся подхода: один тест, значит одна проверка. Если очень хочется несколько проверок -- тогда используем softAssertions. Поправь, пожалуйста, во всем коде

}

@Test(expected = IndexOutOfBoundsException.class)
public void testRemoveIngredientWithInvalidIndex() {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Если в тесте не нужна параметризация, то его нужно вынести в отдельный класс

float price = burger.getPrice();
float expectedPrice = (100.0f * 2) + 50.0f + 75.0f;

assertEquals(expectedPrice, price, 0.001);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Для юнит-тестов применим подход: один тест, значит одна проверка. В этом тесте две проверки (Mockito.verify, assertEquals), а должна быть одна. Исправь, пожалуйста, этот момент во всем коде.


# Logs
*.log
logs/

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. Нужно приложить отчет

MonikaRS added 2 commits February 11, 2026 20:39
- 45 unit tests with JUnit 4
- Mockito for mocks and stubs
- Parameterized tests for remove ingredient
- 100% code coverage verified by JaCoCo
- Added test reports to repository
- 45 unit tests with JUnit 4
- Mockito for mocks and stubs
- Parameterized tests for remove ingredient
- 100% code coverage verified by JaCoCo
- Added test reports to repository
- Branch: develop1
private Bun mockBun;

@Mock
private Ingredient mockIngredient1;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛔️Нужно исправить. При нейминге не рекомендуется использовать числа (Field2), их еще называют magicNumbers. Очень тяжело поддерживать код с magicNumbers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants