forked from eatvio/eatvio_app
56 lines
1.5 KiB
Dart
56 lines
1.5 KiB
Dart
import 'package:eatvio_app/features/profile/models/badge_model.dart';
|
||
import 'package:flutter_test/flutter_test.dart';
|
||
|
||
void main() {
|
||
group('BadgeModel', () {
|
||
test('создает BadgeModel с правильными значениями', () {
|
||
const model = BadgeModel(
|
||
id: 1,
|
||
title: 'Test Badge',
|
||
description: 'Test description',
|
||
image: 'https://example.com/badge.jpg',
|
||
type: 'achievement',
|
||
);
|
||
|
||
expect(model.id, 1);
|
||
expect(model.title, 'Test Badge');
|
||
expect(model.description, 'Test description');
|
||
expect(model.type, 'achievement');
|
||
});
|
||
|
||
test('fromJson создает BadgeModel из JSON', () {
|
||
final json = {
|
||
'id': 1,
|
||
'title': 'Test Badge',
|
||
'description': 'Test description',
|
||
'image': 'https://example.com/badge.jpg',
|
||
'type': 'achievement',
|
||
};
|
||
|
||
final model = BadgeModel.fromJson(json);
|
||
|
||
expect(model.id, 1);
|
||
expect(model.title, 'Test Badge');
|
||
});
|
||
|
||
test('toJson serializes BadgeModel correctly', () {
|
||
const model = BadgeModel(
|
||
id: 1,
|
||
title: 'Test Badge',
|
||
description: 'Test description',
|
||
image: 'https://example.com/badge.jpg',
|
||
type: 'achievement',
|
||
);
|
||
|
||
final json = model.toJson();
|
||
|
||
expect(json['id'], 1);
|
||
expect(json['title'], 'Test Badge');
|
||
expect(json['description'], 'Test description');
|
||
expect(json['image'], 'https://example.com/badge.jpg');
|
||
expect(json['type'], 'achievement');
|
||
});
|
||
});
|
||
}
|
||
|