HOME 퀘스트 줄 분류 · 일시 정지 표기

This commit is contained in:
Sn-Kinos
2026-10-06 04:06:36 +09:00
parent 55f3f503a3
commit 65f73280aa
6 changed files with 79 additions and 22 deletions
+26
View File
@@ -17,6 +17,7 @@ import 'package:fancake/features/planet/planet_data.dart';
import 'package:fancake/features/planet/planet_repository_firestore.dart';
import 'package:fancake/features/quest/quest_data.dart';
import 'package:fancake/features/quest/quest_repository_firestore.dart';
import 'package:fancake/features/quest/widgets/quest_card_tile.dart' show questSubLine;
import 'package:firebase_auth_mocks/firebase_auth_mocks.dart';
import 'package:flutter_test/flutter_test.dart';
@@ -249,6 +250,31 @@ void main() {
expect(snapshot.quests.single.rewardPop, 50);
});
test('TODAY\'S QUEST 줄 아래는 활동명이 아니라 퀘스트 목록과 같은 분류다 — 10/6 B-4', () async {
final db = await _seed();
await db.doc('quests/shake').set({
'active': true, 'title': '박자 맞춰 흔들기', 'type': 'musicShake',
});
final quest = (await FirestoreHomeRepository(_backend(db)).load()).quests.single;
expect(quest.category, QuestType.musicShake.category);
expect(quest.category, isNot(QuestType.musicShake.label));
});
test('일시 정지 세션은 HOME 줄에도 「분류 · 일시 정지 · n/m」로 보인다 — 10/6 A-1', () async {
final db = await _seed();
await db.doc('quests/shake').set({
'active': true, 'title': '박자 맞춰 흔들기', 'type': 'musicShake',
});
await db.doc('users/$_uid/questProgress/shake').set({
'session': {'state': 'paused', 'progress': 14, 'total': 32},
});
final quest = (await FirestoreHomeRepository(_backend(db)).load()).quests.single;
expect(
questSubLine(quest.category!, quest.pausedSession),
'${QuestType.musicShake.category} · 일시 정지 · 14/32',
);
});
test('지난 날의 진행 행은 완료로 보지 않는다 — 목록 · 상세와 같은 판정(실기기 4-1)', () async {
final db = await _seed();
await db.doc('quests/attend').set({