FPI 사용자·국가 랭킹 서버 집계 · YouTube 스밍 · Music Shake 참여

This commit is contained in:
Sn-Kinos
2026-10-05 17:49:47 +09:00
parent 5238fc4ef3
commit 96a95a12d1
31 changed files with 738 additions and 116 deletions
+6 -6
View File
@@ -309,14 +309,14 @@ void main() {
expect(find.text('광고 추가 보상 +10 POP'), findsOneWidget);
});
testWidgets('회신 대기 유형은 참여 버튼이 잠기고 사용자 문구로만 알린다', (tester) async {
testWidgets('스트리밍은 무보상 참여로 열려 있고 보상 · 광고 화면 없이 참여만 알린다(C-04)', (tester) async {
await pumpWide(tester, const QuestDetailScreen(questId: 'q6', repository: _sample));
await tester.pump();
final button = tester.widget<FilledButton>(
find.widgetWithText(FilledButton, '준비 중입니다.'),
);
expect(button.onPressed, isNull);
expect(find.text('이 퀘스트는 아직 참여할 수 없습니다.'), findsOneWidget);
expect(find.text('이 퀘스트는 아직 참여할 수 없습니다.'), findsNothing);
await tester.tap(find.widgetWithText(FilledButton, '퀘스트 시작하기'));
await tester.pumpAndSettle();
expect(find.text('참여가 기록되었어요. 이 퀘스트는 POP 보상이 없어요.'), findsOneWidget);
expect(find.text('기본 보상 받기'), findsNothing);
// 내부 질의 번호 · 「발주사」 · MOCK 은 화면에 내보내지 않는다.
expect(find.textContaining('Q-QC-'), findsNothing);
expect(find.textContaining('발주사'), findsNothing);