| 'use strict' | 
| var fs = require('graceful-fs') | 
| var path = require('path') | 
| var test = require('tap').test | 
| var rimraf = require('rimraf') | 
| var writeStream = require('../index.js') | 
|   | 
| var target = path.resolve(__dirname, 'test-chown') | 
|   | 
| test('chown works', function (t) { | 
|   t.plan(1) | 
|   var stream = writeStream(target, {chown: {uid: process.getuid(), gid: process.getgid()}}) | 
|   var hadError = false | 
|   stream.on('error', function (er) { | 
|     hadError = true | 
|     console.log('#', er) | 
|   }) | 
|   stream.on('close', function () { | 
|     t.is(hadError, false, 'no errors before close') | 
|   }) | 
|   stream.end() | 
| }) | 
|   | 
| test('chown fails', function (t) { | 
|   t.plan(1) | 
|   fs.chown = function (file, uid, gid, cb) { | 
|     cb(new Error('TEST BREAK')) | 
|   } | 
|   var stream = writeStream(target, {chown: {uid: process.getuid(), gid: process.getgid()}}) | 
|   var hadError = false | 
|   stream.on('error', function (er) { | 
|     hadError = true | 
|     console.log('#', er) | 
|   }) | 
|   stream.on('close', function () { | 
|     t.is(hadError, true, 'error before close') | 
|   }) | 
|   stream.end() | 
| }) | 
|   | 
| test('cleanup', function (t) { | 
|   rimraf.sync(target) | 
|   t.end() | 
| }) |