* Add sniper template error cases to tests * move injectKeyword to a seperate output slice - Fixes #579
This commit is contained in:
parent
9bddff79b9
commit
ebb4c44072
@ -172,10 +172,12 @@ func injectKeyword(input string, keyword string, startOffset int, endOffset int)
|
|||||||
prefix := inputslice[:startOffset]
|
prefix := inputslice[:startOffset]
|
||||||
suffix := inputslice[endOffset+1:]
|
suffix := inputslice[endOffset+1:]
|
||||||
|
|
||||||
inputslice = append(prefix, keywordslice...)
|
var outputslice []rune
|
||||||
inputslice = append(inputslice, suffix...)
|
outputslice = append(outputslice, prefix...)
|
||||||
|
outputslice = append(outputslice, keywordslice...)
|
||||||
|
outputslice = append(outputslice, suffix...)
|
||||||
|
|
||||||
return string(inputslice)
|
return string(outputslice)
|
||||||
}
|
}
|
||||||
|
|
||||||
// scrubTemplates removes all template (§) strings from the request struct
|
// scrubTemplates removes all template (§) strings from the request struct
|
||||||
|
|||||||
@ -215,6 +215,23 @@ func TestInjectKeyword(t *testing.T) {
|
|||||||
t.Errorf("injectKeyword offset validation failed")
|
t.Errorf("injectKeyword offset validation failed")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input = "id=§a§&sort=desc"
|
||||||
|
offsetTuple = templateLocations("§", input)
|
||||||
|
expected = "id=FUZZ&sort=desc"
|
||||||
|
|
||||||
|
result = injectKeyword(input, "FUZZ", offsetTuple[0], offsetTuple[1])
|
||||||
|
if result != expected {
|
||||||
|
t.Errorf("injectKeyword returned unexpected result: " + result)
|
||||||
|
}
|
||||||
|
|
||||||
|
input = "feature=aaa&thingie=bbb&array[§0§]=baz"
|
||||||
|
offsetTuple = templateLocations("§", input)
|
||||||
|
expected = "feature=aaa&thingie=bbb&array[FUZZ]=baz"
|
||||||
|
|
||||||
|
result = injectKeyword(input, "FUZZ", offsetTuple[0], offsetTuple[1])
|
||||||
|
if result != expected {
|
||||||
|
t.Errorf("injectKeyword returned unexpected result: " + result)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestScrubTemplates(t *testing.T) {
|
func TestScrubTemplates(t *testing.T) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user