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:
@@ -427,10 +427,10 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
_log('만료 예정 라이선스 조회 중...');
|
||||
final expiringLicenses = await licenseService.getExpiringLicenses(days: 30);
|
||||
|
||||
_log('30일 이내 만료 예정 라이선스: ${expiringLicenses.length}개');
|
||||
_log('30일 이내 만료 예정 라이선스: ${expiringLicenses.items.length}개');
|
||||
|
||||
// 3. 방금 생성한 라이선스가 포함되어 있는지 확인
|
||||
final hasOurLicense = expiringLicenses.any((l) => l.id == created.id);
|
||||
final hasOurLicense = expiringLicenses.items.any((l) => l.id == created.id);
|
||||
|
||||
testContext.setData('expiringLicenseCreated', created);
|
||||
testContext.setData('expiringLicensesList', expiringLicenses);
|
||||
@@ -494,10 +494,10 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
isActive: false,
|
||||
);
|
||||
|
||||
_log('비활성 라이선스: ${inactiveLicenses.length}개');
|
||||
_log('비활성 라이선스: ${inactiveLicenses.items.length}개');
|
||||
|
||||
// 3. 만료된 라이선스가 비활성 목록에 있는지 확인
|
||||
final hasExpiredLicense = inactiveLicenses.any((l) => l.id == created.id);
|
||||
final hasExpiredLicense = inactiveLicenses.items.any((l) => l.id == created.id);
|
||||
|
||||
testContext.setData('expiredLicenseCreated', created);
|
||||
testContext.setData('inactiveLicensesList', inactiveLicenses);
|
||||
@@ -551,7 +551,7 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
await licenseService.createLicense(invalidLicense);
|
||||
_log('⚠️ 잘못된 키가 허용됨: "$invalidKey"');
|
||||
} catch (e) {
|
||||
_log('✓ 예상된 검증 에러 발생: "$invalidKey" - ${e.toString().split('\n').first}');
|
||||
_log('✓ 예상된 검증 에러 발생: "$invalidKey" - ${e.toString().split('\n').items.first}');
|
||||
validationErrors++;
|
||||
}
|
||||
}
|
||||
@@ -645,7 +645,7 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
await licenseService.createLicense(duplicateLicense);
|
||||
_log('⚠️ 중복 라이선스 키가 허용되었습니다');
|
||||
} catch (e) {
|
||||
_log('✓ 예상된 중복 에러 발생: ${e.toString().split('\n').first}');
|
||||
_log('✓ 예상된 중복 에러 발생: ${e.toString().split('\n').items.first}');
|
||||
duplicateRejected = true;
|
||||
}
|
||||
|
||||
@@ -716,7 +716,7 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
);
|
||||
|
||||
expect(diagnosis.errorType, equals(ErrorType.missingRequiredField));
|
||||
_log('진단 결과: ${diagnosis.missingFields?.length ?? 0}개 필드 누락');
|
||||
_log('진단 결과: ${diagnosis.missingFields?.items.length ?? 0}개 필드 누락');
|
||||
|
||||
// 자동 수정
|
||||
final fixResult = await autoFixer.attemptAutoFix(diagnosis);
|
||||
@@ -892,8 +892,8 @@ class LicenseScreenTest extends BaseScreenTest {
|
||||
// 2. 사용자 목록 조회 (할당할 사용자 찾기)
|
||||
final users = await userService.getUsers(page: 1, perPage: 10);
|
||||
|
||||
if (users.isNotEmpty) {
|
||||
final targetUser = users.first;
|
||||
if (users.items.isNotEmpty) {
|
||||
final targetUser = users.items.first;
|
||||
_log('할당 대상 사용자: ${targetUser.name} (ID: ${targetUser.id})');
|
||||
|
||||
// 3. 라이선스 할당
|
||||
@@ -1034,7 +1034,7 @@ class LicenseTestData {
|
||||
// 라이선스 키 생성기
|
||||
static String generateLicenseKey() {
|
||||
final prefixes = ['PRO', 'ENT', 'STD', 'TRIAL', 'DEV', 'PROD'];
|
||||
final prefix = prefixes[random.nextInt(prefixes.length)];
|
||||
final prefix = prefixes[random.nextInt(prefixes.items.length)];
|
||||
final timestamp = DateTime.now().millisecondsSinceEpoch.toString().substring(6);
|
||||
final randomPart = random.nextInt(9999).toString().padLeft(4, '0');
|
||||
|
||||
@@ -1061,7 +1061,7 @@ class LicenseTestData {
|
||||
'MongoDB Enterprise',
|
||||
];
|
||||
|
||||
return products[random.nextInt(products.length)];
|
||||
return products[random.nextInt(products.items.length)];
|
||||
}
|
||||
|
||||
// 벤더명 생성기
|
||||
@@ -1084,13 +1084,13 @@ class LicenseTestData {
|
||||
'Elastic',
|
||||
];
|
||||
|
||||
return vendors[random.nextInt(vendors.length)];
|
||||
return vendors[random.nextInt(vendors.items.length)];
|
||||
}
|
||||
|
||||
// 라이선스 타입 생성기
|
||||
static String generateLicenseType() {
|
||||
final types = ['perpetual', 'subscription', 'trial', 'oem', 'academic', 'nfr'];
|
||||
return types[random.nextInt(types.length)];
|
||||
return types[random.nextInt(types.items.length)];
|
||||
}
|
||||
|
||||
// 구매일 생성기 (과거 2년 이내)
|
||||
|
||||
Reference in New Issue
Block a user