Skip to content

Commit

Permalink
Add regression test
Browse files Browse the repository at this point in the history
  • Loading branch information
jonas-schievink committed Feb 19, 2020
1 parent 66b1ae4 commit fc2702c
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions src/test/ui/generator/issue-69039.rs
@@ -0,0 +1,30 @@
// run-pass

#![feature(generators, generator_trait)]

use std::ops::{Generator, GeneratorState};

fn my_scenario() -> impl Generator<String, Yield = &'static str, Return = String> {
|_arg: String| {
let my_name = yield "What is your name?";
let my_mood = yield "How are you feeling?";
format!("{} is {}", my_name.trim(), my_mood.trim())
}
}

fn main() {
let mut my_session = Box::pin(my_scenario());

assert_eq!(
my_session.as_mut().resume("_arg".to_string()),
GeneratorState::Yielded("What is your name?")
);
assert_eq!(
my_session.as_mut().resume("Your Name".to_string()),
GeneratorState::Yielded("How are you feeling?")
);
assert_eq!(
my_session.as_mut().resume("Sensory Organs".to_string()),
GeneratorState::Complete("Your Name is Sensory Organs".to_string())
);
}

0 comments on commit fc2702c

Please sign in to comment.