Add and satisfy OptionsDelete API test for DELETE /regions?name={{name}} (#4707) (#4732)

* Add an API test for DELETE /regions?name={{name}}

* No changelog entry

* Combine OptionsDeleter and HasDeleteKeyOptions interfaces
Rename variables:
  - hasDeleteKeyOption() -> checkIfOptionsDeleter()
  - deleteKeyOptionsExists isOptionsDeleter

* Do not bail if the type is an options deleter

* Add new DeleteHandler() logic to DeprecatedDeleteHandler()

* Remove unnecessary "else" clause

* Add "name" param to GetKeys() and SetKeys()

* Set object keys from DeleteKeyOptions() or GetKeyFieldsInfo() depending
on whether the object is an options deleter

* Add audit log assertions to the API test for deleting a region by name

* No need to return "name" param from GetKeys()

* DeprecatedDeleteHandler: Set object keys from DeleteKeyOptions() or
GetKeyFieldsInfo() depending on whether the object is an options deleter

* kf.Field -> key

(cherry picked from commit 56d09e6d08912dbbb90a6fa26c3095b69750fb28)

Co-authored-by: Zach Hoffman <zach@zrhoffman.net>
3 files changed