feat(l10n): 캐릭터 생성 화면 하드코딩 텍스트 l10n 적용
- newCharacterTitle, soldButton 키 추가 (app_en.arb, app_ko.arb) - new_character_screen.dart 하드코딩 텍스트를 L10n 함수로 변경 - 관련 테스트 업데이트 (widget_test.dart, new_character_screen_test.dart) 변경 내역: - "Progress Quest - New Character" → L10n.newCharacterTitle - "Sold!" → L10n.soldButton
This commit is contained in:
@@ -242,5 +242,11 @@
|
|||||||
"placeholders": {
|
"placeholders": {
|
||||||
"percent": { "type": "int" }
|
"percent": { "type": "int" }
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
|
||||||
|
"newCharacterTitle": "ASCII-Nara - New Character",
|
||||||
|
"@newCharacterTitle": { "description": "New character screen title" },
|
||||||
|
|
||||||
|
"soldButton": "Sold!",
|
||||||
|
"@soldButton": { "description": "Confirm character creation button" }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -71,5 +71,7 @@
|
|||||||
"roll": "굴리기",
|
"roll": "굴리기",
|
||||||
"race": "종족",
|
"race": "종족",
|
||||||
"classTitle": "직업",
|
"classTitle": "직업",
|
||||||
"percentComplete": "{percent}% 완료"
|
"percentComplete": "{percent}% 완료",
|
||||||
|
"newCharacterTitle": "아스키나라 - 새 캐릭터",
|
||||||
|
"soldButton": "확인!"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
title: const Text('Progress Quest - New Character'),
|
title: Text(L10n.of(context).newCharacterTitle),
|
||||||
centerTitle: true,
|
centerTitle: true,
|
||||||
),
|
),
|
||||||
body: SingleChildScrollView(
|
body: SingleChildScrollView(
|
||||||
@@ -231,7 +231,7 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
|||||||
FilledButton.icon(
|
FilledButton.icon(
|
||||||
onPressed: _onSold,
|
onPressed: _onSold,
|
||||||
icon: const Icon(Icons.check),
|
icon: const Icon(Icons.check),
|
||||||
label: const Text('Sold!'),
|
label: Text(L10n.of(context).soldButton),
|
||||||
style: FilledButton.styleFrom(
|
style: FilledButton.styleFrom(
|
||||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ void main() {
|
|||||||
_buildTestApp(NewCharacterScreen(onCharacterCreated: (_) {})),
|
_buildTestApp(NewCharacterScreen(onCharacterCreated: (_) {})),
|
||||||
);
|
);
|
||||||
|
|
||||||
// 화면 타이틀 확인
|
// 화면 타이틀 확인 (l10n 적용됨)
|
||||||
expect(find.text('Progress Quest - New Character'), findsOneWidget);
|
expect(find.text('ASCII-Nara - New Character'), findsOneWidget);
|
||||||
|
|
||||||
// 종족 섹션 확인
|
// 종족 섹션 확인
|
||||||
expect(find.text('Race'), findsOneWidget);
|
expect(find.text('Race'), findsOneWidget);
|
||||||
|
|||||||
@@ -14,8 +14,8 @@ void main() {
|
|||||||
await tester.tap(find.text('New character'));
|
await tester.tap(find.text('New character'));
|
||||||
await tester.pumpAndSettle();
|
await tester.pumpAndSettle();
|
||||||
|
|
||||||
// NewCharacterScreen으로 이동했는지 확인
|
// NewCharacterScreen으로 이동했는지 확인 (l10n 적용됨)
|
||||||
expect(find.text('Progress Quest - New Character'), findsOneWidget);
|
expect(find.text('ASCII-Nara - New Character'), findsOneWidget);
|
||||||
expect(find.text('Race'), findsOneWidget);
|
expect(find.text('Race'), findsOneWidget);
|
||||||
expect(find.text('Class'), findsOneWidget);
|
expect(find.text('Class'), findsOneWidget);
|
||||||
expect(find.text('Sold!'), findsOneWidget);
|
expect(find.text('Sold!'), findsOneWidget);
|
||||||
|
|||||||
Reference in New Issue
Block a user