Skip to content

Commit 1446c31

Browse files
committed
chore: move test function to tests sub-module
1 parent 8cb4263 commit 1446c31

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

either_of/src/lib.rs

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -558,36 +558,6 @@ impl<A, B> EitherOr for Either<A, B> {
558558
}
559559
}
560560

561-
#[test]
562-
fn test_either_or() {
563-
let right = false.either_or(|_| 'a', |_| 12);
564-
assert!(matches!(right, Either::Right(12)));
565-
566-
let left = true.either_or(|_| 'a', |_| 12);
567-
assert!(matches!(left, Either::Left('a')));
568-
569-
let left = Some(12).either_or(|a| a, |_| 'a');
570-
assert!(matches!(left, Either::Left(12)));
571-
let right = None.either_or(|a: i32| a, |_| 'a');
572-
assert!(matches!(right, Either::Right('a')));
573-
574-
let result: Result<_, ()> = Ok(1.2f32);
575-
let left = result.either_or(|a| a * 2f32, |b| b);
576-
assert!(matches!(left, Either::Left(2.4f32)));
577-
578-
let result: Result<i32, _> = Err("12");
579-
let right = result.either_or(|a| a, |b| b.chars().next());
580-
assert!(matches!(right, Either::Right(Some('1'))));
581-
582-
let either = Either::<i32, char>::Left(12);
583-
let left = either.either_or(|a| a, |b| b);
584-
assert!(matches!(left, Either::Left(12)));
585-
586-
let either = Either::<i32, char>::Right('a');
587-
let right = either.either_or(|a| a, |b| b);
588-
assert!(matches!(right, Either::Right('a')));
589-
}
590-
591561
tuples!(EitherOf3 + EitherOf3Future + EitherOf3FutureProj {
592562
A => (B, C) + <A1, B, C>,
593563
B => (A, C) + <A, B1, C>,
@@ -1238,4 +1208,34 @@ mod tests {
12381208
fn unwrap_wrong_either() {
12391209
Either::<i32, &str>::Left(0).unwrap_right();
12401210
}
1211+
1212+
#[test]
1213+
fn either_or() {
1214+
let right = false.either_or(|_| 'a', |_| 12);
1215+
assert!(matches!(right, Either::Right(12)));
1216+
1217+
let left = true.either_or(|_| 'a', |_| 12);
1218+
assert!(matches!(left, Either::Left('a')));
1219+
1220+
let left = Some(12).either_or(|a| a, |_| 'a');
1221+
assert!(matches!(left, Either::Left(12)));
1222+
let right = None.either_or(|a: i32| a, |_| 'a');
1223+
assert!(matches!(right, Either::Right('a')));
1224+
1225+
let result: Result<_, ()> = Ok(1.2f32);
1226+
let left = result.either_or(|a| a * 2f32, |b| b);
1227+
assert!(matches!(left, Either::Left(2.4f32)));
1228+
1229+
let result: Result<i32, _> = Err("12");
1230+
let right = result.either_or(|a| a, |b| b.chars().next());
1231+
assert!(matches!(right, Either::Right(Some('1'))));
1232+
1233+
let either = Either::<i32, char>::Left(12);
1234+
let left = either.either_or(|a| a, |b| b);
1235+
assert!(matches!(left, Either::Left(12)));
1236+
1237+
let either = Either::<i32, char>::Right('a');
1238+
let right = either.either_or(|a| a, |b| b);
1239+
assert!(matches!(right, Either::Right('a')));
1240+
}
12411241
}

0 commit comments

Comments
 (0)