pwd-fs 2.4.1 → 3.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.travis.yml +2 -3
- package/__tests__/__fmock.ts +45 -0
- package/__tests__/append.spec.ts +72 -0
- package/__tests__/bitmask.spec.ts +23 -0
- package/__tests__/chmod.spec.ts +78 -0
- package/__tests__/chown.spec.ts +88 -0
- package/{test → __tests__}/constructor.spec.ts +3 -6
- package/__tests__/copy.spec.ts +102 -0
- package/__tests__/mkdir.spec.ts +120 -0
- package/__tests__/read.spec.ts +92 -0
- package/__tests__/readdir.spec.ts +87 -0
- package/__tests__/remove.spec.ts +78 -0
- package/__tests__/rename.spec.ts +84 -0
- package/__tests__/stat.spec.ts +100 -0
- package/__tests__/symlink.spec.ts +95 -0
- package/__tests__/test.spec.ts +82 -0
- package/__tests__/write.spec.ts +104 -0
- package/appveyor.yml +2 -4
- package/jest.config.ts +14 -0
- package/lib/__tests__/__fmock.d.ts +5 -0
- package/lib/index.js +24 -0
- package/lib/powered-file-system.js +260 -0
- package/lib/recurse-io-sync.js +90 -0
- package/lib/recurse-io.js +194 -0
- package/lib/src/index.d.ts +6 -186
- package/lib/src/powered-file-system.d.ts +155 -0
- package/lib/src/recurse-io-sync.d.ts +10 -5
- package/lib/src/recurse-io.d.ts +14 -6
- package/package.json +18 -14
- package/readme.md +2 -15
- package/rollup.config.js +16 -0
- package/src/index.ts +29 -626
- package/src/powered-file-system.ts +525 -0
- package/src/recurse-io-sync.ts +77 -71
- package/src/recurse-io.ts +181 -176
- package/tsconfig.json +12 -5
- package/lib/src/index.js +0 -297
- package/lib/src/index.js.map +0 -1
- package/lib/src/recurse-io-sync.js +0 -83
- package/lib/src/recurse-io-sync.js.map +0 -1
- package/lib/src/recurse-io.js +0 -188
- package/lib/src/recurse-io.js.map +0 -1
- package/lib/test/append.spec.js +0 -99
- package/lib/test/append.spec.js.map +0 -1
- package/lib/test/bitmask.spec.js +0 -29
- package/lib/test/bitmask.spec.js.map +0 -1
- package/lib/test/chmod.spec.js +0 -104
- package/lib/test/chmod.spec.js.map +0 -1
- package/lib/test/chown.spec.js +0 -94
- package/lib/test/chown.spec.js.map +0 -1
- package/lib/test/constructor.spec.js +0 -20
- package/lib/test/constructor.spec.js.map +0 -1
- package/lib/test/copy.spec.js +0 -135
- package/lib/test/copy.spec.js.map +0 -1
- package/lib/test/mkdir.spec.js +0 -147
- package/lib/test/mkdir.spec.js.map +0 -1
- package/lib/test/read.spec.js +0 -104
- package/lib/test/read.spec.js.map +0 -1
- package/lib/test/readdir.spec.js +0 -112
- package/lib/test/readdir.spec.js.map +0 -1
- package/lib/test/remove.spec.js +0 -84
- package/lib/test/remove.spec.js.map +0 -1
- package/lib/test/rename.spec.js +0 -98
- package/lib/test/rename.spec.js.map +0 -1
- package/lib/test/stat.spec.js +0 -104
- package/lib/test/stat.spec.js.map +0 -1
- package/lib/test/symlink.spec.js +0 -118
- package/lib/test/symlink.spec.js.map +0 -1
- package/lib/test/test.spec.js +0 -89
- package/lib/test/test.spec.js.map +0 -1
- package/lib/test/write.spec.js +0 -133
- package/lib/test/write.spec.js.map +0 -1
- package/test/append.spec.ts +0 -125
- package/test/bitmask.spec.ts +0 -26
- package/test/chmod.spec.ts +0 -127
- package/test/chown.spec.ts +0 -118
- package/test/copy.spec.ts +0 -171
- package/test/mkdir.spec.ts +0 -187
- package/test/read.spec.ts +0 -130
- package/test/readdir.spec.ts +0 -134
- package/test/remove.spec.ts +0 -102
- package/test/rename.spec.ts +0 -122
- package/test/stat.spec.ts +0 -131
- package/test/symlink.spec.ts +0 -146
- package/test/test.spec.ts +0 -113
- package/test/write.spec.ts +0 -167
- /package/lib/{test → __tests__}/append.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/bitmask.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/chmod.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/chown.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/constructor.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/copy.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/mkdir.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/read.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/readdir.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/remove.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/rename.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/stat.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/symlink.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/test.spec.d.ts +0 -0
- /package/lib/{test → __tests__}/write.spec.d.ts +0 -0
package/lib/test/mkdir.spec.js
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const assert_1 = __importDefault(require("assert"));
|
|
7
|
-
const os_1 = __importDefault(require("os"));
|
|
8
|
-
const path_1 = require("path");
|
|
9
|
-
const mock_fs_1 = __importDefault(require("mock-fs"));
|
|
10
|
-
const chance_1 = __importDefault(require("chance"));
|
|
11
|
-
const src_1 = __importDefault(require("../src"));
|
|
12
|
-
describe('mkdir(src [, options])', () => {
|
|
13
|
-
beforeEach(() => {
|
|
14
|
-
const chance = new chance_1.default();
|
|
15
|
-
(0, mock_fs_1.default)({
|
|
16
|
-
'tmpdir': {
|
|
17
|
-
'binapp': chance.string(),
|
|
18
|
-
'libxbase': mock_fs_1.default.directory()
|
|
19
|
-
},
|
|
20
|
-
'flexapp': mock_fs_1.default.symlink({
|
|
21
|
-
path: 'tmpdir/binapp'
|
|
22
|
-
})
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
afterEach(mock_fs_1.default.restore);
|
|
26
|
-
it('Positive: Create directories in the working directory', async () => {
|
|
27
|
-
const pfs = new src_1.default();
|
|
28
|
-
const chance = new chance_1.default();
|
|
29
|
-
const base = chance.guid();
|
|
30
|
-
await pfs.mkdir(`./tmpdir/${base}`);
|
|
31
|
-
const exist = await pfs.test(`./tmpdir/${base}`);
|
|
32
|
-
(0, assert_1.default)(exist);
|
|
33
|
-
});
|
|
34
|
-
it(`Positive: Make current directory`, async () => {
|
|
35
|
-
const pfs = new src_1.default('./tmpdir');
|
|
36
|
-
await pfs.mkdir('.');
|
|
37
|
-
const exist = await pfs.test('.');
|
|
38
|
-
(0, assert_1.default)(exist);
|
|
39
|
-
});
|
|
40
|
-
it(`Positive: Make current directory, when current directory is absolute path`, async () => {
|
|
41
|
-
const pfs = new src_1.default('./tmpdir');
|
|
42
|
-
await pfs.mkdir(process.cwd());
|
|
43
|
-
const exist = await pfs.test('.');
|
|
44
|
-
(0, assert_1.default)(exist);
|
|
45
|
-
});
|
|
46
|
-
it('Positive: Should work fine with the existing directory', async () => {
|
|
47
|
-
const pfs = new src_1.default();
|
|
48
|
-
const chance = new chance_1.default();
|
|
49
|
-
const base = chance.guid();
|
|
50
|
-
for (const item of [base, base]) {
|
|
51
|
-
await pfs.mkdir(`./tmpdir/${item}`);
|
|
52
|
-
const exist = await pfs.test(`./tmpdir/${item}`);
|
|
53
|
-
(0, assert_1.default)(exist);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
it('Positive: Create directories when path is absolute', async () => {
|
|
57
|
-
const pfs = new src_1.default();
|
|
58
|
-
const chance = new chance_1.default();
|
|
59
|
-
const tmpdir = os_1.default.tmpdir();
|
|
60
|
-
const base = chance.guid();
|
|
61
|
-
await pfs.mkdir(`${tmpdir}${path_1.sep}${base}`, {
|
|
62
|
-
resolve: false
|
|
63
|
-
});
|
|
64
|
-
const exist = await pfs.test(`${tmpdir}${path_1.sep}${base}`);
|
|
65
|
-
(0, assert_1.default)(exist);
|
|
66
|
-
});
|
|
67
|
-
it('Negative: Throw an exception if trying to create a directory in file', async () => {
|
|
68
|
-
const pfs = new src_1.default();
|
|
69
|
-
const chance = new chance_1.default();
|
|
70
|
-
const base = chance.guid();
|
|
71
|
-
try {
|
|
72
|
-
await pfs.mkdir(`./tmpdir/binapp/${base}`);
|
|
73
|
-
}
|
|
74
|
-
catch (err) {
|
|
75
|
-
(0, assert_1.default)(err.errno === -20);
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
describe('sync mode', () => {
|
|
79
|
-
it('Positive: Create directories in the working directory', async () => {
|
|
80
|
-
const pfs = new src_1.default();
|
|
81
|
-
const chance = new chance_1.default();
|
|
82
|
-
const base = chance.guid();
|
|
83
|
-
pfs.mkdir(`./tmpdir/${base}`, {
|
|
84
|
-
sync: true
|
|
85
|
-
});
|
|
86
|
-
const exist = await pfs.test(`./tmpdir/${base}`);
|
|
87
|
-
(0, assert_1.default)(exist);
|
|
88
|
-
});
|
|
89
|
-
it('Positive: Make current directory', async () => {
|
|
90
|
-
const pfs = new src_1.default('./tmpdir');
|
|
91
|
-
pfs.mkdir('.', {
|
|
92
|
-
sync: true
|
|
93
|
-
});
|
|
94
|
-
const exist = await pfs.test('.');
|
|
95
|
-
(0, assert_1.default)(exist);
|
|
96
|
-
});
|
|
97
|
-
it('Positive: Should work fine with the existing directory', async () => {
|
|
98
|
-
const pfs = new src_1.default();
|
|
99
|
-
const chance = new chance_1.default();
|
|
100
|
-
const base = chance.guid();
|
|
101
|
-
for (const item of [base, base]) {
|
|
102
|
-
pfs.mkdir(`./tmpdir/${item}`, {
|
|
103
|
-
sync: true
|
|
104
|
-
});
|
|
105
|
-
const exist = await pfs.test(`./tmpdir/${item}`);
|
|
106
|
-
(0, assert_1.default)(exist);
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
it('Positive: Create directories when path is absolute', async () => {
|
|
110
|
-
const pfs = new src_1.default();
|
|
111
|
-
const chance = new chance_1.default();
|
|
112
|
-
const tmpdir = os_1.default.tmpdir();
|
|
113
|
-
const base = chance.guid();
|
|
114
|
-
pfs.mkdir(`${tmpdir}${path_1.sep}${base}`, {
|
|
115
|
-
sync: true,
|
|
116
|
-
resolve: false
|
|
117
|
-
});
|
|
118
|
-
const exist = await pfs.test(`${tmpdir}${path_1.sep}${base}`);
|
|
119
|
-
(0, assert_1.default)(exist);
|
|
120
|
-
});
|
|
121
|
-
it('Positive: Create in current directories when path is absolute', async () => {
|
|
122
|
-
const pfs = new src_1.default();
|
|
123
|
-
const chance = new chance_1.default();
|
|
124
|
-
const cwd = process.cwd();
|
|
125
|
-
const base = chance.guid();
|
|
126
|
-
pfs.mkdir(`${cwd}${path_1.sep}${base}`, {
|
|
127
|
-
sync: true,
|
|
128
|
-
resolve: false
|
|
129
|
-
});
|
|
130
|
-
const exist = await pfs.test(base);
|
|
131
|
-
(0, assert_1.default)(exist);
|
|
132
|
-
});
|
|
133
|
-
it('Negative: Throw an exception if trying to create a directory in file', async () => {
|
|
134
|
-
const pfs = new src_1.default();
|
|
135
|
-
const chance = new chance_1.default();
|
|
136
|
-
const base = chance.guid();
|
|
137
|
-
try {
|
|
138
|
-
pfs.mkdir(`./tmpdir/binapp/${base}`, {
|
|
139
|
-
sync: true
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
catch (err) {
|
|
143
|
-
(0, assert_1.default)(err.errno === -20);
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mkdir.spec.js","sourceRoot":"","sources":["../../test/mkdir.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/test/read.spec.js
DELETED
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const assert_1 = __importDefault(require("assert"));
|
|
7
|
-
const path_1 = require("path");
|
|
8
|
-
const mock_fs_1 = __importDefault(require("mock-fs"));
|
|
9
|
-
const chance_1 = __importDefault(require("chance"));
|
|
10
|
-
const src_1 = __importDefault(require("../src"));
|
|
11
|
-
describe('read(src [, options])', () => {
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
const chance = new chance_1.default();
|
|
14
|
-
(0, mock_fs_1.default)({
|
|
15
|
-
'tmpdir': {
|
|
16
|
-
'binapp': chance.string(),
|
|
17
|
-
'libxbase': mock_fs_1.default.directory()
|
|
18
|
-
},
|
|
19
|
-
'flexapp': mock_fs_1.default.symlink({
|
|
20
|
-
path: 'tmpdir/binapp'
|
|
21
|
-
})
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
afterEach(mock_fs_1.default.restore);
|
|
25
|
-
it('Positive: Must read content of file; String type by default', async () => {
|
|
26
|
-
const pfs = new src_1.default();
|
|
27
|
-
const raw = await pfs.read('./tmpdir/binapp');
|
|
28
|
-
(0, assert_1.default)(raw.length > 0);
|
|
29
|
-
});
|
|
30
|
-
it('Positive: Must read Buffer content of file when encoding is null', async () => {
|
|
31
|
-
const pfs = new src_1.default();
|
|
32
|
-
const raw = await pfs.read('./tmpdir/binapp', {
|
|
33
|
-
encoding: null
|
|
34
|
-
});
|
|
35
|
-
(0, assert_1.default)(raw instanceof Buffer);
|
|
36
|
-
});
|
|
37
|
-
it('Positive: Must read content of file, when path is absolute', async () => {
|
|
38
|
-
const pfs = new src_1.default();
|
|
39
|
-
const cwd = process.cwd();
|
|
40
|
-
const raw = await pfs.read(`${cwd}${path_1.sep}tmpdir${path_1.sep}binapp`, {
|
|
41
|
-
resolve: false
|
|
42
|
-
});
|
|
43
|
-
(0, assert_1.default)(raw.length > 0);
|
|
44
|
-
});
|
|
45
|
-
it('Negative: Throw if resource is not file', async () => {
|
|
46
|
-
const pfs = new src_1.default();
|
|
47
|
-
try {
|
|
48
|
-
await pfs.read(`./tmpdir/libxbase`);
|
|
49
|
-
}
|
|
50
|
-
catch (err) {
|
|
51
|
-
(0, assert_1.default)(err.errno === -21);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
55
|
-
const pfs = new src_1.default();
|
|
56
|
-
const chance = new chance_1.default();
|
|
57
|
-
const base = chance.guid();
|
|
58
|
-
try {
|
|
59
|
-
await pfs.read(`./${base}`);
|
|
60
|
-
}
|
|
61
|
-
catch (err) {
|
|
62
|
-
(0, assert_1.default)(err.errno === -2);
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
describe('sync mode', () => {
|
|
66
|
-
it('Positive: Must read content of file; String type by default', async () => {
|
|
67
|
-
const pfs = new src_1.default();
|
|
68
|
-
const { length } = pfs.read('./tmpdir/binapp', {
|
|
69
|
-
sync: true
|
|
70
|
-
});
|
|
71
|
-
(0, assert_1.default)(length > 0);
|
|
72
|
-
});
|
|
73
|
-
it('Positive: Must read Buffer content of file when encoding is null', async () => {
|
|
74
|
-
const pfs = new src_1.default();
|
|
75
|
-
const raw = pfs.read('./tmpdir/binapp', {
|
|
76
|
-
encoding: null,
|
|
77
|
-
sync: true
|
|
78
|
-
});
|
|
79
|
-
(0, assert_1.default)(raw instanceof Buffer);
|
|
80
|
-
});
|
|
81
|
-
it('Positive: Must read content of file, when path is absolute', async () => {
|
|
82
|
-
const pfs = new src_1.default();
|
|
83
|
-
const cwd = process.cwd();
|
|
84
|
-
const { length } = pfs.read(`${cwd}${path_1.sep}tmpdir${path_1.sep}binapp`, {
|
|
85
|
-
sync: true,
|
|
86
|
-
resolve: false
|
|
87
|
-
});
|
|
88
|
-
(0, assert_1.default)(length > 0);
|
|
89
|
-
});
|
|
90
|
-
it(`Negative: Throw if not exists resource`, async () => {
|
|
91
|
-
const pfs = new src_1.default();
|
|
92
|
-
const chance = new chance_1.default();
|
|
93
|
-
const base = chance.guid();
|
|
94
|
-
try {
|
|
95
|
-
pfs.read(`./${base}`, {
|
|
96
|
-
sync: true
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
catch (err) {
|
|
100
|
-
(0, assert_1.default)(err.errno === -2);
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read.spec.js","sourceRoot":"","sources":["../../test/read.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/test/readdir.spec.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const assert_1 = __importDefault(require("assert"));
|
|
7
|
-
const path_1 = require("path");
|
|
8
|
-
const mock_fs_1 = __importDefault(require("mock-fs"));
|
|
9
|
-
const chance_1 = __importDefault(require("chance"));
|
|
10
|
-
const src_1 = __importDefault(require("../src"));
|
|
11
|
-
describe('readdir(src[, options])', () => {
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
const chance = new chance_1.default();
|
|
14
|
-
(0, mock_fs_1.default)({
|
|
15
|
-
'tmpdir': {
|
|
16
|
-
'binapp': chance.string(),
|
|
17
|
-
'libxbase': mock_fs_1.default.directory()
|
|
18
|
-
},
|
|
19
|
-
'flexapp': mock_fs_1.default.symlink({
|
|
20
|
-
path: 'tmpdir/binapp'
|
|
21
|
-
})
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
afterEach(mock_fs_1.default.restore);
|
|
25
|
-
it('Positive: Must return a directory listing', async () => {
|
|
26
|
-
const pfs = new src_1.default();
|
|
27
|
-
const listOfFiles = await pfs.readdir('./tmpdir');
|
|
28
|
-
assert_1.default.deepStrictEqual(listOfFiles, [
|
|
29
|
-
'binapp',
|
|
30
|
-
'libxbase'
|
|
31
|
-
]);
|
|
32
|
-
});
|
|
33
|
-
it('Positive: Must return a directory listing, when path is absolute', async () => {
|
|
34
|
-
const pfs = new src_1.default();
|
|
35
|
-
const cwd = process.cwd();
|
|
36
|
-
const listOfFiles = await pfs.readdir(`${cwd}${path_1.sep}tmpdir`, {
|
|
37
|
-
resolve: false
|
|
38
|
-
});
|
|
39
|
-
assert_1.default.deepStrictEqual(listOfFiles, [
|
|
40
|
-
'binapp',
|
|
41
|
-
'libxbase'
|
|
42
|
-
]);
|
|
43
|
-
});
|
|
44
|
-
it('Negative: Throw if resource is not directory', async () => {
|
|
45
|
-
const pfs = new src_1.default();
|
|
46
|
-
try {
|
|
47
|
-
await pfs.readdir(`./tmpdir/binapp`);
|
|
48
|
-
}
|
|
49
|
-
catch (err) {
|
|
50
|
-
(0, assert_1.default)(err.errno === -20);
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
54
|
-
const pfs = new src_1.default();
|
|
55
|
-
const chance = new chance_1.default();
|
|
56
|
-
const base = chance.guid();
|
|
57
|
-
try {
|
|
58
|
-
await pfs.readdir(`./${base}`);
|
|
59
|
-
}
|
|
60
|
-
catch (err) {
|
|
61
|
-
(0, assert_1.default)(err.errno === -2);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
describe('sync mode', () => {
|
|
65
|
-
it('Positive: Must return a directory listing', async () => {
|
|
66
|
-
const pfs = new src_1.default();
|
|
67
|
-
const listOfFiles = pfs.readdir('./tmpdir', {
|
|
68
|
-
sync: true
|
|
69
|
-
});
|
|
70
|
-
assert_1.default.deepStrictEqual(listOfFiles, [
|
|
71
|
-
'binapp',
|
|
72
|
-
'libxbase'
|
|
73
|
-
]);
|
|
74
|
-
});
|
|
75
|
-
it('Positive: Must return a directory listing, when path is absolute', async () => {
|
|
76
|
-
const pfs = new src_1.default();
|
|
77
|
-
const cwd = process.cwd();
|
|
78
|
-
const listOfFiles = pfs.readdir(`${cwd}${path_1.sep}tmpdir`, {
|
|
79
|
-
sync: true,
|
|
80
|
-
resolve: false
|
|
81
|
-
});
|
|
82
|
-
assert_1.default.deepStrictEqual(listOfFiles, [
|
|
83
|
-
'binapp',
|
|
84
|
-
'libxbase'
|
|
85
|
-
]);
|
|
86
|
-
});
|
|
87
|
-
it('Negative: Throw if resource is not directory', async () => {
|
|
88
|
-
const pfs = new src_1.default();
|
|
89
|
-
try {
|
|
90
|
-
pfs.readdir(`./tmpdir/binapp`, {
|
|
91
|
-
sync: true
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
catch (err) {
|
|
95
|
-
(0, assert_1.default)(err.errno === -20);
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
it(`Negative: Throw if not exists resource`, async () => {
|
|
99
|
-
const pfs = new src_1.default();
|
|
100
|
-
const chance = new chance_1.default();
|
|
101
|
-
const base = chance.guid();
|
|
102
|
-
try {
|
|
103
|
-
pfs.readdir(`./${base}`, {
|
|
104
|
-
sync: true
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
catch (err) {
|
|
108
|
-
(0, assert_1.default)(err.errno === -2);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"readdir.spec.js","sourceRoot":"","sources":["../../test/readdir.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/test/remove.spec.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const assert_1 = __importDefault(require("assert"));
|
|
7
|
-
const path_1 = require("path");
|
|
8
|
-
const mock_fs_1 = __importDefault(require("mock-fs"));
|
|
9
|
-
const chance_1 = __importDefault(require("chance"));
|
|
10
|
-
const src_1 = __importDefault(require("../src"));
|
|
11
|
-
describe('remove(src [, options])', () => {
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
const chance = new chance_1.default();
|
|
14
|
-
(0, mock_fs_1.default)({
|
|
15
|
-
'tmpdir': {
|
|
16
|
-
'binapp': chance.string(),
|
|
17
|
-
'libxbase': mock_fs_1.default.directory()
|
|
18
|
-
},
|
|
19
|
-
'flexapp': mock_fs_1.default.symlink({
|
|
20
|
-
path: 'tmpdir/binapp'
|
|
21
|
-
})
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
afterEach(mock_fs_1.default.restore);
|
|
25
|
-
it('Positive: Removal a directory with a file', async () => {
|
|
26
|
-
const pfs = new src_1.default();
|
|
27
|
-
await pfs.remove('./tmpdir');
|
|
28
|
-
const exist = await pfs.test('./tmpdir');
|
|
29
|
-
(0, assert_1.default)(exist === false);
|
|
30
|
-
});
|
|
31
|
-
it('Positive: Removal a directory with a file, when path is absolute', async () => {
|
|
32
|
-
const pfs = new src_1.default();
|
|
33
|
-
const cwd = process.cwd();
|
|
34
|
-
await pfs.remove(`${cwd}${path_1.sep}tmpdir`, {
|
|
35
|
-
resolve: false
|
|
36
|
-
});
|
|
37
|
-
const exist = await pfs.test('./tmpdir');
|
|
38
|
-
(0, assert_1.default)(exist === false);
|
|
39
|
-
});
|
|
40
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
41
|
-
const pfs = new src_1.default();
|
|
42
|
-
const chance = new chance_1.default();
|
|
43
|
-
const base = chance.guid();
|
|
44
|
-
try {
|
|
45
|
-
await pfs.remove(`./${base}`);
|
|
46
|
-
}
|
|
47
|
-
catch (err) {
|
|
48
|
-
(0, assert_1.default)(err.errno === -2);
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
describe('sync mode', () => {
|
|
52
|
-
it('Positive: Removal a directory with a file', async () => {
|
|
53
|
-
const pfs = new src_1.default();
|
|
54
|
-
pfs.remove('./tmpdir', {
|
|
55
|
-
sync: true
|
|
56
|
-
});
|
|
57
|
-
const exist = await pfs.test('./tmpdir');
|
|
58
|
-
(0, assert_1.default)(exist === false);
|
|
59
|
-
});
|
|
60
|
-
it('Positive: Removal a directory with a file, when path is absolute', async () => {
|
|
61
|
-
const pfs = new src_1.default();
|
|
62
|
-
const cwd = process.cwd();
|
|
63
|
-
pfs.remove(`${cwd}${path_1.sep}tmpdir`, {
|
|
64
|
-
sync: true,
|
|
65
|
-
resolve: false
|
|
66
|
-
});
|
|
67
|
-
const exist = await pfs.test('./tmpdir');
|
|
68
|
-
(0, assert_1.default)(exist === false);
|
|
69
|
-
});
|
|
70
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
71
|
-
const pfs = new src_1.default();
|
|
72
|
-
const chance = new chance_1.default();
|
|
73
|
-
const base = chance.guid();
|
|
74
|
-
try {
|
|
75
|
-
pfs.remove(`./${base}`, {
|
|
76
|
-
sync: true
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
catch (err) {
|
|
80
|
-
(0, assert_1.default)(err.errno === -2);
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove.spec.js","sourceRoot":"","sources":["../../test/remove.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/test/rename.spec.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const assert_1 = __importDefault(require("assert"));
|
|
7
|
-
const path_1 = require("path");
|
|
8
|
-
const mock_fs_1 = __importDefault(require("mock-fs"));
|
|
9
|
-
const chance_1 = __importDefault(require("chance"));
|
|
10
|
-
const src_1 = __importDefault(require("../src"));
|
|
11
|
-
describe('rename(src, use [, options])', () => {
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
const chance = new chance_1.default();
|
|
14
|
-
(0, mock_fs_1.default)({
|
|
15
|
-
'tmpdir': {
|
|
16
|
-
'binapp': chance.string(),
|
|
17
|
-
'libxbase': mock_fs_1.default.directory()
|
|
18
|
-
},
|
|
19
|
-
'flexapp': mock_fs_1.default.symlink({
|
|
20
|
-
path: 'tmpdir/binapp'
|
|
21
|
-
})
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
afterEach(mock_fs_1.default.restore);
|
|
25
|
-
it('Positive: Must be recursive rename file', async () => {
|
|
26
|
-
const pfs = new src_1.default();
|
|
27
|
-
await pfs.rename('./tmpdir/binapp', './tmpdir/newapp');
|
|
28
|
-
const exist = await pfs.test('./tmpdir/newapp');
|
|
29
|
-
(0, assert_1.default)(exist);
|
|
30
|
-
});
|
|
31
|
-
it('Positive: Must be recursive rename directory', async () => {
|
|
32
|
-
const pfs = new src_1.default();
|
|
33
|
-
await pfs.rename('./tmpdir/libxbase', './tmpdir/newxbase');
|
|
34
|
-
const exist = await pfs.test('./tmpdir/newxbase');
|
|
35
|
-
(0, assert_1.default)(exist);
|
|
36
|
-
});
|
|
37
|
-
it('Positive: Must be recursive rename directory, when path is absolute', async () => {
|
|
38
|
-
const pfs = new src_1.default();
|
|
39
|
-
const cwd = process.cwd();
|
|
40
|
-
await pfs.rename(`${cwd}${path_1.sep}tmpdir`, `${cwd}${path_1.sep}newxbase`, {
|
|
41
|
-
resolve: false
|
|
42
|
-
});
|
|
43
|
-
const exist = await pfs.test('./newxbase');
|
|
44
|
-
(0, assert_1.default)(exist);
|
|
45
|
-
});
|
|
46
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
47
|
-
const pfs = new src_1.default();
|
|
48
|
-
const chance = new chance_1.default();
|
|
49
|
-
const base = chance.guid();
|
|
50
|
-
try {
|
|
51
|
-
await pfs.rename(`./${base}`, './tmpdir/newapp');
|
|
52
|
-
}
|
|
53
|
-
catch (err) {
|
|
54
|
-
(0, assert_1.default)(err.errno === -2);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
describe('sync mode', () => {
|
|
58
|
-
it('Positive: Must be recursive rename file', async () => {
|
|
59
|
-
const pfs = new src_1.default();
|
|
60
|
-
pfs.rename('./tmpdir/binapp', './tmpdir/newapp', {
|
|
61
|
-
sync: true
|
|
62
|
-
});
|
|
63
|
-
const exist = await pfs.test('./tmpdir/newapp');
|
|
64
|
-
(0, assert_1.default)(exist);
|
|
65
|
-
});
|
|
66
|
-
it('Positive: Must be recursive rename directory', async () => {
|
|
67
|
-
const pfs = new src_1.default();
|
|
68
|
-
pfs.rename('./tmpdir/libxbase', './tmpdir/newxbase', {
|
|
69
|
-
sync: true
|
|
70
|
-
});
|
|
71
|
-
const exist = await pfs.test('./tmpdir/newxbase');
|
|
72
|
-
(0, assert_1.default)(exist);
|
|
73
|
-
});
|
|
74
|
-
it('Positive: Must be recursive rename directory, when path is absolute', async () => {
|
|
75
|
-
const pfs = new src_1.default();
|
|
76
|
-
const cwd = process.cwd();
|
|
77
|
-
pfs.rename(`${cwd}${path_1.sep}tmpdir`, `${cwd}${path_1.sep}newxbase`, {
|
|
78
|
-
sync: true,
|
|
79
|
-
resolve: false
|
|
80
|
-
});
|
|
81
|
-
const exist = await pfs.test('./newxbase');
|
|
82
|
-
(0, assert_1.default)(exist);
|
|
83
|
-
});
|
|
84
|
-
it('Negative: Throw if not exists resource', async () => {
|
|
85
|
-
const pfs = new src_1.default();
|
|
86
|
-
const chance = new chance_1.default();
|
|
87
|
-
const base = chance.guid();
|
|
88
|
-
try {
|
|
89
|
-
pfs.rename(`./${base}`, './tmpdir/newapp', {
|
|
90
|
-
sync: true
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
catch (err) {
|
|
94
|
-
(0, assert_1.default)(err.errno === -2);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rename.spec.js","sourceRoot":"","sources":["../../test/rename.spec.ts"],"names":[],"mappings":"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"}
|