Files
fanuzu/app/test/quest_card_publish_state_test.dart
T

38 lines
1.1 KiB
Dart

import 'package:fancake/features/quest/quest_data.dart';
import 'package:fancake/features/quest/widgets/quest_card_tile.dart';
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
/// 10/6 실기기 4-2 — 「내 퀘스트」 카드가 검수 중 · 반려를 공개된 것과 구분한다.
void main() {
QuestCard mine(String state) => QuestCard(
id: 'q',
title: '걷기',
categoryName: '건강',
author: QuestAuthor.user,
stage: QuestStage.mine,
goal: 1000,
progress: 0,
rewardPop: 10,
participants: 0,
publishState: state,
);
Future<void> pump(WidgetTester t, QuestCard card) => t.pumpWidget(
MaterialApp(
home: Scaffold(
body: QuestCardTile(card: card, onOpen: () {}, onAction: () {}),
),
),
);
testWidgets('검수 중 · 반려 · 공개', (t) async {
await pump(t, mine('review'));
expect(find.text('검토 중'), findsOneWidget);
await pump(t, mine('rejected'));
expect(find.text('반려됨'), findsOneWidget);
await pump(t, mine('published'));
expect(find.text(QuestStage.mine.buttonLabel), findsOneWidget);
});
}