Better error names
This commit is contained in:
parent
b57aecc24c
commit
6c0c6de1d0
18
src/bank.rs
18
src/bank.rs
|
@ -25,9 +25,9 @@ pub const MAX_ENTRY_IDS: usize = 1024 * 4;
|
||||||
pub enum BankError {
|
pub enum BankError {
|
||||||
AccountNotFound(PublicKey),
|
AccountNotFound(PublicKey),
|
||||||
InsufficientFunds(PublicKey),
|
InsufficientFunds(PublicKey),
|
||||||
InvalidTxSignature(Signature),
|
DuplicateSiganture(Signature),
|
||||||
InvalidTxLastId(Hash),
|
LastIdNotFound(Hash),
|
||||||
InvalidTxTokens,
|
NegativeTokens,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub type Result<T> = result::Result<T, BankError>;
|
pub type Result<T> = result::Result<T, BankError>;
|
||||||
|
@ -102,7 +102,7 @@ impl Bank {
|
||||||
.expect("'signatures' read lock")
|
.expect("'signatures' read lock")
|
||||||
.contains(sig)
|
.contains(sig)
|
||||||
{
|
{
|
||||||
return Err(BankError::InvalidTxSignature(*sig));
|
return Err(BankError::DuplicateSiganture(*sig));
|
||||||
}
|
}
|
||||||
signatures
|
signatures
|
||||||
.write()
|
.write()
|
||||||
|
@ -140,7 +140,7 @@ impl Bank {
|
||||||
{
|
{
|
||||||
return Self::reserve_signature(&entry.1, sig);
|
return Self::reserve_signature(&entry.1, sig);
|
||||||
}
|
}
|
||||||
Err(BankError::InvalidTxLastId(*last_id))
|
Err(BankError::LastIdNotFound(*last_id))
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Tell the bank which Entry IDs exist on the ledger. This function
|
/// Tell the bank which Entry IDs exist on the ledger. This function
|
||||||
|
@ -163,7 +163,7 @@ impl Bank {
|
||||||
if let Instruction::NewContract(contract) = &tx.instruction {
|
if let Instruction::NewContract(contract) = &tx.instruction {
|
||||||
trace!("Transaction {}", contract.tokens);
|
trace!("Transaction {}", contract.tokens);
|
||||||
if contract.tokens < 0 {
|
if contract.tokens < 0 {
|
||||||
return Err(BankError::InvalidTxTokens);
|
return Err(BankError::NegativeTokens);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let bals = self.balances
|
let bals = self.balances
|
||||||
|
@ -412,7 +412,7 @@ mod tests {
|
||||||
let bank = Bank::new(&mint);
|
let bank = Bank::new(&mint);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
bank.transfer(-1, &mint.keypair(), pubkey, mint.last_id()),
|
bank.transfer(-1, &mint.keypair(), pubkey, mint.last_id()),
|
||||||
Err(BankError::InvalidTxTokens)
|
Err(BankError::NegativeTokens)
|
||||||
);
|
);
|
||||||
assert_eq!(bank.transaction_count(), 0);
|
assert_eq!(bank.transaction_count(), 0);
|
||||||
}
|
}
|
||||||
|
@ -548,7 +548,7 @@ mod tests {
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
bank.reserve_signature_with_last_id(&sig, &mint.last_id()),
|
bank.reserve_signature_with_last_id(&sig, &mint.last_id()),
|
||||||
Err(BankError::InvalidTxSignature(sig))
|
Err(BankError::DuplicateSiganture(sig))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -578,7 +578,7 @@ mod tests {
|
||||||
// Assert we're no longer able to use the oldest entry ID.
|
// Assert we're no longer able to use the oldest entry ID.
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
bank.reserve_signature_with_last_id(&sig, &mint.last_id()),
|
bank.reserve_signature_with_last_id(&sig, &mint.last_id()),
|
||||||
Err(BankError::InvalidTxLastId(mint.last_id()))
|
Err(BankError::LastIdNotFound(mint.last_id()))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue