module ActionController::TestCase::Behavior

def get(action, **args)

available to make the tests more expressive.
Note that the request method is not verified. The different methods are

flash: { notice: 'This is flash message' }
session: { user_id: 1 },
params: { id: 7 },
get :show,

Example sending parameters, session, and setting a flash message:
+post+, +patch+, +put+, +delete+, and +head+.
You can also simulate POST, PATCH, PUT, DELETE, and HEAD requests with

- +flash+: A hash of parameters to store in the flash. This may be +nil+.
- +session+: A hash of parameters to store in the session. This may be +nil+.
(application/x-www-form-urlencoded or multipart/form-data).
- +body+: The request body with a string that is appropriately encoded
- +params+: The hash with HTTP parameters that you want to pass. This may be +nil+.
- +action+: The controller action to call.

Simulate a GET request with the given parameters.
def get(action, **args)
  res = process(action, method: "GET", **args)
  cookies.update res.cookies
  res
end