Revert "Add missing InstructionError::IllegalOwner conversion (backport #21524) (#21548)"

This reverts commit b3904d80e6.
This commit is contained in:
Trent Nelson
2021-12-13 08:48:39 -07:00
committed by Tao Zhu
parent ef760fba32
commit afd17ec5d9
4 changed files with 1 additions and 65 deletions

1
Cargo.lock generated
View File

@ -5676,7 +5676,6 @@ version = "1.8.7"
dependencies = [ dependencies = [
"bincode", "bincode",
"bs58 0.3.1", "bs58 0.3.1",
"enum-iterator",
"prost", "prost",
"serde", "serde",
"serde_derive", "serde_derive",

View File

@ -19,9 +19,6 @@ solana-account-decoder = { path = "../account-decoder", version = "=1.8.7" }
solana-sdk = { path = "../sdk", version = "=1.8.7" } solana-sdk = { path = "../sdk", version = "=1.8.7" }
solana-transaction-status = { path = "../transaction-status", version = "=1.8.7" } solana-transaction-status = { path = "../transaction-status", version = "=1.8.7" }
[dev-dependencies]
enum-iterator = "0.6.0"
[lib] [lib]
crate-type = ["lib"] crate-type = ["lib"]
name = "solana_storage_proto" name = "solana_storage_proto"

View File

@ -12,13 +12,5 @@ fn main() -> Result<(), std::io::Error> {
.build_client(true) .build_client(true)
.build_server(false) .build_server(false)
.format(true) .format(true)
.type_attribute(
"TransactionErrorType",
"#[cfg_attr(test, derive(enum_iterator::IntoEnumIterator))]",
)
.type_attribute(
"InstructionErrorType",
"#[cfg_attr(test, derive(enum_iterator::IntoEnumIterator))]",
)
.compile(&protos, &[proto_base_path]) .compile(&protos, &[proto_base_path])
} }

View File

@ -523,7 +523,6 @@ impl TryFrom<tx_by_addr::TransactionError> for TransactionError {
46 => InstructionError::InvalidAccountOwner, 46 => InstructionError::InvalidAccountOwner,
47 => InstructionError::ArithmeticOverflow, 47 => InstructionError::ArithmeticOverflow,
48 => InstructionError::UnsupportedSysvar, 48 => InstructionError::UnsupportedSysvar,
49 => InstructionError::IllegalOwner,
_ => return Err("Invalid InstructionError"), _ => return Err("Invalid InstructionError"),
}; };
@ -849,7 +848,7 @@ impl TryFrom<tx_by_addr::TransactionByAddr> for Vec<TransactionByAddrInfo> {
#[cfg(test)] #[cfg(test)]
mod test { mod test {
use {super::*, enum_iterator::IntoEnumIterator}; use super::*;
#[test] #[test]
fn test_reward_type_encode() { fn test_reward_type_encode() {
@ -1414,55 +1413,4 @@ mod test {
tx_by_addr_transaction_error.try_into().unwrap() tx_by_addr_transaction_error.try_into().unwrap()
); );
} }
#[test]
fn test_error_enums() {
let ix_index = 1;
let custom_error = 42;
for error in tx_by_addr::TransactionErrorType::into_enum_iter() {
if error != tx_by_addr::TransactionErrorType::InstructionError {
let tx_by_addr_error = tx_by_addr::TransactionError {
transaction_error: error as i32,
instruction_error: None,
};
let transaction_error: TransactionError = tx_by_addr_error
.clone()
.try_into()
.unwrap_or_else(|_| panic!("{:?} conversion implemented?", error));
assert_eq!(tx_by_addr_error, transaction_error.into());
} else {
for ix_error in tx_by_addr::InstructionErrorType::into_enum_iter() {
if ix_error != tx_by_addr::InstructionErrorType::Custom {
let tx_by_addr_error = tx_by_addr::TransactionError {
transaction_error: error as i32,
instruction_error: Some(tx_by_addr::InstructionError {
index: ix_index,
error: ix_error as i32,
custom: None,
}),
};
let transaction_error: TransactionError = tx_by_addr_error
.clone()
.try_into()
.unwrap_or_else(|_| panic!("{:?} conversion implemented?", ix_error));
assert_eq!(tx_by_addr_error, transaction_error.into());
} else {
let tx_by_addr_error = tx_by_addr::TransactionError {
transaction_error: error as i32,
instruction_error: Some(tx_by_addr::InstructionError {
index: ix_index,
error: ix_error as i32,
custom: Some(tx_by_addr::CustomError {
custom: custom_error,
}),
}),
};
let transaction_error: TransactionError =
tx_by_addr_error.clone().try_into().unwrap();
assert_eq!(tx_by_addr_error, transaction_error.into());
}
}
}
}
}
} }