SmartBear / soapui

SoapUI is a free and open source cross-platform functional testing solution for APIs and web services.
http://www.soapui.org
Other
1.56k stars 607 forks source link

Bugfix for PropertyExpander (issue #767) #768

Open onetr1ck opened 1 year ago

onetr1ck commented 1 year ago

The property expander malforms SOAP-Requests if there are ${ present in it which are not part of a Property name. Property names must always start with ${ and end with } and have not any linebreaks in it. Thus i have added a very simple regex check to verify this before processing the content for expansion. This fixes issue #767.

Here is a simple explanation for the regex: (?<=\${) is a positive lookbehind assertion that matches the literal characters ${ at the beginning of the substring. This ensures that the match occurs after ${. [^\r\n]+ matches any non-linebreak character 1..n times it can be limited to a number of characters by replacing + with {1,256} e.g. from 1 to 256 times. This enforces the maximum length of 256 characters for the substring. (?=}) is a positive lookahead assertion that matches the literal character } at the end of the substring. This ensures that the match occurs before }.