Merge #958: database: convert CoinStatus to listcoins argument string
fa39e2ced460918d6c6c94c0e2b7dae19b612fa9 database: convert `CoinStatus` to `listcoins` argument string (jp1ac4) Pull request description: This is a preliminary PR towards https://github.com/wizardsardine/liana/issues/677 and is the counterpart to the existing `CoinStatus::from_arg()` method. This is needed so that the GUI can pass the required string arguments to the `listcoins` RPC command when using an external Liana daemon. ACKs for top commit: edouardparis: ACK fa39e2ced460918d6c6c94c0e2b7dae19b612fa9 Tree-SHA512: e555739e641e4be66ce4942e8294606ab001572395ed73a6c40fa2af38f076357a7c3acba4e4d756fb6d334a11107827a95c53d3f3aecfe32ceca80fc85af83a
This commit is contained in:
commit
f19e872814
@ -398,6 +398,17 @@ impl CoinStatus {
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
|
||||
/// Converts a `CoinStatus` to its equivalent argument name
|
||||
/// as used in the `listcoins` RPC command.
|
||||
pub fn to_arg(&self) -> &'static str {
|
||||
match self {
|
||||
CoinStatus::Unconfirmed => "unconfirmed",
|
||||
CoinStatus::Confirmed => "confirmed",
|
||||
CoinStatus::Spending => "spending",
|
||||
CoinStatus::Spent => "spent",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
|
||||
@ -452,3 +463,28 @@ impl LabelItem {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn coin_status_as_arg() {
|
||||
assert_eq!(
|
||||
CoinStatus::from_arg(CoinStatus::Unconfirmed.to_arg()),
|
||||
Some(CoinStatus::Unconfirmed)
|
||||
);
|
||||
assert_eq!(
|
||||
CoinStatus::from_arg(CoinStatus::Confirmed.to_arg()),
|
||||
Some(CoinStatus::Confirmed)
|
||||
);
|
||||
assert_eq!(
|
||||
CoinStatus::from_arg(CoinStatus::Spending.to_arg()),
|
||||
Some(CoinStatus::Spending)
|
||||
);
|
||||
assert_eq!(
|
||||
CoinStatus::from_arg(CoinStatus::Spent.to_arg()),
|
||||
Some(CoinStatus::Spent)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user