blob: e6086b5335dc75ac15869e29363ff6120f062a26 [file] [log] [blame]
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS 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 'dart:io';
import '../../test_pub.dart';
import '../../../../../pkg/unittest/lib/unittest.dart';
main() {
test("updates Git packages to an incompatible pubspec", () {
ensureGit();
git('foo.git', [
libDir('foo'),
libPubspec('foo', '1.0.0')
]).scheduleCreate();
appDir([{"git": "../foo.git"}]).scheduleCreate();
schedulePub(args: ['install'],
output: const RegExp(r"Dependencies installed!$"));
dir(packagesPath, [
dir('foo', [
file('foo.dart', 'main() => "foo";')
])
]).scheduleValidate();
git('foo.git', [
libDir('zoo'),
libPubspec('zoo', '1.0.0')
]).scheduleCommit();
schedulePub(args: ['update'],
error: const RegExp(r'The name you specified for your dependency, '
r'"foo", doesn' "'" r't match the name "zoo" in its pubspec.'),
exitCode: 1);
dir(packagesPath, [
dir('foo', [
file('foo.dart', 'main() => "foo";')
])
]).scheduleValidate();
run();
});
}