var dir = path.resolve(common.fixturesDir,
'weird \uc3a4\uc3ab\uc3af characters \u00e1\u00e2\u00e3');
-fs.mkdirSync(dir);
+
+try {
+ fs.mkdirSync(dir);
+} catch (e) {
+ if (e.code !== 'EEXIST') {
+ cleanup();
+ throw e;
+ }
+}
+
process.chdir(dir);
assert(process.cwd() == dir);
process.chdir('..');
assert(process.cwd() == path.resolve(common.fixturesDir));
-fs.rmdirSync(dir);
+cleanup();
assert.throws(function() { process.chdir({}); }, TypeError, 'Bad argument.');
assert.throws(function() { process.chdir(); }, TypeError, 'Bad argument.');
assert.throws(function() { process.chdir('x', 'y'); },
TypeError, 'Bad argument.');
+
+function cleanup() {
+ fs.rmdirSync(dir);
+}