Skip to content

Commit 2717334

Browse files
authored
feat: allow setting rdev on node (#1085)
This adds it to stat too, so rdev will propagate.
1 parent cdb0403 commit 2717334

File tree

3 files changed

+10
-1
lines changed

3 files changed

+10
-1
lines changed

src/Stats.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export class Stats<T = TStatNumber> {
2525
stats.uid = getStatNumber(uid);
2626
stats.gid = getStatNumber(gid);
2727

28-
stats.rdev = getStatNumber(0);
28+
stats.rdev = getStatNumber(node.rdev);
2929
stats.blksize = getStatNumber(4096);
3030
stats.ino = getStatNumber(node.ino);
3131
stats.size = getStatNumber(node.getSize());

src/__tests__/volume/statSync.test.ts

+8
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@ describe('.statSync(...)', () => {
1212
expect(stats.size).toBe(11);
1313
});
1414

15+
it('returns rdev', () => {
16+
const vol = create({});
17+
const fd = vol.openSync('/null', 'w');
18+
vol.fds[fd].node.rdev = 1;
19+
const stats = vol.statSync('/null');
20+
expect(stats.rdev).toBe(1);
21+
});
22+
1523
it('returns undefined for non-existent targets with the throwIfNoEntry option set to false', () => {
1624
const vol = create({});
1725

src/node.ts

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ export class Node extends EventEmitter {
2828

2929
// data: string = '';
3030
buf: Buffer;
31+
rdev: number = 0;
3132

3233
mode: number; // S_IFDIR, S_IFREG, etc..
3334

0 commit comments

Comments
 (0)