Files
flutter-action/__tests__/installer.test.ts

49 lines
1.3 KiB
TypeScript
Raw Normal View History

2019-08-13 17:11:30 +07:00
import io = require('@actions/io');
import fs = require('fs');
import path = require('path');
const toolDir = path.join(__dirname, 'runner', 'tools');
2019-08-13 17:23:34 +07:00
const tempDir = path.join(__dirname, 'runner', 'temp');
2019-08-13 17:11:30 +07:00
process.env['RUNNER_TOOL_CACHE'] = toolDir;
2019-08-13 17:23:34 +07:00
process.env['RUNNER_TEMP'] = tempDir;
2019-08-13 17:11:30 +07:00
import * as installer from '../src/installer';
describe('installer tests', () => {
beforeAll(async () => {
await io.rmRF(toolDir);
2019-08-13 17:23:34 +07:00
await io.rmRF(tempDir);
2019-08-13 17:11:30 +07:00
}, 300000);
afterAll(async () => {
try {
await io.rmRF(toolDir);
2019-08-13 17:23:34 +07:00
await io.rmRF(tempDir);
2019-08-13 17:11:30 +07:00
} catch {
console.log('Failed to remove test directories');
}
}, 100000);
it('Downloads flutter', async () => {
2019-08-13 19:01:25 +07:00
await installer.getFlutter('1.7.8+hotfix.4', 'stable');
2019-08-14 08:04:15 +07:00
const sdkDir = path.join(
toolDir,
'Flutter',
'1.7.8-hotfix.4-stable',
'x64'
);
2019-08-13 17:11:30 +07:00
expect(fs.existsSync(`${sdkDir}.complete`)).toBe(true);
expect(fs.existsSync(path.join(sdkDir, 'bin'))).toBe(true);
}, 100000);
it('Downloads flutter from beta channel', async () => {
2019-08-13 19:01:25 +07:00
await installer.getFlutter('1.8.3', 'beta');
2019-08-14 08:04:15 +07:00
const sdkDir = path.join(toolDir, 'Flutter', '1.8.3-beta', 'x64');
2019-08-13 17:11:30 +07:00
expect(fs.existsSync(`${sdkDir}.complete`)).toBe(true);
expect(fs.existsSync(path.join(sdkDir, 'bin'))).toBe(true);
}, 100000);
});