feat(train): where sync stands in Settings, with Sync now, and the cog's dot

As Learn's and Todo's: halkyon_app's Sync card first in Settings, and the
dot on the cog while sync fails; the person's SyncService is now part of
TrainPerson, which was the only reason Train had neither (the developer's
review of 3 Nov 2026).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-03 21:31:45 +01:00
commit adbb2c4f2f
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -191,6 +191,10 @@ void main() {
opened.add(person);
return TrainPerson(
person,
sync: SyncService(
({required onMerge}) async {},
debounce: const Duration(days: 1),
),
workouts:
workouts ??
WorkoutRepository(
@ -488,14 +492,15 @@ void main() {
}
});
testWidgets('Settings groups the training first, then the account, About '
'Halkyon Train last and the version small at the very foot', (
tester,
) async {
testWidgets('Settings groups where sync stands first, with Sync now, then '
'the training, then the account, About Halkyon Train last and the '
'version small at the very foot', (tester) async {
await start(tester, usedBefore: true);
await openSettings(tester);
expect(find.text('Sync now'), findsOneWidget);
final order = [
'Sync',
'Your body',
'Account',
'Sign out',