11cb0ef41Sopenharmony_ci'use strict';
21cb0ef41Sopenharmony_ciconst common = require('../common');
31cb0ef41Sopenharmony_ciconst assert = require('assert');
41cb0ef41Sopenharmony_ciconst path = require('path');
51cb0ef41Sopenharmony_ci
61cb0ef41Sopenharmony_ciassert.strictEqual(path.dirname(__filename).substr(-13),
71cb0ef41Sopenharmony_ci                   common.isWindows ? 'test\\parallel' : 'test/parallel');
81cb0ef41Sopenharmony_ci
91cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('/a/b/'), '/a');
101cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('/a/b'), '/a');
111cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('/a'), '/');
121cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname(''), '.');
131cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('/'), '/');
141cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('////'), '/');
151cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('//a'), '//');
161cb0ef41Sopenharmony_ciassert.strictEqual(path.posix.dirname('foo'), '.');
171cb0ef41Sopenharmony_ci
181cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\'), 'c:\\');
191cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo'), 'c:\\');
201cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo\\'), 'c:\\');
211cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo\\bar'), 'c:\\foo');
221cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo\\bar\\'), 'c:\\foo');
231cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo\\bar\\baz'), 'c:\\foo\\bar');
241cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:\\foo bar\\baz'), 'c:\\foo bar');
251cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\'), '\\');
261cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo'), '\\');
271cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo\\'), '\\');
281cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo\\bar'), '\\foo');
291cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo\\bar\\'), '\\foo');
301cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo\\bar\\baz'), '\\foo\\bar');
311cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\foo bar\\baz'), '\\foo bar');
321cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:'), 'c:');
331cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo'), 'c:');
341cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo\\'), 'c:');
351cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo\\bar'), 'c:foo');
361cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo\\bar\\'), 'c:foo');
371cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo\\bar\\baz'), 'c:foo\\bar');
381cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('c:foo bar\\baz'), 'c:foo bar');
391cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('file:stream'), '.');
401cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('dir\\file:stream'), 'dir');
411cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share'),
421cb0ef41Sopenharmony_ci                   '\\\\unc\\share');
431cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share\\foo'),
441cb0ef41Sopenharmony_ci                   '\\\\unc\\share\\');
451cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share\\foo\\'),
461cb0ef41Sopenharmony_ci                   '\\\\unc\\share\\');
471cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share\\foo\\bar'),
481cb0ef41Sopenharmony_ci                   '\\\\unc\\share\\foo');
491cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share\\foo\\bar\\'),
501cb0ef41Sopenharmony_ci                   '\\\\unc\\share\\foo');
511cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('\\\\unc\\share\\foo\\bar\\baz'),
521cb0ef41Sopenharmony_ci                   '\\\\unc\\share\\foo\\bar');
531cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('/a/b/'), '/a');
541cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('/a/b'), '/a');
551cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('/a'), '/');
561cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname(''), '.');
571cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('/'), '/');
581cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('////'), '/');
591cb0ef41Sopenharmony_ciassert.strictEqual(path.win32.dirname('foo'), '.');
60