Skip to content

Commit

Permalink
test: udpates
Browse files Browse the repository at this point in the history
  • Loading branch information
snitin315 committed Feb 17, 2021
1 parent a224617 commit a6fa2c5
Show file tree
Hide file tree
Showing 9 changed files with 117 additions and 91 deletions.
42 changes: 27 additions & 15 deletions test/e2e/DevServer.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,22 @@ describe('DevServer', () => {
});

it('should add devServer entry points to a multi entry point object', (done) => {
testBin('--config ./test/fixtures/dev-server/multi-entry.js')
testBin(
'--config ./test/fixtures/dev-server/multi-entry.js --stats=verbose'
)
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('client/default/index.js?');
expect(output.stderr).toContain('foo.js');
expect(output.stderr).toContain('bar.js');
done();
})
.catch(done);
});

webpack5Test('should supports entry as descriptor', (done) => {
testBin('--config ./test/fixtures/entry-as-descriptor/webpack.config --stats detailed')
testBin(
'--config ./test/fixtures/entry-as-descriptor/webpack.config --stats detailed'
)
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('foo.js');
Expand All @@ -39,7 +42,9 @@ describe('DevServer', () => {
});

it('should only prepends devServer entry points to "web" target', (done) => {
testBin('--config ./test/fixtures/dev-server/default-config.js --target web')
testBin(
'--config ./test/fixtures/dev-server/default-config.js --target web'
)
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('client/default/index.js?');
Expand All @@ -50,7 +55,9 @@ describe('DevServer', () => {
});

it('should not prepend devServer entry points to "node" target', (done) => {
testBin('--config ./test/fixtures/dev-server/default-config.js --target node')
testBin(
'--config ./test/fixtures/dev-server/default-config.js --target node'
)
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).not.toContain('client/default/index.js?');
Expand All @@ -61,7 +68,9 @@ describe('DevServer', () => {
});

it('should prepends the hot runtime to "node" target as well', (done) => {
testBin('--config ./test/fixtures/dev-server/default-config.js --target node --hot')
testBin(
'--config ./test/fixtures/dev-server/default-config.js --target node --hot'
)
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('webpack/hot/dev-server');
Expand Down Expand Up @@ -90,13 +99,16 @@ describe('DevServer', () => {
.catch(done);
});

it('should prepend devServer entry points depending on targetProperties', (done) => {
testBin('--config ./test/fixtures/dev-server/target-config.js')
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('client/default/index.js');
done();
})
.catch(done);
});
webpack5Test(
'should prepend devServer entry points depending on targetProperties',
(done) => {
testBin('--config ./test/fixtures/dev-server/target-config.js')
.then((output) => {
expect(output.exitCode).toEqual(0);
expect(output.stderr).toContain('client/default/index.js');
done();
})
.catch(done);
}
);
});
2 changes: 2 additions & 0 deletions test/fixtures/dev-server/bar.js
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
'use strict';

console.log('I am bar');
28 changes: 15 additions & 13 deletions test/fixtures/dev-server/client-custom-path-config.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
'use strict';

const { resolve } = require('path');

module.exports = {
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
}
}
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
},
};
28 changes: 15 additions & 13 deletions test/fixtures/dev-server/client-default-path-config.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
'use strict';

const { resolve } = require('path');

module.exports = {
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/ws',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
}
}
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/ws',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
},
};
28 changes: 15 additions & 13 deletions test/fixtures/dev-server/default-config.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
'use strict';

const { resolve } = require('path');

module.exports = {
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
}
}
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
},
};
2 changes: 2 additions & 0 deletions test/fixtures/dev-server/foo.js
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
'use strict';

console.log('I am foo');
30 changes: 16 additions & 14 deletions test/fixtures/dev-server/multi-entry.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
'use strict';

const { resolve } = require('path');

module.exports = {
mode: 'development',
stats: 'detailed',
context: __dirname,
entry: {
foo: resolve(__dirname, './foo.js'),
bar: resolve(__dirname, './bar.js'),
},
devServer: {
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
}
}
mode: 'development',
stats: 'detailed',
context: __dirname,
entry: {
foo: resolve(__dirname, './foo.js'),
bar: resolve(__dirname, './bar.js'),
},
devServer: {
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
},
};
38 changes: 20 additions & 18 deletions test/fixtures/dev-server/target-config.js
Original file line number Diff line number Diff line change
@@ -1,22 +1,24 @@
'use strict';

const { resolve } = require('path');

module.exports = {
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
target: ['web', 'webworker'],
output: {
chunkLoading: false,
wasmLoading: false,
workerChunkLoading: false,
mode: 'development',
stats: 'detailed',
entry: resolve(__dirname, './foo.js'),
target: ['web', 'webworker'],
output: {
chunkLoading: false,
wasmLoading: false,
workerChunkLoading: false,
},
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
devServer: {
client: {
path: '/custom/path',
},
transportMode: {
server: 'sockjs',
client: 'sockjs',
},
}
}
},
};
10 changes: 5 additions & 5 deletions test/server/utils/updateCompiler.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ describe('updateCompiler', () => {
expect(compiler.hooks.entryOption.taps.length).toBe(1);
expect(tapsByHMR).toEqual(0);
expect(tapsByProvidePlugin).toEqual(1);
expect(tapsByDevServerPlugin).toEqual(isWebpack5 ? 1 : 0);
expect(tapsByDevServerPlugin).toEqual(0);
expect(compiler.options.plugins).toHaveLength(0);
});
});
Expand Down Expand Up @@ -87,7 +87,7 @@ describe('updateCompiler', () => {
expect(compiler.hooks.entryOption.taps.length).toBe(1);
expect(tapsByHMR).toEqual(1);
expect(tapsByProvidePlugin).toEqual(1);
expect(tapsByDevServerPlugin).toEqual(isWebpack5 ? 1 : 0);
expect(tapsByDevServerPlugin).toEqual(0);
});
});

Expand Down Expand Up @@ -131,8 +131,8 @@ describe('updateCompiler', () => {

expect(compiler.hooks.entryOption.taps.length).toBe(1);
expect(tapsByHMR).toEqual(1);
expect(tapsByProvidePlugin).toEqual(1);
expect(tapsByDevServerPlugin).toEqual(isWebpack5 ? 1 : 0);
expect(tapsByProvidePlugin).toEqual(isWebpack5 ? 4 : 1);
expect(tapsByDevServerPlugin).toEqual(0);
expect(compiler.options.plugins).toContainEqual(
new webpack.HotModuleReplacementPlugin()
);
Expand Down Expand Up @@ -181,7 +181,7 @@ describe('updateCompiler', () => {
expect(compiler.hooks.entryOption.taps.length).toBe(1);
expect(tapsByHMR).toEqual(1);
expect(tapsByProvidePlugin).toEqual(1);
expect(tapsByDevServerPlugin).toEqual(isWebpack5 ? 1 : 0);
expect(tapsByDevServerPlugin).toEqual(0);
});
});
});
Expand Down

0 comments on commit a6fa2c5

Please sign in to comment.