commit 090b60a46f0545bfd4ecb80ee6c8ba3d880588ab
parent 84704f78195558ee2a5d2ff7b125cb49a0ff435d
Author: Antoine A <>
Date: Fri, 24 Apr 2026 10:37:58 +0200
nexus: update taler-rust
Diffstat:
| M | Cargo.lock | | | 142 | +++++++++++++++++++++++++++++++++++++------------------------------------------ |
| M | src/api.rs | | | 173 | +++++++++++++++++++++++++++++++++++-------------------------------------------- |
2 files changed, 143 insertions(+), 172 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
@@ -161,9 +161,9 @@ dependencies = [
[[package]]
name = "aws-lc-sys"
-version = "0.39.0"
+version = "0.39.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fa7e52a4c5c547c741610a2c6f123f3881e409b714cd27e6798ef020c514f0a"
+checksum = "83a25cf98105baa966497416dbd42565ce3a8cf8dbfd59803ec9ad46f3126399"
dependencies = [
"cc",
"cmake",
@@ -1117,9 +1117,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
[[package]]
name = "hyper"
-version = "1.8.1"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11"
+checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca"
dependencies = [
"atomic-waker",
"bytes",
@@ -1132,7 +1132,6 @@ dependencies = [
"httpdate",
"itoa",
"pin-project-lite",
- "pin-utils",
"smallvec",
"tokio",
"want",
@@ -1205,12 +1204,13 @@ dependencies = [
[[package]]
name = "icu_collections"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43"
+checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c"
dependencies = [
"displaydoc",
"potential_utf",
+ "utf8_iter",
"yoke",
"zerofrom",
"zerovec",
@@ -1218,9 +1218,9 @@ dependencies = [
[[package]]
name = "icu_locale_core"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6"
+checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29"
dependencies = [
"displaydoc",
"litemap",
@@ -1231,9 +1231,9 @@ dependencies = [
[[package]]
name = "icu_normalizer"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599"
+checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4"
dependencies = [
"icu_collections",
"icu_normalizer_data",
@@ -1245,15 +1245,15 @@ dependencies = [
[[package]]
name = "icu_normalizer_data"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a"
+checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38"
[[package]]
name = "icu_properties"
-version = "2.1.2"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec"
+checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de"
dependencies = [
"icu_collections",
"icu_locale_core",
@@ -1265,15 +1265,15 @@ dependencies = [
[[package]]
name = "icu_properties_data"
-version = "2.1.2"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af"
+checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14"
[[package]]
name = "icu_provider"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614"
+checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421"
dependencies = [
"displaydoc",
"icu_locale_core",
@@ -1337,9 +1337,9 @@ checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2"
[[package]]
name = "iri-string"
-version = "0.7.11"
+version = "0.7.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8e7418f59cc01c88316161279a7f665217ae316b388e58a0d10e29f54f1e5eb"
+checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20"
dependencies = [
"memchr",
"serde",
@@ -1463,10 +1463,12 @@ dependencies = [
[[package]]
name = "js-sys"
-version = "0.3.91"
+version = "0.3.94"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c"
+checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9"
dependencies = [
+ "cfg-if",
+ "futures-util",
"once_cell",
"wasm-bindgen",
]
@@ -1503,9 +1505,9 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2"
[[package]]
name = "libc"
-version = "0.2.183"
+version = "0.2.184"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d"
+checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af"
[[package]]
name = "libeufin"
@@ -1591,9 +1593,9 @@ dependencies = [
[[package]]
name = "litemap"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77"
+checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0"
[[package]]
name = "litrs"
@@ -1668,9 +1670,9 @@ dependencies = [
[[package]]
name = "mio"
-version = "1.1.1"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc"
+checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1"
dependencies = [
"libc",
"log",
@@ -1847,12 +1849,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd"
[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
name = "pkcs1"
version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1902,9 +1898,9 @@ dependencies = [
[[package]]
name = "potential_utf"
-version = "0.1.4"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77"
+checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564"
dependencies = [
"zerovec",
]
@@ -2261,9 +2257,9 @@ dependencies = [
[[package]]
name = "rustc-hash"
-version = "2.1.1"
+version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
+checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe"
[[package]]
name = "rustc_version"
@@ -3152,9 +3148,9 @@ dependencies = [
[[package]]
name = "tinystr"
-version = "0.8.2"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869"
+checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d"
dependencies = [
"displaydoc",
"zerovec",
@@ -3530,9 +3526,9 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b"
[[package]]
name = "wasm-bindgen"
-version = "0.2.114"
+version = "0.2.117"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e"
+checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0"
dependencies = [
"cfg-if",
"once_cell",
@@ -3543,23 +3539,19 @@ dependencies = [
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.64"
+version = "0.4.67"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9c5522b3a28661442748e09d40924dfb9ca614b21c00d3fd135720e48b67db8"
+checksum = "03623de6905b7206edd0a75f69f747f134b7f0a2323392d664448bf2d3c5d87e"
dependencies = [
- "cfg-if",
- "futures-util",
"js-sys",
- "once_cell",
"wasm-bindgen",
- "web-sys",
]
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.114"
+version = "0.2.117"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6"
+checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -3567,9 +3559,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.114"
+version = "0.2.117"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3"
+checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2"
dependencies = [
"bumpalo",
"proc-macro2",
@@ -3580,9 +3572,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.114"
+version = "0.2.117"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16"
+checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b"
dependencies = [
"unicode-ident",
]
@@ -3623,9 +3615,9 @@ dependencies = [
[[package]]
name = "web-sys"
-version = "0.3.91"
+version = "0.3.94"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9"
+checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -4199,9 +4191,9 @@ dependencies = [
[[package]]
name = "yoke"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954"
+checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca"
dependencies = [
"stable_deref_trait",
"yoke-derive",
@@ -4210,9 +4202,9 @@ dependencies = [
[[package]]
name = "yoke-derive"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d"
+checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e"
dependencies = [
"proc-macro2",
"quote",
@@ -4222,18 +4214,18 @@ dependencies = [
[[package]]
name = "zerocopy"
-version = "0.8.47"
+version = "0.8.48"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87"
+checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9"
dependencies = [
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
-version = "0.8.47"
+version = "0.8.48"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89"
+checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4"
dependencies = [
"proc-macro2",
"quote",
@@ -4242,18 +4234,18 @@ dependencies = [
[[package]]
name = "zerofrom"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5"
+checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df"
dependencies = [
"zerofrom-derive",
]
[[package]]
name = "zerofrom-derive"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
+checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1"
dependencies = [
"proc-macro2",
"quote",
@@ -4269,9 +4261,9 @@ checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0"
[[package]]
name = "zerotrie"
-version = "0.2.3"
+version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851"
+checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf"
dependencies = [
"displaydoc",
"yoke",
@@ -4280,9 +4272,9 @@ dependencies = [
[[package]]
name = "zerovec"
-version = "0.11.5"
+version = "0.11.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002"
+checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239"
dependencies = [
"yoke",
"zerofrom",
@@ -4291,9 +4283,9 @@ dependencies = [
[[package]]
name = "zerovec-derive"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3"
+checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555"
dependencies = [
"proc-macro2",
"quote",
diff --git a/src/api.rs b/src/api.rs
@@ -18,8 +18,9 @@
*/
use jiff::Timestamp;
+use sqlx::PgPool;
use taler_api::{
- api::{TalerApi, revenue::Revenue, transfer::WireTransferGateway, wire::WireGateway},
+ api::{TalerApi, revenue::Revenue, transfer::PreparedTransfer, wire::WireGateway},
error::{ApiResult, failure, failure_code},
subject::{IncomingSubject, fmt_in_subject, subject_fmt_qr_bill},
};
@@ -31,14 +32,14 @@ use taler_common::{
RegistrationRequest, RegistrationResponse, SubjectFormat, TransferSubject, Unregistration,
},
api_wire::{
- AddIncomingRequest, AddIncomingResponse, AddKycauthRequest, AddKycauthResponse,
+ AddIncomingRequest, AddIncomingResponse, AddKycauthRequest, AddMappedRequest,
IncomingHistory, OutgoingHistory, TransferList, TransferRequest, TransferResponse,
TransferState, TransferStatus,
},
db::IncomingType,
error_code::ErrorCode,
types::{
- amount::Currency,
+ amount::{Amount, Currency},
payto::{FullIbanPayto, PaytoURI},
timestamp::TalerTimestamp,
},
@@ -101,6 +102,51 @@ impl TalerApi for NexusApi {
}
}
+async fn add_incoming(
+ db: &PgPool,
+ subject: &IncomingSubject,
+ amount: Amount,
+ debit_account: PaytoURI,
+) -> ApiResult<AddIncomingResponse> {
+ FullIbanPayto::try_from(&debit_account)?;
+ let now = Timestamp::now();
+ match register_in_talerable(
+ db,
+ &IncomingPayment {
+ id: IncomingId {
+ uetr: None,
+ tx_id: Some(rand_ebics_id()),
+ acct_svcr_ref: None,
+ },
+ amount,
+ credit_fee: None,
+ subject: Some(format!(
+ "Manual incoming {}",
+ fmt_in_subject(subject.ty(), subject.key())
+ )),
+ execution_time: now,
+ debtor: Some(debit_account),
+ },
+ subject,
+ )
+ .await?
+ {
+ IncomingRegistrationResult::Success(in_result) => Ok(AddIncomingResponse {
+ row_id: safe_u64(in_result.id),
+ timestamp: now.into(),
+ }),
+ IncomingRegistrationResult::ReservePubReuse => {
+ Err(failure_code(ErrorCode::BANK_DUPLICATE_RESERVE_PUB_SUBJECT))
+ }
+ IncomingRegistrationResult::MappingReuse => {
+ Err(failure_code(ErrorCode::BANK_TRANSFER_MAPPING_REUSED))
+ }
+ IncomingRegistrationResult::UnknownMapping => {
+ Err(failure_code(ErrorCode::BANK_TRANSFER_MAPPING_UNKNOWN))
+ }
+ }
+}
+
impl WireGateway for NexusApi {
async fn transfer(&self, req: TransferRequest) -> ApiResult<TransferResponse> {
FullIbanPayto::try_from(&req.credit_account)?;
@@ -156,75 +202,33 @@ impl WireGateway for NexusApi {
&self,
req: AddIncomingRequest,
) -> ApiResult<AddIncomingResponse> {
- FullIbanPayto::try_from(&req.debit_account)?;
- let now = Timestamp::now();
- match register_in_talerable(
+ add_incoming(
&self.pool,
- &IncomingPayment {
- id: IncomingId {
- uetr: None,
- tx_id: Some(rand_ebics_id()),
- acct_svcr_ref: None,
- },
- amount: req.amount,
- credit_fee: None,
- subject: Some(format!(
- "Manual incoming {}",
- fmt_in_subject(IncomingType::reserve, &req.reserve_pub)
- )),
- execution_time: now,
- debtor: Some(req.debit_account),
- },
&IncomingSubject::Reserve(req.reserve_pub),
+ req.amount,
+ req.debit_account,
)
- .await?
- {
- IncomingRegistrationResult::Success(in_result) => Ok(AddIncomingResponse {
- row_id: safe_u64(in_result.id),
- timestamp: now.into(),
- }),
- IncomingRegistrationResult::ReservePubReuse => {
- Err(failure_code(ErrorCode::BANK_DUPLICATE_RESERVE_PUB_SUBJECT))
- }
- IncomingRegistrationResult::MappingReuse
- | IncomingRegistrationResult::UnknownMapping => unreachable!("mapping not used"),
- }
+ .await
}
- async fn add_incoming_kyc(&self, req: AddKycauthRequest) -> ApiResult<AddKycauthResponse> {
- FullIbanPayto::try_from(&req.debit_account)?;
- let now = Timestamp::now();
- match register_in_talerable(
+ async fn add_incoming_kyc(&self, req: AddKycauthRequest) -> ApiResult<AddIncomingResponse> {
+ add_incoming(
&self.pool,
- &IncomingPayment {
- id: IncomingId {
- uetr: None,
- tx_id: Some(rand_ebics_id()),
- acct_svcr_ref: None,
- },
- amount: req.amount,
- credit_fee: None,
- subject: Some(format!(
- "Manual incoming {}",
- fmt_in_subject(IncomingType::kyc, &req.account_pub)
- )),
- execution_time: now,
- debtor: Some(req.debit_account),
- },
&IncomingSubject::Kyc(req.account_pub),
+ req.amount,
+ req.debit_account,
)
- .await?
- {
- IncomingRegistrationResult::Success(in_result) => Ok(AddIncomingResponse {
- row_id: safe_u64(in_result.id),
- timestamp: now.into(),
- }),
- IncomingRegistrationResult::ReservePubReuse => {
- Err(failure_code(ErrorCode::BANK_DUPLICATE_RESERVE_PUB_SUBJECT))
- }
- IncomingRegistrationResult::MappingReuse
- | IncomingRegistrationResult::UnknownMapping => unreachable!("mapping not used"),
- }
+ .await
+ }
+
+ async fn add_incoming_mapped(&self, req: AddMappedRequest) -> ApiResult<AddIncomingResponse> {
+ add_incoming(
+ &self.pool,
+ &IncomingSubject::Map(req.authorization_pub),
+ req.amount,
+ req.debit_account,
+ )
+ .await
}
fn support_account_check(&self) -> bool {
@@ -244,7 +248,7 @@ impl Revenue for NexusApi {
}
}
-impl WireTransferGateway for NexusApi {
+impl PreparedTransfer for NexusApi {
fn supported_formats(&self) -> &[SubjectFormat] {
&[SubjectFormat::SIMPLE]
}
@@ -309,16 +313,11 @@ mod test {
};
use sqlx::PgPool;
- use taler_api::{
- api::TalerRouter as _,
- auth::AuthMethod,
- subject::{OutgoingSubject, fmt_in_subject},
- };
+ use taler_api::{api::TalerRouter as _, auth::AuthMethod, subject::OutgoingSubject};
use taler_common::{
api_revenue::RevenueConfig,
- api_transfer::WireTransferConfig,
+ api_transfer::PreparedTransferConfig,
api_wire::{OutgoingHistory, TransferState, WireConfig},
- db::IncomingType,
types::{
amount::Currency,
payto::{PaytoURI, payto},
@@ -337,12 +336,10 @@ mod test {
use crate::{
CONFIG_SOURCE,
api::NexusApi,
- config::{AccountType, NexusIngestConfig},
db::{
payment::register_out_tx,
- test::{CURRENCY, check_in, gen_in_pay, gen_out_pay},
+ test::{check_in, gen_out_pay},
},
- worker::register_incoming,
};
static ACCOUNT: LazyLock<PaytoURI> =
@@ -360,7 +357,7 @@ mod test {
);
let server = Router::new()
.wire_gateway(api.clone(), AuthMethod::None)
- .wire_transfer_gateway(api.clone())
+ .prepared_transfer(api.clone())
.revenue(api, AuthMethod::None)
.finalize();
@@ -375,9 +372,9 @@ mod test {
.await
.assert_ok_json::<WireConfig>();
server
- .get("/taler-wire-transfer-gateway/config")
+ .get("/taler-prepared-transfer/config")
.await
- .assert_ok_json::<WireTransferConfig>();
+ .assert_ok_json::<PreparedTransferConfig>();
server
.get("/taler-revenue/config")
.await
@@ -434,24 +431,6 @@ mod test {
#[tokio::test]
async fn registration() {
let (server, pool) = setup().await;
- registration_routine(
- &server,
- &ACCOUNT,
- || check_in(&pool),
- |account_pub| {
- let account_pub = account_pub.clone();
- let pool = &pool;
- async move {
- register_incoming(
- pool,
- &NexusIngestConfig::simple(AccountType::Exchange, &CURRENCY),
- &gen_in_pay(fmt_in_subject(IncomingType::map, &account_pub)),
- )
- .await
- .unwrap()
- }
- },
- )
- .await;
+ registration_routine(&server, &ACCOUNT, || check_in(&pool)).await;
}
}