import 'package:block_seasons/ui/widgets/map_layout.dart'; import 'package:flutter_test/flutter_test.dart'; void main() { const layout = MapLayout(width: 400); test('node 0 sits near the bottom, later nodes climb', () { final h = layout.heightFor(60); final first = layout.nodeCenter(0, 60); final last = layout.nodeCenter(59, 60); expect(first.dy, greaterThan(h - 200)); expect(last.dy, lessThan(200)); for (var i = 1; i < 60; i++) { expect(layout.nodeCenter(i, 60).dy, lessThan(layout.nodeCenter(i - 1, 60).dy)); } }); test('x stays within horizontal margins', () { for (var i = 0; i < 60; i++) { final x = layout.nodeCenter(i, 60).dx; expect(x, greaterThanOrEqualTo(400 * 0.12)); expect(x, lessThanOrEqualTo(400 * 0.88)); } }); test('vertical spacing is uniform', () { final a = layout.nodeCenter(3, 60).dy - layout.nodeCenter(4, 60).dy; final b = layout.nodeCenter(40, 60).dy - layout.nodeCenter(41, 60).dy; expect(a, closeTo(b, 0.001)); }); }