fs: add bytesRead to ReadStream · nodejs/node@4a87abb
@@ -10,13 +10,18 @@ var rangeFile = path.join(common.fixturesDir, 'x.txt');
1010var callbacks = { open: 0, end: 0, close: 0 };
11111212var paused = false;
13+var bytesRead = 0;
13141415var file = fs.ReadStream(fn);
16+var fileSize = fs.statSync(fn).size;
17+18+assert.strictEqual(file.bytesRead, 0);
15191620file.on('open', function(fd) {
1721file.length = 0;
1822callbacks.open++;
1923assert.equal('number', typeof fd);
24+assert.strictEqual(file.bytesRead, 0);
2025assert.ok(file.readable);
21262227// GH-535
@@ -31,6 +36,9 @@ file.on('data', function(data) {
3136assert.ok(!paused);
3237file.length += data.length;
333839+bytesRead += data.length;
40+assert.strictEqual(file.bytesRead, bytesRead);
41+3442paused = true;
3543file.pause();
3644@@ -42,11 +50,15 @@ file.on('data', function(data) {
425043514452file.on('end', function(chunk) {
53+assert.strictEqual(bytesRead, fileSize);
54+assert.strictEqual(file.bytesRead, fileSize);
4555callbacks.end++;
4656});
475748584959file.on('close', function() {
60+assert.strictEqual(bytesRead, fileSize);
61+assert.strictEqual(file.bytesRead, fileSize);
5062callbacks.close++;
51635264//assert.equal(fs.readFileSync(fn), fileContent);