Skip to content

Commit 9c84d0e

Browse files
authored
Merge pull request #829 from browserstack/APS-10571-capture_content
APS-10571 Added network_logs_options capability for capture_content
2 parents bb1d56e + 96fda66 commit 9c84d0e

File tree

2 files changed

+149
-6
lines changed

2 files changed

+149
-6
lines changed

bin/helpers/utils.js

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1217,12 +1217,57 @@ exports.getNetworkErrorMessage = (dashboard_url) => {
12171217
}
12181218

12191219
exports.setNetworkLogs = (bsConfig) => {
1220-
if(bsConfig.run_settings.networkLogs == 'true' || bsConfig.run_settings.networkLogs == true) {
1220+
let capture_content = null
1221+
if(
1222+
(bsConfig.run_settings.networkLogs == 'true' || bsConfig.run_settings.networkLogs == true)
1223+
|| (bsConfig.run_settings.network_logs == 'true' || bsConfig.run_settings.network_logs == true)
1224+
) {
12211225
bsConfig.run_settings.networkLogs = 'true'
1226+
bsConfig.run_settings.network_logs = 'true'
1227+
if (
1228+
this.isNotUndefined(bsConfig.run_settings.networkLogsOptions)
1229+
&& typeof(bsConfig.run_settings.networkLogsOptions) === "object"
1230+
){
1231+
if (
1232+
bsConfig.run_settings.networkLogsOptions.captureContent == 'true'
1233+
|| bsConfig.run_settings.networkLogsOptions.captureContent == true
1234+
|| bsConfig.run_settings.networkLogsOptions.capture_content == 'true'
1235+
|| bsConfig.run_settings.networkLogsOptions.capture_content == true
1236+
) {
1237+
capture_content = 'true'
1238+
} else {
1239+
capture_content = 'false'
1240+
}
1241+
bsConfig.run_settings.networkLogsOptions = {capture_content}
1242+
bsConfig.run_settings.network_logs_options = {capture_content}
1243+
} else if (
1244+
this.isNotUndefined(bsConfig.run_settings.network_logs_options)
1245+
&& typeof(bsConfig.run_settings.network_logs_options) === "object"
1246+
) {
1247+
if (
1248+
bsConfig.run_settings.network_logs_options.captureContent == 'true'
1249+
|| bsConfig.run_settings.network_logs_options.captureContent == true
1250+
|| bsConfig.run_settings.network_logs_options.capture_content == 'true'
1251+
|| bsConfig.run_settings.network_logs_options.capture_content == true
1252+
){
1253+
capture_content = 'true'
1254+
} else {
1255+
capture_content = 'false'
1256+
}
1257+
bsConfig.run_settings.networkLogsOptions = {capture_content}
1258+
bsConfig.run_settings.network_logs_options = {capture_content}
1259+
} else {
1260+
bsConfig.run_settings.networkLogsOptions = null
1261+
bsConfig.run_settings.network_logs_options = null
1262+
}
12221263
} else {
12231264
bsConfig.run_settings.networkLogs = 'false'
1265+
bsConfig.run_settings.network_logs = 'false'
1266+
bsConfig.run_settings.networkLogsOptions = null
1267+
bsConfig.run_settings.network_logs_options = null
12241268
}
1225-
logger.debug(`Networks logs value: ${bsConfig.run_settings.networkLogs}`);
1269+
logger.debug(`Networks logs value: ${bsConfig.run_settings.network_logs}`);
1270+
logger.debug(`Networks logs options value: ${JSON.stringify(bsConfig.run_settings.network_logs_options)}`);
12261271
}
12271272

12281273
exports.versionChangedMessage = (preferredVersion, actualVersion, frameworkUpgradeMessage = '') => {

test/unit/bin/helpers/utils.js

Lines changed: 102 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3716,7 +3716,7 @@ describe('utils', () => {
37163716
run_settings: { networkLogs: true }
37173717
};
37183718
let expectResult = {
3719-
run_settings: { networkLogs: 'true' }
3719+
run_settings: { networkLogs: 'true', network_logs: 'true', networkLogsOptions: null, network_logs_options: null }
37203720
}
37213721
utils.setNetworkLogs(bsConfig);
37223722
expect(bsConfig).to.be.eql(expectResult);
@@ -3727,7 +3727,7 @@ describe('utils', () => {
37273727
run_settings: { networkLogs: "true" }
37283728
};
37293729
let expectResult = {
3730-
run_settings: { networkLogs: "true" }
3730+
run_settings: { networkLogs: "true", network_logs: 'true', networkLogsOptions: null, network_logs_options: null }
37313731
}
37323732
utils.setNetworkLogs(bsConfig);
37333733
expect(bsConfig).to.be.eql(expectResult);
@@ -3738,7 +3738,7 @@ describe('utils', () => {
37383738
run_settings: { networkLogs: "abc" }
37393739
};
37403740
let expectResult = {
3741-
run_settings: { networkLogs: "false" }
3741+
run_settings: { networkLogs: "false", network_logs: 'false', networkLogsOptions: null, network_logs_options: null }
37423742
}
37433743
utils.setNetworkLogs(bsConfig);
37443744
expect(bsConfig).to.be.eql(expectResult);
@@ -3749,7 +3749,105 @@ describe('utils', () => {
37493749
run_settings: { }
37503750
};
37513751
let expectResult = {
3752-
run_settings: { networkLogs: "false" }
3752+
run_settings: { networkLogs: "false", network_logs: 'false', networkLogsOptions: null, network_logs_options: null }
3753+
}
3754+
utils.setNetworkLogs(bsConfig);
3755+
expect(bsConfig).to.be.eql(expectResult);
3756+
});
3757+
3758+
it('should return true if networkLogsOptions.captureContent is passed as boolean true', () => {
3759+
let bsConfig = {
3760+
run_settings: { networkLogs: true, networkLogsOptions: {captureContent: true} }
3761+
};
3762+
let expectResult = {
3763+
run_settings: { networkLogs: 'true', network_logs: 'true', networkLogsOptions: {capture_content: 'true'}, network_logs_options: {capture_content: 'true'} }
3764+
}
3765+
utils.setNetworkLogs(bsConfig);
3766+
expect(bsConfig).to.be.eql(expectResult);
3767+
});
3768+
3769+
it('should return true if networkLogsOptions.captureContent is passed as string true', () => {
3770+
let bsConfig = {
3771+
run_settings: { networkLogs: true, networkLogsOptions: {captureContent: 'true'} }
3772+
};
3773+
let expectResult = {
3774+
run_settings: { networkLogs: 'true', network_logs: 'true', networkLogsOptions: {capture_content: 'true'}, network_logs_options: {capture_content: 'true'} }
3775+
}
3776+
utils.setNetworkLogs(bsConfig);
3777+
expect(bsConfig).to.be.eql(expectResult);
3778+
});
3779+
3780+
it('should return false if networkLogsOptions.captureContent is passed as any other non true value', () => {
3781+
let bsConfig = {
3782+
run_settings: { networkLogs: true, networkLogsOptions: {captureContent: 'abc'} }
3783+
};
3784+
let expectResult = {
3785+
run_settings: { networkLogs: 'true', network_logs: 'true', networkLogsOptions: {capture_content: 'false'}, network_logs_options: {capture_content: 'false'} }
3786+
}
3787+
utils.setNetworkLogs(bsConfig);
3788+
expect(bsConfig).to.be.eql(expectResult);
3789+
});
3790+
3791+
it('should return null if networkLogsOptions.captureContent is not passed', () => {
3792+
let bsConfig = {
3793+
run_settings: {networkLogs: true, }
3794+
};
3795+
let expectResult = {
3796+
run_settings: { networkLogs: 'true', network_logs: 'true', networkLogsOptions: null, network_logs_options: null }
3797+
}
3798+
utils.setNetworkLogs(bsConfig);
3799+
expect(bsConfig).to.be.eql(expectResult);
3800+
});
3801+
it('should return null if networkLogs is false', () => {
3802+
let bsConfig = {
3803+
run_settings: { networkLogs: false, networkLogsOptions: {captureContent: true} }
3804+
};
3805+
let expectResult = {
3806+
run_settings: { networkLogs: 'false', network_logs: 'false', networkLogsOptions: null, network_logs_options: null }
3807+
}
3808+
utils.setNetworkLogs(bsConfig);
3809+
expect(bsConfig).to.be.eql(expectResult);
3810+
});
3811+
3812+
it('should return true if network_logs_options.capture_content is passed as boolean true', () => {
3813+
let bsConfig = {
3814+
run_settings: { network_logs: true, network_logs_options: {capture_content: true} }
3815+
};
3816+
let expectResult = {
3817+
run_settings: { network_logs: 'true', networkLogs: 'true', network_logs_options: {capture_content: 'true'}, networkLogsOptions: {capture_content: 'true'} }
3818+
}
3819+
utils.setNetworkLogs(bsConfig);
3820+
expect(bsConfig).to.be.eql(expectResult);
3821+
});
3822+
3823+
it('should return true if network_logs_options.capture_content is passed as string true', () => {
3824+
let bsConfig = {
3825+
run_settings: { network_logs: true, network_logs_options: {capture_content: 'true'} }
3826+
};
3827+
let expectResult = {
3828+
run_settings: { network_logs: 'true', networkLogs: 'true', network_logs_options: {capture_content: 'true'}, networkLogsOptions: {capture_content: 'true'} }
3829+
}
3830+
utils.setNetworkLogs(bsConfig);
3831+
expect(bsConfig).to.be.eql(expectResult);
3832+
});
3833+
3834+
it('should return false if network_logs_options.capture_content is passed as any other non true value', () => {
3835+
let bsConfig = {
3836+
run_settings: { network_logs: true, network_logs_options: {capture_content: 'abc'} }
3837+
};
3838+
let expectResult = {
3839+
run_settings: { network_logs: 'true', networkLogs: 'true', network_logs_options: {capture_content: 'false'}, networkLogsOptions: {capture_content: 'false'} }
3840+
}
3841+
utils.setNetworkLogs(bsConfig);
3842+
expect(bsConfig).to.be.eql(expectResult);
3843+
});
3844+
3845+
it('should return null if network_logs is false', () => {
3846+
let bsConfig = {
3847+
run_settings: { network_logs: false, network_logs_options: {capture_content: 'true'} }
3848+
};
3849+
let expectResult = {
3850+
run_settings: { network_logs: 'false', networkLogs: 'false', networkLogsOptions: null, network_logs_options: null }
37533851
}
37543852
utils.setNetworkLogs(bsConfig);
37553853
expect(bsConfig).to.be.eql(expectResult);

0 commit comments

Comments
 (0)