toolchain_test.dart 1.52 KB
Newer Older
1 2 3 4 5 6
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'dart:io';

7
import 'package:flutter_tools/src/build_info.dart';
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
import 'package:flutter_tools/src/cache.dart';
import 'package:flutter_tools/src/toolchain.dart';
import 'package:test/test.dart';

import 'src/context.dart';

void main() {
  group('ToolConfiguration', () {
    Directory tempDir;

    setUp(() {
      tempDir = Directory.systemTemp.createTempSync('flutter_temp');
    });

    tearDown(() {
      tempDir.deleteSync(recursive: true);
    });

    testUsingContext('using cache', () {
      ToolConfiguration toolConfig = new ToolConfiguration(
        overrideCache: new Cache(rootOverride: tempDir)
      );

      expect(
32
        toolConfig.getEngineArtifactsDirectory(TargetPlatform.android_arm, BuildMode.debug).path,
33 34 35
        endsWith('cache/artifacts/engine/android-arm')
      );
      expect(
36 37
        toolConfig.getEngineArtifactsDirectory(TargetPlatform.android_arm, BuildMode.release).path,
        endsWith('cache/artifacts/engine/android-arm-release')
38 39 40 41 42 43
      );
    });

    testUsingContext('using enginePath', () {
      ToolConfiguration toolConfig = new ToolConfiguration();
      toolConfig.engineSrcPath = 'engine';
44
      toolConfig.engineBuildPath = 'engine/out/android_debug';
45 46

      expect(
47
        toolConfig.getEngineArtifactsDirectory(TargetPlatform.android_arm, BuildMode.debug).path,
48
        'engine/out/android_debug'
49 50 51 52
      );
    });
  });
}