44 lines
1.4 KiB
Dart
44 lines
1.4 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:hepan_everyday/app/app_controller.dart';
|
|
import 'package:hepan_everyday/app/app_theme.dart';
|
|
import 'package:hepan_everyday/domain/app_snapshot.dart';
|
|
import 'package:hepan_everyday/domain/exam_schedule.dart';
|
|
import 'package:hepan_everyday/domain/school_identity.dart';
|
|
import 'package:hepan_everyday/features/exams/exams_page.dart';
|
|
|
|
import '../support/fakes.dart';
|
|
|
|
void main() {
|
|
testWidgets('query description has breathing room above exam cards', (
|
|
tester,
|
|
) async {
|
|
final controller = AppController(
|
|
MemoryStore(),
|
|
FakeNotifications(),
|
|
FakeCalendar(),
|
|
DateTime.now,
|
|
);
|
|
addTearDown(controller.dispose);
|
|
controller.snapshot = AppSnapshot(
|
|
examSchedule: ExamSchedule(
|
|
semesterLabel: '2025-2026第二学期',
|
|
termId: '503',
|
|
school: SupportedSchool.uestcUndergraduate,
|
|
requestedExamTypes: {1},
|
|
records: [const ExamRecord(code: 'C1', name: '测试考试', examTypeId: 1)],
|
|
),
|
|
);
|
|
await tester.pumpWidget(
|
|
MaterialApp(
|
|
home: Scaffold(
|
|
body: ExamsPage(controller: controller, onSync: () {}),
|
|
),
|
|
),
|
|
);
|
|
final description = tester.getRect(find.text('查询类型:期末考试'));
|
|
final card = tester.getRect(find.byType(SurfaceCard).first);
|
|
expect(card.top - description.bottom, greaterThanOrEqualTo(12));
|
|
});
|
|
}
|