in src/Utils/LoadtestConfigUtil.ts [153:202]
private static parseFileConfiguration(loadtestConfig: LoadtestConfig, yamlConfig: YamlConfig, filePath: string) {
loadtestConfig.testPlan = pathLib.join(filePath, yamlConfig.testPlan);
loadtestConfig.configurationFiles = [];
if(yamlConfig.configurationFiles != undefined) {
var tempconfigFiles: string[] = [];
tempconfigFiles = yamlConfig.configurationFiles;
for(let file of tempconfigFiles){
if(loadtestConfig.kind == TestKind.URL && !Util.checkFileType(file, 'csv')){
throw new Error("Only CSV files are allowed as configuration files for a URL-based test.");
}
file = pathLib.join(filePath, file);
loadtestConfig.configurationFiles.push(file);
};
}
loadtestConfig.zipArtifacts = [];
if(yamlConfig.zipArtifacts != undefined){
var tempconfigFiles: string[] = [];
tempconfigFiles = yamlConfig.zipArtifacts;
if(loadtestConfig.kind == TestKind.URL && tempconfigFiles.length > 0){
throw new Error("Zip artifacts are not supported for the URL-based test.");
}
for(let file of tempconfigFiles){
file = pathLib.join(filePath, file);
loadtestConfig.zipArtifacts.push(file);
};
}
let framework : BaseLoadTestFrameworkModel = EngineUtil.getLoadTestFrameworkModelFromKind(loadtestConfig.kind);
if(yamlConfig.properties != undefined && yamlConfig.properties.userPropertyFile != undefined)
{
if(loadtestConfig.kind == TestKind.URL){
throw new Error("User property file is not supported for the URL-based test.");
}
let propFile = yamlConfig.properties.userPropertyFile;
loadtestConfig.propertyFile = pathLib.join(filePath, propFile);
if(!Util.checkFileTypes(yamlConfig.properties.userPropertyFile, framework.userPropertyFileExtensions)){
throw new Error(`User property file with extension other than ${framework.ClientResources.userPropertyFileExtensionsFriendly} is not permitted.`);
}
}
}