verifyConfiguration method

Future<bool> verifyConfiguration()

Verify Firebase configuration

Implementation

Future<bool> verifyConfiguration() async {
  try {
    FinanceSdkLogger.info('πŸ” Verifying Firebase Configuration...');

    // Check if Firebase is initialized
    if (!_firebaseService.isInitialized) {
      FinanceSdkLogger.error('❌ Firebase service not initialized');
      return false;
    }

    // Check base URL
    final baseUrl = _firebaseService.baseUrl;
    if (baseUrl == null || baseUrl.isEmpty) {
      FinanceSdkLogger.error('❌ Base URL not configured');
      return false;
    }
    FinanceSdkLogger.info('βœ… Base URL configured: $baseUrl');

    // Check API definitions
    final apiDefinitions = _firebaseService.getAllApiDefinitions();
    if (apiDefinitions.isEmpty) {
      FinanceSdkLogger.warning('⚠️  No API definitions found');
      return false;
    }
    FinanceSdkLogger.info('βœ… API definitions loaded: ${apiDefinitions.length}');

    // Check for test APIs
    final hasGetTest = apiDefinitions.containsKey('TEST_GET_REQUEST');
    final hasPostTest = apiDefinitions.containsKey('TEST_POST_REQUEST');

    if (!hasGetTest) {
      FinanceSdkLogger.warning('⚠️  TEST_GET_REQUEST not found in Firestore');
    } else {
      FinanceSdkLogger.info('βœ… TEST_GET_REQUEST found');
    }

    if (!hasPostTest) {
      FinanceSdkLogger.warning('⚠️  TEST_POST_REQUEST not found in Firestore');
    } else {
      FinanceSdkLogger.info('βœ… TEST_POST_REQUEST found');
    }

    FinanceSdkLogger.info('βœ… Configuration verification complete');
    return hasGetTest && hasPostTest;
  } catch (e, stackTrace) {
    FinanceSdkLogger.error('❌ Configuration verification failed', e, stackTrace);
    return false;
  }
}