forked from eatvio/eatvio_app
52 lines
1.3 KiB
Dart
52 lines
1.3 KiB
Dart
import 'package:eatvio_app/features/create_recipe/models/ingredient.dart';
|
||
import 'package:flutter_test/flutter_test.dart';
|
||
|
||
void main() {
|
||
group('Ingredient', () {
|
||
test('создает Ingredient с правильными значениями', () {
|
||
const ingredient = Ingredient(
|
||
name: 'Apple',
|
||
unit: 'gr',
|
||
portion: '100',
|
||
productId: 1,
|
||
);
|
||
|
||
expect(ingredient.name, 'Apple');
|
||
expect(ingredient.unit, 'gr');
|
||
expect(ingredient.portion, '100');
|
||
expect(ingredient.productId, 1);
|
||
});
|
||
|
||
test('fromJson создает Ingredient из JSON', () {
|
||
final json = {
|
||
'name': 'Apple',
|
||
'unit': 'gr',
|
||
'portion': '100',
|
||
'product_nutritional_id': 1,
|
||
};
|
||
|
||
final ingredient = Ingredient.fromJson(json);
|
||
|
||
expect(ingredient.name, 'Apple');
|
||
expect(ingredient.productId, 1);
|
||
});
|
||
|
||
test('toJson serializes Ingredient correctly', () {
|
||
const ingredient = Ingredient(
|
||
name: 'Apple',
|
||
unit: 'gr',
|
||
portion: '100',
|
||
productId: 1,
|
||
);
|
||
|
||
final json = ingredient.toJson();
|
||
|
||
expect(json['name'], 'Apple');
|
||
expect(json['unit'], 'gr');
|
||
expect(json['portion'], '100');
|
||
expect(json['product_nutritional_id'], 1);
|
||
});
|
||
});
|
||
}
|
||
|