Skip to content

Commit

Permalink
Java: more name-based heuristic tests to test regex
Browse files Browse the repository at this point in the history
  • Loading branch information
Jami Cogswell authored and Jami Cogswell committed Dec 20, 2024
1 parent 77a781e commit b2d84c6
Showing 1 changed file with 26 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -371,13 +371,33 @@ public void bad10(@RequestParam String user) { // $ hasCsrfUnprotectedRequestTyp
myBatisService.bad10(user);
}

// Test name-based heuristic
// Test name-based heuristic for method names that imply a state-change
@GetMapping(value = "transfer")
public String transfer(@RequestParam String user) { return "transfer"; } // $ hasCsrfUnprotectedRequestType

// BAD: method name implies a state-change
@GetMapping(value = "delete")
public String delete(@RequestParam String user) { // $ hasCsrfUnprotectedRequestType
return "delete";
}
@GetMapping(value = "transfer")
public String transferData(@RequestParam String user) { return "transfer"; } // $ hasCsrfUnprotectedRequestType

@GetMapping(value = "transfer")
public String doTransfer(@RequestParam String user) { return "transfer"; } // $ hasCsrfUnprotectedRequestType

@GetMapping(value = "transfer")
public String doTransferAllData(@RequestParam String user) { return "transfer"; } // $ hasCsrfUnprotectedRequestType

@GetMapping(value = "transfer")
public String doDataTransfer(@RequestParam String user) { return "transfer"; } // $ hasCsrfUnprotectedRequestType

@GetMapping(value = "transfer")
public String transfered(@RequestParam String user) { return "transfer"; } // OK: we look for 'transfer' only

@GetMapping(value = "transfer")
public String dotransfer(@RequestParam String user) { return "transfer"; } // OK: we look for 'transfer' within camelCase only

@GetMapping(value = "transfer")
public String doTransferdata(@RequestParam String user) { return "transfer"; } // OK: we look for 'transfer' within camelCase only

@GetMapping(value = "transfer")
public String getTransfer(@RequestParam String user) { return "transfer"; } // OK: starts with 'get'

// Test Stapler web methods with name-based heuristic

Expand Down

0 comments on commit b2d84c6

Please sign in to comment.