blob: 7689b6af47e56b60b221c8f040e5b6db80d88af9 [file] [log] [blame]
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
library pub_tests;
import '../descriptor.dart' as d;
import '../test_pub.dart';
import '../serve/utils.dart';
main() {
initConfig();
withBarbackVersions("any", () {
integration("loads ordering dependencies in the correct order", () {
d.dir("foo", [
d.libPubspec("foo", '1.0.0'),
d.dir("lib", [
d.file("transformer.dart", dartTransformer('foo'))
])
]).create();
d.dir("bar", [
d.pubspec({
"name": "bar",
"version": "1.0.0",
"transformers": ["foo/transformer"],
"dependencies": {"foo": {"path": "../foo"}}
}),
d.dir("lib", [
d.file("bar.dart", 'const TOKEN = "bar";')
])
]).create();
d.dir(appPath, [
d.pubspec({
"name": "myapp",
"transformers": ["myapp/transformer"],
"dependencies": {"bar": {"path": "../bar"}}
}),
d.dir("lib", [
d.file("transformer.dart", dartTransformer('myapp', import: 'bar'))
]),
d.dir("web", [
d.file("main.dart", 'const TOKEN = "main.dart";')
])
]).create();
createLockFile('myapp', sandbox: ['foo', 'bar'], pkg: ['barback']);
pubServe();
requestShouldSucceed("main.dart",
'const TOKEN = "(main.dart, myapp imports (bar, foo))";');
endPubServe();
});
});
}