blob: 0533a2ae599a778b0112555b5e06e14f9315085a [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.
// @dart = 2.9
import 'dart:io';
import "package:expect/expect.dart";
void testDeleteLongPathPrefix() {
var dir = Directory.systemTemp.createTempSync('dart_file_win');
var dirPath = "\\\\?\\${dir.path}";
var subPath = dirPath;
for (int i = 0; i < 16; i++) {
subPath += "\\a-long-path-segment";
dir = new Directory(subPath)..createSync();
}
Expect.isTrue(dir.path.length > 256);
var prefixDir = new Directory(dirPath);
Expect.isTrue(prefixDir.existsSync());
prefixDir.deleteSync(recursive: true);
Expect.isFalse(dir.existsSync());
Expect.isFalse(prefixDir.existsSync());
}
void main() {
if (!Platform.isWindows) return;
testDeleteLongPathPrefix();
}