| 381 | |
| 382 | |
| 383 | class RequestWithOptionalArgs(IStep): |
| 384 | def __init__(self, step: TStep): |
| 385 | self.__step = step |
| 386 | |
| 387 | def with_params(self, **params) -> "RequestWithOptionalArgs": |
| 388 | self.__step.request.params.update(params) |
| 389 | return self |
| 390 | |
| 391 | def with_headers(self, **headers) -> "RequestWithOptionalArgs": |
| 392 | self.__step.request.headers.update(headers) |
| 393 | return self |
| 394 | |
| 395 | def with_cookies(self, **cookies) -> "RequestWithOptionalArgs": |
| 396 | self.__step.request.cookies.update(cookies) |
| 397 | return self |
| 398 | |
| 399 | def with_data(self, data) -> "RequestWithOptionalArgs": |
| 400 | self.__step.request.data = data |
| 401 | return self |
| 402 | |
| 403 | def with_json(self, req_json) -> "RequestWithOptionalArgs": |
| 404 | self.__step.request.req_json = req_json |
| 405 | return self |
| 406 | |
| 407 | def set_timeout(self, timeout: float) -> "RequestWithOptionalArgs": |
| 408 | self.__step.request.timeout = timeout |
| 409 | return self |
| 410 | |
| 411 | def set_verify(self, verify: bool) -> "RequestWithOptionalArgs": |
| 412 | self.__step.request.verify = verify |
| 413 | return self |
| 414 | |
| 415 | def set_allow_redirects(self, allow_redirects: bool) -> "RequestWithOptionalArgs": |
| 416 | self.__step.request.allow_redirects = allow_redirects |
| 417 | return self |
| 418 | |
| 419 | def upload(self, **file_info) -> "RequestWithOptionalArgs": |
| 420 | self.__step.request.upload.update(file_info) |
| 421 | return self |
| 422 | |
| 423 | def teardown_hook( |
| 424 | self, hook: Text, assign_var_name: Text = None |
| 425 | ) -> "RequestWithOptionalArgs": |
| 426 | if assign_var_name: |
| 427 | self.__step.teardown_hooks.append({assign_var_name: hook}) |
| 428 | else: |
| 429 | self.__step.teardown_hooks.append(hook) |
| 430 | |
| 431 | return self |
| 432 | |
| 433 | def extract(self) -> StepRequestExtraction: |
| 434 | return StepRequestExtraction(self.__step) |
| 435 | |
| 436 | def validate(self) -> StepRequestValidation: |
| 437 | return StepRequestValidation(self.__step) |
| 438 | |
| 439 | def struct(self) -> TStep: |
| 440 | return self.__step |