fix add authenticator response parsing again
This commit is contained in:
parent
91e2a1b2c6
commit
555b47b3fb
2 changed files with 27 additions and 2 deletions
|
@ -0,0 +1 @@
|
||||||
|
{"response":{"status":29}}
|
|
@ -509,23 +509,31 @@ pub struct SteamApiResponse<T> {
|
||||||
#[derive(Debug, Clone, Deserialize)]
|
#[derive(Debug, Clone, Deserialize)]
|
||||||
pub struct AddAuthenticatorResponse {
|
pub struct AddAuthenticatorResponse {
|
||||||
/// Shared secret between server and authenticator
|
/// Shared secret between server and authenticator
|
||||||
|
#[serde(default)]
|
||||||
pub shared_secret: String,
|
pub shared_secret: String,
|
||||||
/// Authenticator serial number (unique per token)
|
/// Authenticator serial number (unique per token)
|
||||||
|
#[serde(default)]
|
||||||
pub serial_number: String,
|
pub serial_number: String,
|
||||||
/// code used to revoke authenticator
|
/// code used to revoke authenticator
|
||||||
|
#[serde(default)]
|
||||||
pub revocation_code: String,
|
pub revocation_code: String,
|
||||||
/// URI for QR code generation
|
/// URI for QR code generation
|
||||||
|
#[serde(default)]
|
||||||
pub uri: String,
|
pub uri: String,
|
||||||
/// Current server time
|
/// Current server time
|
||||||
#[serde(deserialize_with = "parse_json_string_as_number")]
|
#[serde(default, deserialize_with = "parse_json_string_as_number")]
|
||||||
pub server_time: u64,
|
pub server_time: u64,
|
||||||
/// Account name to display on token client
|
/// Account name to display on token client
|
||||||
|
#[serde(default)]
|
||||||
pub account_name: String,
|
pub account_name: String,
|
||||||
/// Token GID assigned by server
|
/// Token GID assigned by server
|
||||||
|
#[serde(default)]
|
||||||
pub token_gid: String,
|
pub token_gid: String,
|
||||||
/// Secret used for identity attestation (e.g., for eventing)
|
/// Secret used for identity attestation (e.g., for eventing)
|
||||||
|
#[serde(default)]
|
||||||
pub identity_secret: String,
|
pub identity_secret: String,
|
||||||
/// Spare shared secret
|
/// Spare shared secret
|
||||||
|
#[serde(default)]
|
||||||
pub secret_1: String,
|
pub secret_1: String,
|
||||||
/// Result code
|
/// Result code
|
||||||
pub status: i32,
|
pub status: i32,
|
||||||
|
@ -584,4 +592,20 @@ fn test_parse_add_auth_response() {
|
||||||
assert_eq!(resp.server_time, 1628559846);
|
assert_eq!(resp.server_time, 1628559846);
|
||||||
assert_eq!(resp.shared_secret, "wGwZx=sX5MmTxi6QgA3Gi");
|
assert_eq!(resp.shared_secret, "wGwZx=sX5MmTxi6QgA3Gi");
|
||||||
assert_eq!(resp.revocation_code, "R123456");
|
assert_eq!(resp.revocation_code, "R123456");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_parse_add_auth_response2() {
|
||||||
|
let result = serde_json::from_str::<SteamApiResponse<AddAuthenticatorResponse>>(include_str!(
|
||||||
|
"fixtures/api-responses/add-authenticator-2.json"
|
||||||
|
));
|
||||||
|
|
||||||
|
assert!(
|
||||||
|
matches!(result, Ok(_)),
|
||||||
|
"got error: {}",
|
||||||
|
result.unwrap_err()
|
||||||
|
);
|
||||||
|
let resp = result.unwrap().response;
|
||||||
|
|
||||||
|
assert_eq!(resp.status, 29);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue