| // Copyright 2013 The Flutter Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // @dart = 2.6 | |
| @TestOn('vm && linux') | |
| import 'dart:io' as io; | |
| import 'package:path/path.dart' as path; | |
| import 'package:test/test.dart'; | |
| import 'common.dart'; | |
| import 'environment.dart'; | |
| import 'firefox_installer.dart'; | |
| void main() async { | |
| void deleteFirefoxInstallIfExists() { | |
| final io.Directory firefoxInstallationDir = io.Directory( | |
| path.join(environment.webUiDartToolDir.path, 'firefox'), | |
| ); | |
| if (firefoxInstallationDir.existsSync()) { | |
| firefoxInstallationDir.deleteSync(recursive: true); | |
| } | |
| } | |
| setUpAll(() { | |
| deleteFirefoxInstallIfExists(); | |
| }); | |
| tearDown(() { | |
| deleteFirefoxInstallIfExists(); | |
| }); | |
| test('installs a given version of Firefox', () async { | |
| FirefoxInstaller installer = FirefoxInstaller(version: '69.0.2'); | |
| expect(installer.isInstalled, isFalse); | |
| BrowserInstallation installation = await getOrInstallFirefox('69.0.2'); | |
| expect(installation.version, '69.0.2'); | |
| expect(installer.isInstalled, isTrue); | |
| expect(io.File(installation.executable).existsSync(), isTrue); | |
| }); | |
| } |