Skip to content

Commit 37e26aa

Browse files
committed
chore: lower devDeps, simplify test paths resolving
Signed-off-by: Charlike Mike Reagent <[email protected]>
1 parent 37711f7 commit 37e26aa

11 files changed

+60
-107
lines changed

package.json

-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
"eslint-config-prettier": "^6.10.0",
2424
"eslint-plugin-import": "^2.20.0",
2525
"eslint-plugin-prettier": "^3.1.2",
26-
"findit": "^0.1.2",
27-
"hashish": "^0.0.4",
2826
"prettier": "^1.19.1",
2927
"prettier-plugin-pkgjson": "^0.2.0",
3028
"request": "^2.11.4",

test/common.js

-21
This file was deleted.

test/integration/test-fixtures.js

+33-26
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,53 @@
44
'use strict';
55

66
const fs = require('fs');
7+
const net = require('net');
78
const path = require('path');
89
const http = require('http');
9-
const net = require('net');
1010
const assert = require('assert');
11-
const findit = require('findit');
12-
const hashish = require('hashish');
1311

14-
const common = require('../common');
1512
const Formidable = require('../../src/index');
1613

14+
const PORT = 13532;
15+
const CWD = process.cwd();
16+
const FIXTURES_PATH = path.join(CWD, 'test', 'fixture', 'js');
17+
const FIXTURES_HTTP = path.join(CWD, 'test', 'fixture', 'http');
18+
const UPLOAD_DIR = path.join(CWD, 'test', 'tmp');
19+
1720
const server = http.createServer();
18-
server.listen(common.port, findFixtures);
21+
server.listen(PORT, findFixtures);
1922

