blob: 916c3960a6ba317fb42c41e2f28fcc5ee4ff3eaf [file] [log] [blame]
// Copyright (c) 2013, 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.
@TestOn('vm')
import 'dart:io';
import 'package:path/path.dart' as p;
import 'package:test/test.dart';
import 'package:test_descriptor/test_descriptor.dart' as d;
import 'utils.dart';
void main() {
test("create() does nothing", () async {
await d.nothing('foo').create();
expect(new File(p.join(d.sandbox, 'foo')).exists(), completion(isFalse));
expect(new Directory(p.join(d.sandbox, 'foo')).exists(),
completion(isFalse));
});
group("validate()", () {
test("succeeds if nothing's there", () async {
await d.nothing('foo').validate();
});
test("fails if there's a file", () async {
await d.file('name.txt', 'contents').create();
expect(d.nothing('name.txt').validate(), throwsA(toString(equals(
'Expected nothing to exist at "name.txt", but found a file.'))));
});
test("fails if there's a directory", () async {
await d.dir('dir').create();
expect(d.nothing('dir').validate(), throwsA(toString(equals(
'Expected nothing to exist at "dir", but found a directory.'))));
});
test("fails if there's a broken link", () async {
await new Link(p.join(d.sandbox, 'link')).create('nonexistent');
expect(d.nothing('link').validate(), throwsA(toString(equals(
'Expected nothing to exist at "link", but found a link.'))));
});
});
}