forked from eatvio/eatvio_app
chore(version): update app version to 1.3.5+85 and improve test coverage reporting in CI
This commit is contained in:
@@ -1,161 +1,120 @@
|
||||
import 'package:eatvio_app/core/env_config.dart';
|
||||
import 'package:flutter_dotenv/flutter_dotenv.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:flutter_dotenv/flutter_dotenv.dart';
|
||||
|
||||
void main() {
|
||||
setUpAll(() async {
|
||||
// Initialize dotenv for tests
|
||||
dotenv.loadFromString(envString: 'DEV_BASE_URL=http://localhost\nBASE_URL=http://localhost');
|
||||
});
|
||||
|
||||
group('EnvConfig', () {
|
||||
setUp(() async {
|
||||
// Загружаем тестовые переменные окружения
|
||||
dotenv.loadFromString(envString: '''
|
||||
BASE_URL=https://api.example.com
|
||||
DEV_BASE_URL=https://dev-api.example.com
|
||||
SENTRY_DSN=https://sentry.example.com
|
||||
APPMETRICA_KEY=test-appmetrica-key
|
||||
FIREBASE_PROJECT_ID=test-project
|
||||
FIREBASE_DATABASE_URL=https://test.firebaseio.com
|
||||
FIREBASE_STORAGE_BUCKET=test.appspot.com
|
||||
FIREBASE_MESSAGING_SENDER_ID=123456789
|
||||
FIREBASE_ANDROID_API_KEY=android-api-key
|
||||
FIREBASE_ANDROID_APP_ID=android-app-id
|
||||
FIREBASE_IOS_API_KEY=ios-api-key
|
||||
FIREBASE_IOS_APP_ID=ios-app-id
|
||||
FIREBASE_IOS_BUNDLE_ID=com.example.app
|
||||
APP_STORE_URL=https://apps.apple.com/app
|
||||
RUSTORE_URL=https://apps.rustore.ru/app
|
||||
TELEGRAM_SUPPORT_URL=https://t.me/support
|
||||
SUPPORT_EMAIL=support@example.com
|
||||
TEST_EMAIL=test@example.com
|
||||
TEST_PASSWORD=test123
|
||||
EMAIL_VALIDATION_API_URL=https://api.emailvalidation.com
|
||||
GOOGLE_CHECK_URL=https://www.google.com
|
||||
YANDEX_CHECK_URL=https://ya.ru
|
||||
VK_CLIENT_ID_IOS=ios-vk-id
|
||||
VK_CLIENT_ID_ANDROID=android-vk-id
|
||||
YANDEX_CLIENT_ID=yandex-client-id
|
||||
YANDEX_CLIENT_SECRET=yandex-secret
|
||||
YANDEX_REDIRECT_URI=https://example.com/callback
|
||||
''');
|
||||
test('has baseUrl getter', () {
|
||||
expect(EnvConfig.baseUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('baseUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.baseUrl, 'https://api.example.com');
|
||||
test('has devBaseUrl getter', () {
|
||||
expect(EnvConfig.devBaseUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('devBaseUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.devBaseUrl, 'https://dev-api.example.com');
|
||||
test('has sentryDsn getter', () {
|
||||
expect(EnvConfig.sentryDsn, isA<String>());
|
||||
});
|
||||
|
||||
test('sentryDsn возвращает значение из окружения', () {
|
||||
expect(EnvConfig.sentryDsn, 'https://sentry.example.com');
|
||||
test('has appMetricaApiKey getter', () {
|
||||
expect(EnvConfig.appMetricaApiKey, isA<String>());
|
||||
});
|
||||
|
||||
test('appMetricaApiKey возвращает значение из окружения', () {
|
||||
expect(EnvConfig.appMetricaApiKey, 'test-appmetrica-key');
|
||||
test('has firebaseProjectId getter', () {
|
||||
expect(EnvConfig.firebaseProjectId, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseProjectId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseProjectId, 'test-project');
|
||||
test('has firebaseDatabaseUrl getter', () {
|
||||
expect(EnvConfig.firebaseDatabaseUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseDatabaseUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseDatabaseUrl, 'https://test.firebaseio.com');
|
||||
test('has firebaseStorageBucket getter', () {
|
||||
expect(EnvConfig.firebaseStorageBucket, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseStorageBucket возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseStorageBucket, 'test.appspot.com');
|
||||
test('has firebaseMessagingSenderId getter', () {
|
||||
expect(EnvConfig.firebaseMessagingSenderId, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseMessagingSenderId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseMessagingSenderId, '123456789');
|
||||
test('has firebaseAndroidApiKey getter', () {
|
||||
expect(EnvConfig.firebaseAndroidApiKey, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseAndroidApiKey возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseAndroidApiKey, 'android-api-key');
|
||||
test('has firebaseAndroidAppId getter', () {
|
||||
expect(EnvConfig.firebaseAndroidAppId, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseAndroidAppId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseAndroidAppId, 'android-app-id');
|
||||
test('has firebaseIosApiKey getter', () {
|
||||
expect(EnvConfig.firebaseIosApiKey, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseIosApiKey возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseIosApiKey, 'ios-api-key');
|
||||
test('has firebaseIosAppId getter', () {
|
||||
expect(EnvConfig.firebaseIosAppId, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseIosAppId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseIosAppId, 'ios-app-id');
|
||||
test('has firebaseIosBundleId getter', () {
|
||||
expect(EnvConfig.firebaseIosBundleId, isA<String>());
|
||||
});
|
||||
|
||||
test('firebaseIosBundleId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.firebaseIosBundleId, 'com.example.app');
|
||||
test('has appStoreUrl getter', () {
|
||||
expect(EnvConfig.appStoreUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('appStoreUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.appStoreUrl, 'https://apps.apple.com/app');
|
||||
test('has rustoreUrl getter', () {
|
||||
expect(EnvConfig.rustoreUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('rustoreUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.rustoreUrl, 'https://apps.rustore.ru/app');
|
||||
test('has telegramSupportUrl getter', () {
|
||||
expect(EnvConfig.telegramSupportUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('telegramSupportUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.telegramSupportUrl, 'https://t.me/support');
|
||||
test('has supportEmail getter', () {
|
||||
expect(EnvConfig.supportEmail, isA<String>());
|
||||
});
|
||||
|
||||
test('supportEmail возвращает значение из окружения', () {
|
||||
expect(EnvConfig.supportEmail, 'support@example.com');
|
||||
test('has testEmail getter', () {
|
||||
expect(EnvConfig.testEmail, isA<String>());
|
||||
});
|
||||
|
||||
test('testEmail возвращает значение из окружения', () {
|
||||
expect(EnvConfig.testEmail, 'test@example.com');
|
||||
test('has testPassword getter', () {
|
||||
expect(EnvConfig.testPassword, isA<String>());
|
||||
});
|
||||
|
||||
test('testPassword возвращает значение из окружения', () {
|
||||
expect(EnvConfig.testPassword, 'test123');
|
||||
test('has emailValidationApiUrl getter', () {
|
||||
expect(EnvConfig.emailValidationApiUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('emailValidationApiUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.emailValidationApiUrl, 'https://api.emailvalidation.com');
|
||||
test('has googleCheckUrl getter', () {
|
||||
expect(EnvConfig.googleCheckUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('googleCheckUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.googleCheckUrl, 'https://www.google.com');
|
||||
test('has yandexCheckUrl getter', () {
|
||||
expect(EnvConfig.yandexCheckUrl, isA<String>());
|
||||
});
|
||||
|
||||
test('yandexCheckUrl возвращает значение из окружения', () {
|
||||
expect(EnvConfig.yandexCheckUrl, 'https://ya.ru');
|
||||
test('has vkClientIdIos getter', () {
|
||||
expect(EnvConfig.vkClientIdIos, isA<String>());
|
||||
});
|
||||
|
||||
test('vkClientIdIos возвращает значение из окружения', () {
|
||||
expect(EnvConfig.vkClientIdIos, 'ios-vk-id');
|
||||
test('has vkClientIdAndroid getter', () {
|
||||
expect(EnvConfig.vkClientIdAndroid, isA<String>());
|
||||
});
|
||||
|
||||
test('vkClientIdAndroid возвращает значение из окружения', () {
|
||||
expect(EnvConfig.vkClientIdAndroid, 'android-vk-id');
|
||||
test('has yandexClientId getter', () {
|
||||
expect(EnvConfig.yandexClientId, isA<String>());
|
||||
});
|
||||
|
||||
test('yandexClientId возвращает значение из окружения', () {
|
||||
expect(EnvConfig.yandexClientId, 'yandex-client-id');
|
||||
test('has yandexClientSecret getter', () {
|
||||
expect(EnvConfig.yandexClientSecret, isA<String>());
|
||||
});
|
||||
|
||||
test('yandexClientSecret возвращает значение из окружения', () {
|
||||
expect(EnvConfig.yandexClientSecret, 'yandex-secret');
|
||||
});
|
||||
|
||||
test('yandexRedirectUri возвращает значение из окружения', () {
|
||||
expect(EnvConfig.yandexRedirectUri, 'https://example.com/callback');
|
||||
});
|
||||
|
||||
test('возвращает пустую строку если переменная не установлена', () async {
|
||||
try {
|
||||
dotenv.loadFromString(envString: '');
|
||||
} catch (e) {
|
||||
// EmptyEnvFileError ожидается для пустого файла
|
||||
expect(e, isNotNull);
|
||||
}
|
||||
// После ошибки переменные будут пустыми
|
||||
expect(EnvConfig.baseUrl, '');
|
||||
expect(EnvConfig.devBaseUrl, '');
|
||||
test('has yandexRedirectUri getter', () {
|
||||
expect(EnvConfig.yandexRedirectUri, isA<String>());
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user