2023
function findFixtures() {
21-
const fixtures = [];
22-
findit.sync(path.join(common.dir.fixture, 'js')).forEach((jsPath) => {
23-
if (!/\.js$/.test(jsPath) || /workarounds/.test(jsPath)) return;
24-
25-
const group = path.basename(jsPath, '.js');
26-
hashish.forEach(require(jsPath), (fixture, name) => {
27-
fixtures.push({
28-
name: `${group}/${name}`,
29-
fixture,
24+
const results = fs
25+
.readdirSync(FIXTURES_PATH)
26+
.filter((x) => /\.js$/.test(x) && !/workarounds/.test(x))
27+
.reduce((acc, fp) => {
28+
const group = path.basename(fp, '.js');
29+
const filepath = path.join(FIXTURES_PATH, fp);
30+
const mod = require(filepath);
31+
32+
Object.keys(mod).forEach((k) => {
33+
Object.keys(mod[k]).forEach((_fixture) => {
34+
acc.push({
35+
fixture: mod[k],
36+
name: path.join(group, k),
37+
});
38+
});
3039
});
31-
});
32-
});
3340

34-
testNext(fixtures);
41+
return acc;
42+
}, []);
43+
44+
testNext(results);
3545
}
3646

37-
function testNext(fixtures) {
38-
let fixture = fixtures.shift();
47+
function testNext(results) {
48+
let fixture = results.shift();
3949
if (!fixture) {
4050
server.close();
4151
return;
4252
}
4353
const fixtureName = fixture.name;
44-
4554
fixture = fixture.fixture;
4655

4756
uploadFixture(fixtureName, (err, parts) => {
@@ -62,15 +71,13 @@ function testNext(fixtures) {
6271
}
6372
});
6473

65-
testNext(fixtures);
74+
testNext(results);
6675
});
6776
}
6877

6978
function uploadFixture(fixtureName, cb) {
7079
server.once('request', (req, res) => {
71-
const form = new Formidable();
72-
form.uploadDir = common.dir.tmp;
73-
form.hash = 'sha1';
80+
const form = new Formidable({ uploadDir: UPLOAD_DIR, hash: 'sha1' });
7481
form.parse(req);
7582

7683
function callback(...args) {
@@ -96,8 +103,8 @@ function uploadFixture(fixtureName, cb) {
96103
});
97104
});
98105

99-
const socket = net.createConnection(common.port);
100-
const fixturePath = path.join(common.dir.fixture, 'http', fixtureName);
106+
const socket = net.createConnection(PORT);
107+
const fixturePath = path.join(FIXTURES_HTTP, fixtureName);
101108
const file = fs.createReadStream(fixturePath);
102109

103110
file.pipe(socket, { end: false });

test/integration/test-json.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33
const http = require('http');
44
const assert = require('assert');
5-
const common = require('../common');
65
const Formidable = require('../../src/index');
76

87
const testData = {
98
numbers: [1, 2, 3, 4, 5],
109
nested: { key: 'value' },
1110
};
1211

12+
const PORT = 13532;
1313
const server = http.createServer((req, res) => {
1414
const form = new Formidable();
1515

@@ -21,11 +21,11 @@ const server = http.createServer((req, res) => {
2121
});
2222
});
2323

24-
server.listen(common.port, (err) => {
24+
server.listen(PORT, (err) => {
2525
assert.equal(err, null);
2626

2727
const request = http.request({
28-
port: common.port,
28+
port: PORT,
2929
method: 'POST',
3030
headers: {
3131
'Content-Type': 'application/json',

test/integration/test-octet-stream.js

+9-4
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,14 @@ const assert = require('assert');
77
const hashish = require('hashish');
88

99
const Formidable = require('../../src/index');
10-
const common = require('../common');
1110

12-
const testFilePath = path.join(__dirname, '../fixture/file/binaryfile.tar.gz');
11+
const PORT = 13532;
12+
const testFilePath = path.join(
13+
path.dirname(__dirname),
14+
'fixture',
15+
'file',
16+
'binaryfile.tar.gz',
17+
);
1318

1419
const server = http.createServer((req, res) => {
1520
const form = new Formidable();
@@ -30,11 +35,11 @@ const server = http.createServer((req, res) => {
3035
});
3136
});
3237

33-
server.listen(common.port, (err) => {
38+
server.listen(PORT, (err) => {
3439
assert.equal(err, null);
3540

3641
const request = http.request({
37-
port: common.port,
42+
port: PORT,
3843
method: 'POST',
3944
headers: {
4045
'Content-Type': 'application/octet-stream',

test/standalone/test-content-transfer-encoding.js

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
'use strict';
22

3-
const assert = require('assert');
3+
const path = require('path');
44
const http = require('http');
5-
const common = require('../common');
5+
const assert = require('assert');
6+
67
const Formidable = require('../../src/index');
78

9+
const UPLOAD_DIR = path.join(process.cwd(), 'test', 'tmp');
10+
811
const server = http.createServer((req, res) => {
912
const form = new Formidable();
10-
form.uploadDir = common.dir.tmp;
13+
form.uploadDir = UPLOAD_DIR;
1114
form.on('end', () => {
1215
throw new Error('Unexpected "end" event');
1316
});

test/standalone/test-issue-46.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'use strict';
22

33
const http = require('http');
4-
const request = require('request');
54
const assert = require('assert');
5+
const request = require('request');
66
const Formidable = require('../../src/index');
77

88
const host = 'localhost';

test/standalone/test-keep-alive-error.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'use strict';
22

3-
const assert = require('assert');
4-
const http = require('http');
53
const net = require('net');
4+
const http = require('http');
5+
const assert = require('assert');
66
const Formidable = require('../../src/index');
77

88
let ok = 0;

test/unit/test-file.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
'use strict';
22

3+
const assert = require('assert');
34
const test = require('utest');
4-
const common = require('../common');
55

6-
const { assert } = common;
7-
const File = common.require('file');
6+
const { File } = require('../../src/file');
87

98
let file;
109
const now = new Date();
10+
1111
test('IncomingForm', {
1212
before() {
1313
file = new File({

test/unit/test-incoming-form.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
const path = require('path');
66
const assert = require('assert');
77
const Request = require('http').ClientRequest;
8-
const test = require('utest');
9-
const common = require('../common');
108

11-
const { IncomingForm } = common.require('incoming_form');
9+
const test = require('utest');
10+
const { IncomingForm } = require('../../src/incoming_form');
1211

1312
let form;
13+
1414
test('IncomingForm', {
1515
before() {
1616
form = new IncomingForm();

yarn.lock

-39
Original file line numberDiff line numberDiff line change
@@ -210,13 +210,6 @@ caseless@~0.12.0:
210210
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
211211
integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
212212

213-
"chainsaw@>=0.0.7 <0.1":
214-
version "0.0.9"
215-
resolved "https://registry.yarnpkg.com/chainsaw/-/chainsaw-0.0.9.tgz#11a05102d1c4c785b6d0415d336d5a3a1612913e"
216-
integrity sha1-EaBRAtHEx4W20EFdM21aOhYSkT4=
217-
dependencies:
218-
traverse ">=0.3.0 <0.4"
219-
220213
chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2:
221214
version "2.4.2"
222215
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
@@ -667,13 +660,6 @@ find-up@^2.0.0, find-up@^2.1.0:
667660
dependencies:
668661
locate-path "^2.0.0"
669662

670-
findit@^0.1.2:
671-
version "0.1.2"
672-
resolved "https://registry.yarnpkg.com/findit/-/findit-0.1.2.tgz#ac7fe600cd6a32a35672836b74cf6f1dde2e11f8"
673-
integrity sha1-rH/mAM1qMqNWcoNrdM9vHd4uEfg=
674-
dependencies:
675-
seq ">=0.1.7"
676-
677663
flat-cache@^2.0.1:
678664
version "2.0.1"
679665
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0"
@@ -809,13 +795,6 @@ has@^1.0.3:
809795
dependencies:
810796
function-bind "^1.1.1"
811797

812-
"hashish@>=0.0.2 <0.1", hashish@^0.0.4:
813-
version "0.0.4"
814-
resolved "https://registry.yarnpkg.com/hashish/-/hashish-0.0.4.tgz#6d60bc6ffaf711b6afd60e426d077988014e6554"
815-
integrity sha1-bWC8b/r3Ebav1g5CbQd5iAFOZVQ=
816-
dependencies:
817-
traverse ">=0.2.4"
818-
819798
hosted-git-info@^2.1.4:
820799
version "2.8.5"
821800
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c"
@@ -1472,14 +1451,6 @@ semver@^6.1.2:
14721451
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
14731452
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
14741453

1475-
seq@>=0.1.7:
1476-
version "0.3.5"
1477-
resolved "https://registry.yarnpkg.com/seq/-/seq-0.3.5.tgz#ae02af3a424793d8ccbf212d69174e0c54dffe38"
1478-
integrity sha1-rgKvOkJHk9jMvyEtaRdODFTf/jg=
1479-
dependencies:
1480-
chainsaw ">=0.0.7 <0.1"
1481-
hashish ">=0.0.2 <0.1"
1482-
14831454
shebang-command@^1.2.0:
14841455
version "1.2.0"
14851456
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
@@ -1680,16 +1651,6 @@ tough-cookie@~2.4.3:
16801651
psl "^1.1.24"
16811652
punycode "^1.4.1"
16821653

1683-
traverse@>=0.2.4:
1684-
version "0.6.6"
1685-
resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.6.tgz#cbdf560fd7b9af632502fed40f918c157ea97137"
1686-
integrity sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=
1687-
1688-
"traverse@>=0.3.0 <0.4":
1689-
version "0.3.9"
1690-
resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.3.9.tgz#717b8f220cc0bb7b44e40514c22b2e8bbc70d8b9"
1691-
integrity sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=
1692-
16931654
tslib@^1.9.0:
16941655
version "1.10.0"
16951656
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"

0 commit comments

Comments
 (0)