성운 상세 실시간 기여 랭킹에 실제 기여자 표시

This commit is contained in:
Sn-Kinos
2026-10-05 18:07:44 +09:00
parent 96a95a12d1
commit be623d2e46
9 changed files with 514 additions and 229 deletions
+21
View File
@@ -5,6 +5,7 @@ import 'package:fancake/features/planet/fpi_ranking_screen.dart';
import 'package:fancake/features/planet/planet_data.dart';
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:fancake/features/campaign/campaign_data.dart' show ContributorRank;
import 'package:fancake/core/theme/app_theme.dart';
import 'package:fancake/features/planet/lounge_post_screens.dart';
@@ -92,6 +93,15 @@ class _NoTopPercentRepository extends SamplePlanetRepository {
}
/// 가입 전 상태로 시작하고, [join] 이 불리면 가입중으로 바뀌는 표본.
class _Contributed extends SamplePlanetRepository {
const _Contributed();
@override
Future<List<ContributorRank>> contributors({int limit = 3}) async => const [
ContributorRank(rank: 1, name: '별빛수집가', pop: 990),
];
}
class _Joinable extends SamplePlanetRepository {
_Joinable();
int joins = 0;
@@ -381,6 +391,17 @@ void main() {
));
expect(find.text('New_BTS'), findsOneWidget);
});
testWidgets('기여자가 있으면 실시간 기여 랭킹에 단상이 그려진다(10/5 실기기)', (tester) async {
await _pump(tester, const PlanetDetailScreen(
nebula: true,
repository: _Contributed(),
eclipse: NoEclipseRepository(),
));
await tester.pumpAndSettle();
expect(find.text('별빛수집가', skipOffstage: false), findsOneWidget);
expect(find.text('아직 기여자가 없어요', skipOffstage: false), findsNothing);
});
});
testWidgets('상대 시각 표기', (tester) async {