import 'dart:typed_data'; import 'package:flutter_test/flutter_test.dart'; import 'package:korken_mosaic/project_codec.dart'; void main() { test('MosaicProjectData json roundtrip keeps values', () { final original = MosaicProjectData( useCapSize: true, gridWidth: '50', gridHeight: '40', capSize: '10', fidelityStructure: 0.3, ditheringStrength: 0.2, edgeEmphasis: 0.4, colorVariation: 0.5, selectedPreset: 'realistisch', sourceImageBytes: Uint8List.fromList([1, 2, 3]), savedAt: DateTime.parse('2026-01-01T12:00:00Z'), ); final decoded = MosaicProjectData.fromJson(original.toJson()); expect(decoded.useCapSize, isTrue); expect(decoded.gridWidth, '50'); expect(decoded.gridHeight, '40'); expect(decoded.capSize, '10'); expect(decoded.selectedPreset, 'realistisch'); expect(decoded.sourceImageBytes, isNotNull); expect(decoded.sourceImageBytes!, [1, 2, 3]); }); }