feat: allow excluding of certain releases
This commit is contained in:
@@ -28,10 +28,10 @@
|
||||
<stringProp name="Argument.value">${__property(port,,5000)}</stringProp>
|
||||
<stringProp name="Argument.metadata">=</stringProp>
|
||||
</elementProp>
|
||||
<elementProp name="exclude_extensions" elementType="Argument">
|
||||
<stringProp name="Argument.name">exclude_extensions</stringProp>
|
||||
<stringProp name="Argument.value"></stringProp>
|
||||
<stringProp name="Argument.desc">Comma separated values.</stringProp>
|
||||
<elementProp name="excludedExtensions" elementType="Argument">
|
||||
<stringProp name="Argument.name">excludedExtensions</stringProp>
|
||||
<stringProp name="Argument.value">discordbot</stringProp>
|
||||
<stringProp name="Argument.desc">Comma separated values, no spaces.</stringProp>
|
||||
<stringProp name="Argument.metadata">=</stringProp>
|
||||
</elementProp>
|
||||
</collectionProp>
|
||||
@@ -193,33 +193,24 @@
|
||||
<stringProp name="filename"></stringProp>
|
||||
<stringProp name="cacheKey">true</stringProp>
|
||||
<stringProp name="script">var resp = JSON.parse(prev.getResponseDataAsString());
|
||||
var excludedExtensions = (vars.get("excludedExtensions") || "").split(",");
|
||||
|
||||
var extensions = {};
|
||||
|
||||
for (var i = 0; i < resp.extensions.length; i++) {
|
||||
var ext = resp.extensions[i];
|
||||
extensions[ext.id] = true;
|
||||
if (excludedExtensions.indexOf(ext.id) === -1) {
|
||||
extensions[ext.id] = true;
|
||||
}
|
||||
}
|
||||
|
||||
extensionList = Object.keys(extensions);
|
||||
extensionList.push("xxxx");
|
||||
vars.put("extensions", extensionList);
|
||||
vars.put("extensionsLength", extensionList.length);
|
||||
</stringProp>
|
||||
</JSR223PostProcessor>
|
||||
<hashTree/>
|
||||
</hashTree>
|
||||
<JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Extract extensions" enabled="false">
|
||||
<stringProp name="cacheKey">true</stringProp>
|
||||
<stringProp name="filename"></stringProp>
|
||||
<stringProp name="parameters"></stringProp>
|
||||
<stringProp name="script">var extensions = vars.get("extensions") || ""
|
||||
extensionList = extensions.split(",")
|
||||
vars.put("extensionList", extensionList)
|
||||
vars.put("extensionsLength", extensionList.length)</stringProp>
|
||||
<stringProp name="scriptLanguage">javascript</stringProp>
|
||||
</JSR223Sampler>
|
||||
<hashTree/>
|
||||
<DebugSampler guiclass="TestBeanGUI" testclass="DebugSampler" testname="Debug Sampler" enabled="true">
|
||||
<boolProp name="displayJMeterProperties">false</boolProp>
|
||||
<boolProp name="displayJMeterVariables">true</boolProp>
|
||||
@@ -328,14 +319,6 @@ vars.put("extension", extensions.split(",")[extensionIndex])
|
||||
<intProp name="Assertion.test_type">8</intProp>
|
||||
</ResponseAssertion>
|
||||
<hashTree/>
|
||||
<JSR223PostProcessor guiclass="TestBeanGUI" testclass="JSR223PostProcessor" testname="Extract latest release" enabled="true">
|
||||
<stringProp name="scriptLanguage">groovy</stringProp>
|
||||
<stringProp name="parameters"></stringProp>
|
||||
<stringProp name="filename"></stringProp>
|
||||
<stringProp name="cacheKey">true</stringProp>
|
||||
<stringProp name="script"></stringProp>
|
||||
</JSR223PostProcessor>
|
||||
<hashTree/>
|
||||
</hashTree>
|
||||
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Install extension ${extension}" enabled="true">
|
||||
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
||||
|
||||
Reference in New Issue
Block a user