Use sinon for mocking server response in UI func tests for logs
Closes-Bug: #1519752 Change-Id: I62859dca7fa5c138b012d4c5fd4e184c941fb992
This commit is contained in:
parent
6993ec2274
commit
0f013ad3aa
|
@ -286,6 +286,10 @@ gulp.task('build', function(cb) {
|
||||||
new webpack.DefinePlugin({'process.env': {NODE_ENV: '"production"'}})
|
new webpack.DefinePlugin({'process.env': {NODE_ENV: '"production"'}})
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
if (argv['extra-entries']) {
|
||||||
|
config.entry = config.entry.concat(argv['extra-entries'].split(','));
|
||||||
|
}
|
||||||
|
|
||||||
if (argv.uglify !== false) {
|
if (argv.uglify !== false) {
|
||||||
config.devtool = 'source-map';
|
config.devtool = 'source-map';
|
||||||
config.plugins.push(
|
config.plugins.push(
|
||||||
|
|
|
@ -81,7 +81,7 @@
|
||||||
"nlf": "~1.3.2",
|
"nlf": "~1.3.2",
|
||||||
"react-addons-test-utils": "0.14.3",
|
"react-addons-test-utils": "0.14.3",
|
||||||
"selenium-standalone": "~4.4.0",
|
"selenium-standalone": "~4.4.0",
|
||||||
"sinon": "~1.15.3",
|
"sinon": "1.17.2",
|
||||||
"webpack-dev-server": "1.14.0"
|
"webpack-dev-server": "1.14.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,9 +57,24 @@ define([
|
||||||
// Change the selected value for the "Level" dropdown to DEBUG
|
// Change the selected value for the "Level" dropdown to DEBUG
|
||||||
.clickByCssSelector('.sticker select[name=level] option[value=DEBUG]')
|
.clickByCssSelector('.sticker select[name=level] option[value=DEBUG]')
|
||||||
.assertElementEnabled(showLogsButtonSelector, '"Show" button is enabled after source change')
|
.assertElementEnabled(showLogsButtonSelector, '"Show" button is enabled after source change')
|
||||||
|
.execute(function() {
|
||||||
|
window.fakeServer = sinon.fakeServer.create();
|
||||||
|
window.fakeServer.autoRespond = true;
|
||||||
|
window.fakeServer.autoRespondAfter = 1000;
|
||||||
|
window.fakeServer.respondWith(/\/api\/logs.*/, [
|
||||||
|
200, {'Content-Type': 'application/json'},
|
||||||
|
JSON.stringify({
|
||||||
|
from: 1,
|
||||||
|
entries: [['Date', 'INFO', 'Test Log Entry']]
|
||||||
|
})
|
||||||
|
]);
|
||||||
|
})
|
||||||
.clickByCssSelector(showLogsButtonSelector)
|
.clickByCssSelector(showLogsButtonSelector)
|
||||||
.assertElementDisappears('.logs-tab div.progress', 5000, 'Wait till Progress bar disappears')
|
.assertElementDisappears('.logs-tab div.progress', 5000, 'Wait till Progress bar disappears')
|
||||||
.assertElementsAppear('.log-entries > tbody > tr', 5000, 'Log entries are loaded')
|
.assertElementsAppear('.log-entries > tbody > tr', 5000, 'Log entries are shown')
|
||||||
|
.execute(function() {
|
||||||
|
window.fakeServer.restore();
|
||||||
|
})
|
||||||
// "Other servers" option is present in "Logs" dropdown
|
// "Other servers" option is present in "Logs" dropdown
|
||||||
.clickByCssSelector('.sticker select[name=type] > option[value=remote]')
|
.clickByCssSelector('.sticker select[name=type] > option[value=remote]')
|
||||||
.assertElementExists('.sticker select[name=node] > option', '"Node" dropdown is present');
|
.assertElementExists('.sticker select[name=node] > option', '"Node" dropdown is present');
|
||||||
|
|
|
@ -21,6 +21,7 @@ module.exports = {
|
||||||
},
|
},
|
||||||
{test: /\/expression\/parser\.js$/, loader: 'exports?parser'},
|
{test: /\/expression\/parser\.js$/, loader: 'exports?parser'},
|
||||||
{test: require.resolve('jquery'), loader: 'expose?jQuery!expose?$'},
|
{test: require.resolve('jquery'), loader: 'expose?jQuery!expose?$'},
|
||||||
|
{test: /\/sinon\.js$/, loader: 'imports?this=>window,define=>false,exports=>false,module=>false,require=>false'},
|
||||||
{test: /\.css$/, loader: 'style!css!postcss'},
|
{test: /\.css$/, loader: 'style!css!postcss'},
|
||||||
{test: /\.less$/, loader: 'style!css!postcss!less'},
|
{test: /\.less$/, loader: 'style!css!postcss!less'},
|
||||||
{test: /\.html$/, loader: 'raw'},
|
{test: /\.html$/, loader: 'raw'},
|
||||||
|
@ -34,7 +35,8 @@ module.exports = {
|
||||||
modulesDirectories: ['static', 'node_modules', 'vendor/custom'],
|
modulesDirectories: ['static', 'node_modules', 'vendor/custom'],
|
||||||
extensions: ['', '.js'],
|
extensions: ['', '.js'],
|
||||||
alias: {
|
alias: {
|
||||||
underscore: 'lodash'
|
underscore: 'lodash',
|
||||||
|
sinon: 'sinon/pkg/sinon.js'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
node: {},
|
node: {},
|
||||||
|
|
Loading…
Reference in New Issue