import 'package:flutter_test/flutter_test.dart'; import 'package:emergency/models/country.dart'; import 'package:emergency/models/emergency_type.dart'; void main() { group('Country.fromJson', () { test('parst ein Land mit mehreren Notrufnummern korrekt', () { final country = Country.fromJson('DE', { 'name_en': 'Germany', 'name_de': 'Deutschland', 'flag': 'πŸ‡©πŸ‡ͺ', 'numbers': [ { 'type': 'general', 'number': '112', 'label_de': 'Notruf', 'label_en': 'Emergency', }, { 'type': 'police', 'number': '110', 'label_de': 'Polizei', 'label_en': 'Police', }, ], }); expect(country.isoCode, 'DE'); expect(country.nameDe, 'Deutschland'); expect(country.nameEn, 'Germany'); expect(country.flag, 'πŸ‡©πŸ‡ͺ'); expect(country.numbers, hasLength(2)); expect(country.numbers[0].type, EmergencyType.general); expect(country.numbers[1].type, EmergencyType.police); }); test('parst ein Land mit nur einer Notrufnummer korrekt', () { final country = Country.fromJson('US', { 'name_en': 'United States', 'name_de': 'Vereinigte Staaten', 'flag': 'πŸ‡ΊπŸ‡Έ', 'numbers': [ { 'type': 'general', 'number': '911', 'label_de': 'Notruf', 'label_en': 'Emergency', }, ], }); expect(country.numbers, hasLength(1)); expect(country.numbers.single.number, '911'); }); }); }