Enum strict_encoding::test_helpers::EnumEncodingTestFailure [−][src]
pub enum EnumEncodingTestFailure<T> where
T: Clone + PartialEq + Debug, {
EncoderFailure(T, Error),
DecoderFailure(T, Error, Vec<u8>),
DecodedDiffersFromOriginal {
original: T,
decoded: T,
},
ValueMismatch {
enum_name: &'static str,
variant_name: &'static str,
expected: usize,
actual: usize,
},
EncodedValueMismatch {
enum_name: &'static str,
variant_name: &'static str,
expected: Vec<u8>,
actual: Vec<u8>,
},
DecoderWrongErrorOnUnknownValue(u8, Error),
UnknownDecodesToVariant(u8, T),
FailedEq(T),
FailedNe(T, T),
FailedOrd(T, T),
}
use strict_encoding_test crate instead
Expand description
Failures happening during strict encoding tests of enum encodings.
NB: These errors are specific for testing configuration and should not be used in non-test environment.
Variants
use strict_encoding_test crate instead
Failure during encoding enum variant
Tuple Fields of EncoderFailure
0: T
use strict_encoding_test crate instead
1: Error
use strict_encoding_test crate instead
use strict_encoding_test crate instead
Failure during decoding binary representation of enum variant
Tuple Fields of DecoderFailure
use strict_encoding_test crate instead
Test case failure representing mismatch between enum variant produced by decoding from the originally encoded enum variant
Fields of DecodedDiffersFromOriginal
use strict_encoding_test crate instead
Test case failure representing mismatch between expected enum variant primitive value and the actual primitive value assigned to the enum variant by the rust compiler
Fields of ValueMismatch
enum_name: &'static str
use strict_encoding_test crate instead
Name of the enum being tested
variant_name: &'static str
use strict_encoding_test crate instead
Name of the enum variant being tested
expected: usize
use strict_encoding_test crate instead
Expected primitive value for the tested enum variant
actual: usize
use strict_encoding_test crate instead
Actual primitive value of the tested enum variant
use strict_encoding_test crate instead
Test case failure representing failed byte string representation of the encoded enum variant
Fields of EncodedValueMismatch
enum_name: &'static str
use strict_encoding_test crate instead
Name of the enum being tested
variant_name: &'static str
use strict_encoding_test crate instead
Name of the enum variant being tested
expected: Vec<u8>
use strict_encoding_test crate instead
Expected encoded byte string for the tested enum variant
actual: Vec<u8>
use strict_encoding_test crate instead
Actual encoded byte string of the tested enum variant
use strict_encoding_test crate instead
Test case failure representing incorrect decoder error during processing out-of-enum range value
Tuple Fields of DecoderWrongErrorOnUnknownValue
use strict_encoding_test crate instead
Test case failure representing a out-of-enum range primitive value still being interpreted as one of enum variants
Tuple Fields of UnknownDecodesToVariant
0: u8
use strict_encoding_test crate instead
Value which was decoded into an enum variant
1: T
use strict_encoding_test crate instead
Enum variant resulting from decoding wrong value
use strict_encoding_test crate instead
Test case failure due to wrong PartialEq
or Eq
implementation:
enum variant is not equal to itself
Tuple Fields of FailedEq
use strict_encoding_test crate instead
Test case failure due to wrong PartialEq
or Eq
implementation:
two distinct enum variants are still equal
Tuple Fields of FailedNe
use strict_encoding_test crate instead
Test case failure due to wrong PartialOrd
or Ord
implementation
happening when enum variants ordering is broken
Tuple Fields of FailedOrd
0: T
use strict_encoding_test crate instead
First of two enum variants which are disordered. This variant
should smaller than the second one, but Ord
operation
treats it as a larger one
1: T
use strict_encoding_test crate instead
Second of two enum variants which are disordered. This variant
should larger than the second one, but Ord
operation
treats it as a smaller one
Trait Implementations
Performs the conversion.
impl<T: PartialEq> PartialEq<EnumEncodingTestFailure<T>> for EnumEncodingTestFailure<T> where
T: Clone + PartialEq + Debug,
impl<T: PartialEq> PartialEq<EnumEncodingTestFailure<T>> for EnumEncodingTestFailure<T> where
T: Clone + PartialEq + Debug,
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl<T> RefUnwindSafe for EnumEncodingTestFailure<T> where
T: RefUnwindSafe,
impl<T> Send for EnumEncodingTestFailure<T> where
T: Send,
impl<T> Sync for EnumEncodingTestFailure<T> where
T: Sync,
impl<T> Unpin for EnumEncodingTestFailure<T> where
T: Unpin,
impl<T> UnwindSafe for EnumEncodingTestFailure<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more