From 69c81dc3b3d2a7d4fe75577290b8a8aec5dca2e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 09:13:54 +0000 Subject: [PATCH] feat(deps-dev): bump @seamapi/types from 1.313.0 to 1.315.0 in the seam group (#226) * feat(deps-dev): bump @seamapi/types in the seam group Bumps the seam group with 1 update: [@seamapi/types](https://github.com/seamapi/types). Updates `@seamapi/types` from 1.313.0 to 1.315.0 - [Release notes](https://github.com/seamapi/types/releases) - [Changelog](https://github.com/seamapi/types/blob/main/.releaserc.json) - [Commits](https://github.com/seamapi/types/compare/v1.313.0...v1.315.0) --- updated-dependencies: - dependency-name: "@seamapi/types" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam ... Signed-off-by: dependabot[bot] * ci: Generate code --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Seam Bot --- package-lock.json | 8 +-- package.json | 2 +- seam/routes/acs_encoders_simulate.py | 93 ++++++++++++++++++++++++++++ seam/routes/models.py | 39 ++++++++++++ 4 files changed, 137 insertions(+), 5 deletions(-) create mode 100644 seam/routes/acs_encoders_simulate.py diff --git a/package-lock.json b/package-lock.json index e0a3dbf..1c1e8ec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "devDependencies": { "@seamapi/fake-seam-connect": "1.73.6", "@seamapi/nextlove-sdk-generator": "1.14.17", - "@seamapi/types": "1.313.0", + "@seamapi/types": "1.315.0", "del": "^7.1.0", "prettier": "^3.2.5" } @@ -474,9 +474,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.313.0", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.313.0.tgz", - "integrity": "sha512-uk/fRmMvtAgTjZwRLmjvfxIkS6+BR1V5b9M6oA5+5Q3y9iTK2e/57fRat5qsyb+R00rmlb8Lh/rqs7W0nHu2IA==", + "version": "1.315.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.315.0.tgz", + "integrity": "sha512-/j+5WmOWD2QdHLvaXIZihfQdc+RilxPUCVhY1xwoqTmQ0jvies0TDNhDmVEqGmsxp6e7YA7vqdmRVwDkE/aZbQ==", "dev": true, "engines": { "node": ">=18.12.0", diff --git a/package.json b/package.json index fbe073d..6a3d11a 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "devDependencies": { "@seamapi/fake-seam-connect": "1.73.6", "@seamapi/nextlove-sdk-generator": "1.14.17", - "@seamapi/types": "1.313.0", + "@seamapi/types": "1.315.0", "del": "^7.1.0", "prettier": "^3.2.5" } diff --git a/seam/routes/acs_encoders_simulate.py b/seam/routes/acs_encoders_simulate.py new file mode 100644 index 0000000..d63857c --- /dev/null +++ b/seam/routes/acs_encoders_simulate.py @@ -0,0 +1,93 @@ +from typing import Optional, Any, List, Dict, Union +from ..client import SeamHttpClient +from .models import AbstractAcsEncodersSimulate + + +class AcsEncodersSimulate(AbstractAcsEncodersSimulate): + def __init__(self, client: SeamHttpClient, defaults: Dict[str, Any]): + self.client = client + self.defaults = defaults + + def next_credential_encode_will_fail( + self, + *, + acs_encoder_id: str, + error_code: Optional[str] = None, + acs_credential_id: Optional[str] = None + ) -> None: + json_payload = {} + + if acs_encoder_id is not None: + json_payload["acs_encoder_id"] = acs_encoder_id + if error_code is not None: + json_payload["error_code"] = error_code + if acs_credential_id is not None: + json_payload["acs_credential_id"] = acs_credential_id + + self.client.post( + "/acs/encoders/simulate/next_credential_encode_will_fail", json=json_payload + ) + + return None + + def next_credential_encode_will_succeed( + self, *, acs_encoder_id: str, scenario: Optional[str] = None + ) -> None: + json_payload = {} + + if acs_encoder_id is not None: + json_payload["acs_encoder_id"] = acs_encoder_id + if scenario is not None: + json_payload["scenario"] = scenario + + self.client.post( + "/acs/encoders/simulate/next_credential_encode_will_succeed", + json=json_payload, + ) + + return None + + def next_credential_scan_will_fail( + self, + *, + acs_encoder_id: str, + error_code: Optional[str] = None, + acs_credential_id_on_seam: Optional[str] = None + ) -> None: + json_payload = {} + + if acs_encoder_id is not None: + json_payload["acs_encoder_id"] = acs_encoder_id + if error_code is not None: + json_payload["error_code"] = error_code + if acs_credential_id_on_seam is not None: + json_payload["acs_credential_id_on_seam"] = acs_credential_id_on_seam + + self.client.post( + "/acs/encoders/simulate/next_credential_scan_will_fail", json=json_payload + ) + + return None + + def next_credential_scan_will_succeed( + self, + *, + acs_encoder_id: str, + acs_credential_id_on_seam: Optional[str] = None, + scenario: Optional[str] = None + ) -> None: + json_payload = {} + + if acs_encoder_id is not None: + json_payload["acs_encoder_id"] = acs_encoder_id + if acs_credential_id_on_seam is not None: + json_payload["acs_credential_id_on_seam"] = acs_credential_id_on_seam + if scenario is not None: + json_payload["scenario"] = scenario + + self.client.post( + "/acs/encoders/simulate/next_credential_scan_will_succeed", + json=json_payload, + ) + + return None diff --git a/seam/routes/models.py b/seam/routes/models.py index 96ee8d2..fe7fbea 100644 --- a/seam/routes/models.py +++ b/seam/routes/models.py @@ -1252,6 +1252,45 @@ def scan_credential( raise NotImplementedError() +class AbstractAcsEncodersSimulate(abc.ABC): + + @abc.abstractmethod + def next_credential_encode_will_fail( + self, + *, + acs_encoder_id: str, + error_code: Optional[str] = None, + acs_credential_id: Optional[str] = None + ) -> None: + raise NotImplementedError() + + @abc.abstractmethod + def next_credential_encode_will_succeed( + self, *, acs_encoder_id: str, scenario: Optional[str] = None + ) -> None: + raise NotImplementedError() + + @abc.abstractmethod + def next_credential_scan_will_fail( + self, + *, + acs_encoder_id: str, + error_code: Optional[str] = None, + acs_credential_id_on_seam: Optional[str] = None + ) -> None: + raise NotImplementedError() + + @abc.abstractmethod + def next_credential_scan_will_succeed( + self, + *, + acs_encoder_id: str, + acs_credential_id_on_seam: Optional[str] = None, + scenario: Optional[str] = None + ) -> None: + raise NotImplementedError() + + class AbstractAcsEntrances(abc.ABC): @abc.abstractmethod