refactor: UI 화면 통합 및 불필요한 파일 정리
- 모든 *_redesign.dart 파일을 기본 화면 파일로 통합 - 백업용 컨트롤러 파일들 제거 (*_controller.backup.dart) - 사용하지 않는 예제 및 테스트 파일 제거 - Clean Architecture 적용 후 남은 정리 작업 완료 - 테스트 코드 정리 및 구조 개선 준비 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -128,9 +128,9 @@ class ReportCollector {
|
||||
}
|
||||
|
||||
return TestResult(
|
||||
totalTests: totalTests == 0 ? _steps.length : totalTests,
|
||||
passedTests: passedTests == 0 ? _steps.where((s) => s.success).length : passedTests,
|
||||
failedTests: failedTests == 0 ? _steps.where((s) => !s.success).length : failedTests,
|
||||
totalTests: totalTests == 0 ? _steps.items.length : totalTests,
|
||||
passedTests: passedTests == 0 ? _steps.items.where((s) => s.success).items.length : passedTests,
|
||||
failedTests: failedTests == 0 ? _steps.items.where((s) => !s.success).items.length : failedTests,
|
||||
skippedTests: skippedTests,
|
||||
failures: failures,
|
||||
);
|
||||
@@ -187,22 +187,22 @@ class ReportCollector {
|
||||
buffer.writeln('- 성공: ${testResult.passedTests}개');
|
||||
buffer.writeln('- 실패: ${testResult.failedTests}개');
|
||||
|
||||
if (_autoFixes.isNotEmpty) {
|
||||
if (_autoFixes.items.isNotEmpty) {
|
||||
buffer.writeln('\n자동 수정 요약:');
|
||||
buffer.writeln('- 총 ${_autoFixes.length}개 항목 자동 수정됨');
|
||||
final fixTypes = _autoFixes.map((f) => f.errorType).toSet();
|
||||
buffer.writeln('- 총 ${_autoFixes.items.length}개 항목 자동 수정됨');
|
||||
final fixTypes = _autoFixes.items.map((f) => f.errorType).toSet();
|
||||
for (final type in fixTypes) {
|
||||
final count = _autoFixes.where((f) => f.errorType == type).length;
|
||||
final count = _autoFixes.items.where((f) => f.errorType == type).items.length;
|
||||
buffer.writeln(' - $type: $count개');
|
||||
}
|
||||
}
|
||||
|
||||
if (_errors.isNotEmpty) {
|
||||
if (_errors.items.isNotEmpty) {
|
||||
buffer.writeln('\n에러 요약:');
|
||||
buffer.writeln('- 총 ${_errors.length}개 에러 발생');
|
||||
final errorTypes = _errors.map((e) => e.errorType).toSet();
|
||||
buffer.writeln('- 총 ${_errors.items.length}개 에러 발생');
|
||||
final errorTypes = _errors.items.map((e) => e.errorType).toSet();
|
||||
for (final type in errorTypes) {
|
||||
final count = _errors.where((e) => e.errorType == type).length;
|
||||
final count = _errors.items.where((e) => e.errorType == type).items.length;
|
||||
buffer.writeln(' - $type: $count개');
|
||||
}
|
||||
}
|
||||
@@ -222,13 +222,13 @@ class ReportCollector {
|
||||
/// 통계 정보 조회
|
||||
Map<String, dynamic> getStatistics() {
|
||||
return {
|
||||
'totalSteps': _steps.length,
|
||||
'successfulSteps': _steps.where((s) => s.success).length,
|
||||
'failedSteps': _steps.where((s) => !s.success).length,
|
||||
'totalErrors': _errors.length,
|
||||
'totalAutoFixes': _autoFixes.length,
|
||||
'totalFeatures': _features.length,
|
||||
'totalApiCalls': _apiCalls.values.expand((calls) => calls).length,
|
||||
'totalSteps': _steps.items.length,
|
||||
'successfulSteps': _steps.items.where((s) => s.success).items.length,
|
||||
'failedSteps': _steps.items.where((s) => !s.success).items.length,
|
||||
'totalErrors': _errors.items.length,
|
||||
'totalAutoFixes': _autoFixes.items.length,
|
||||
'totalFeatures': _features.items.length,
|
||||
'totalApiCalls': _apiCalls.values.expand((calls) => calls).items.length,
|
||||
'duration': DateTime.now().difference(_startTime).inSeconds,
|
||||
};
|
||||
}
|
||||
@@ -272,7 +272,7 @@ class ReportCollector {
|
||||
buffer.writeln();
|
||||
|
||||
// 기능별 결과
|
||||
if (report.features.isNotEmpty) {
|
||||
if (report.features.items.isNotEmpty) {
|
||||
buffer.writeln('## 🎯 기능별 테스트 결과');
|
||||
buffer.writeln();
|
||||
buffer.writeln('| 기능 | 전체 | 성공 | 실패 | 성공률 |');
|
||||
@@ -288,7 +288,7 @@ class ReportCollector {
|
||||
}
|
||||
|
||||
// 실패 상세
|
||||
if (report.testResult.failures.isNotEmpty) {
|
||||
if (report.testResult.failures.items.isNotEmpty) {
|
||||
buffer.writeln('## ❌ 실패한 테스트');
|
||||
buffer.writeln();
|
||||
|
||||
@@ -303,7 +303,7 @@ class ReportCollector {
|
||||
}
|
||||
|
||||
// 자동 수정
|
||||
if (report.autoFixes.isNotEmpty) {
|
||||
if (report.autoFixes.items.isNotEmpty) {
|
||||
buffer.writeln('## 🔧 자동 수정 내역');
|
||||
buffer.writeln();
|
||||
|
||||
@@ -341,17 +341,17 @@ class ReportCollector {
|
||||
: '0.0',
|
||||
},
|
||||
'statistics': stats,
|
||||
'features': report.features.map((key, value) => MapEntry(key, {
|
||||
'features': report.features.items.map((key, value) => MapEntry(key, {
|
||||
'totalTests': value.totalTests,
|
||||
'passedTests': value.passedTests,
|
||||
'failedTests': value.failedTests,
|
||||
})),
|
||||
'failures': report.testResult.failures.map((f) => {
|
||||
'failures': report.testResult.failures.items.map((f) => {
|
||||
'feature': f.feature,
|
||||
'message': f.message,
|
||||
'stackTrace': f.stackTrace,
|
||||
}).toList(),
|
||||
'autoFixes': report.autoFixes.map((f) => {
|
||||
'autoFixes': report.autoFixes.items.map((f) => {
|
||||
'errorType': f.errorType,
|
||||
'cause': f.cause,
|
||||
'solution': f.solution,
|
||||
|
||||
Reference in New Issue
Block a user