forked from eatvio/eatvio_app
feat(recipe): drafts
This commit is contained in:
@@ -438,5 +438,44 @@ void main() {
|
||||
|
||||
expect(cubit.validateAll(), true);
|
||||
});
|
||||
|
||||
// validateForDraft tests
|
||||
test('validateForDraft - возвращает false когда title не задан', () {
|
||||
expect(cubit.validateForDraft(), false);
|
||||
expect(cubit.state.titleValidationError, 'Поле не заполнено');
|
||||
});
|
||||
|
||||
test('validateForDraft - возвращает false когда title слишком короткий', () {
|
||||
cubit.replaceTitle('AB');
|
||||
expect(cubit.validateForDraft(), false);
|
||||
expect(cubit.state.titleValidationError, 'Минимальная длина 3 символа ');
|
||||
});
|
||||
|
||||
test('validateForDraft - возвращает true когда задан только title', () {
|
||||
cubit.replaceTitle('Мой черновик');
|
||||
expect(cubit.validateForDraft(), true);
|
||||
expect(cubit.state.titleValidationError, isNull);
|
||||
});
|
||||
|
||||
test('validateForDraft - сбрасывает ошибки остальных полей', () {
|
||||
// Сначала вызываем validateAll, чтобы появились ошибки
|
||||
cubit.validateAll();
|
||||
expect(cubit.state.descriptionValidationError, isNotNull);
|
||||
expect(cubit.state.imageValidationError, isNotNull);
|
||||
|
||||
// Теперь задаём title и вызываем validateForDraft
|
||||
cubit.replaceTitle('Мой черновик');
|
||||
final result = cubit.validateForDraft();
|
||||
|
||||
expect(result, true);
|
||||
expect(cubit.state.descriptionValidationError, isNull);
|
||||
expect(cubit.state.cookingTimeValidationError, isNull);
|
||||
expect(cubit.state.activeTimeValidationError, isNull);
|
||||
expect(cubit.state.servingsValidationError, isNull);
|
||||
expect(cubit.state.energyPerServingValidationError, isNull);
|
||||
expect(cubit.state.imageValidationError, isNull);
|
||||
expect(cubit.state.stepsValidationError, isNull);
|
||||
expect(cubit.state.ingredientsValidationError, isNull);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user