dart-sass/test/node_cli_test.dart

38 lines
1.1 KiB
Dart
Raw Normal View History

// Copyright 2016 Google Inc. Use of this source code is governed by an
// MIT-style license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT.
2016-12-03 00:44:06 +01:00
@Tags(const ['node'])
2017-05-25 23:23:48 +02:00
import 'dart:async';
import 'dart:io';
2016-12-03 02:30:09 +01:00
import 'package:path/path.dart' as p;
2017-05-25 23:23:48 +02:00
import 'package:test_process/test_process.dart';
import 'package:test_descriptor/test_descriptor.dart' as d;
import 'package:test/test.dart';
import 'cli_shared.dart';
void main() {
2017-05-25 23:23:48 +02:00
setUpAll(() async {
var grinder = await TestProcess
.start(Platform.executable, ["tool/grind.dart", "npm_package"]);
await grinder.shouldExit(0);
});
2016-12-03 02:30:09 +01:00
sharedTests(_runSass);
2017-05-25 23:23:48 +02:00
test("--version prints the Sass and dart2js versions", () async {
var sass = await _runSass(["--version"]);
expect(
sass.stdout,
emits(matches(new RegExp(
r"^\d+\.\d+\.\d+.* compiled with dart2js \d+\.\d+\.\d+"))));
await sass.shouldExit(0);
2016-12-03 02:30:09 +01:00
});
}
2016-12-03 02:30:09 +01:00
2017-05-25 23:23:48 +02:00
Future<TestProcess> _runSass(Iterable<String> arguments) => TestProcess.start(
"node", [p.absolute("build/npm/sass.js")]..addAll(arguments),
workingDirectory: d.sandbox, description: "sass");