2020-03-02 15:11:56 +01:00
|
|
|
use rhai::{Engine, EvalAltResult};
|
2017-11-03 17:58:51 +01:00
|
|
|
|
|
|
|
#[test]
|
2020-03-02 15:11:56 +01:00
|
|
|
fn test_chars() -> Result<(), EvalAltResult> {
|
2017-11-03 17:58:51 +01:00
|
|
|
let mut engine = Engine::new();
|
|
|
|
|
2020-03-02 15:11:56 +01:00
|
|
|
assert_eq!(engine.eval::<char>("'y'")?, 'y');
|
|
|
|
assert_eq!(engine.eval::<char>("'\\u2764'")?, '❤');
|
|
|
|
assert_eq!(engine.eval::<char>(r#"let x="hello"; x[2]"#)?, 'l');
|
2020-03-01 06:30:22 +01:00
|
|
|
assert_eq!(
|
2020-03-02 15:11:56 +01:00
|
|
|
engine.eval::<String>(r#"let x="hello"; x[2]='$'; x"#)?,
|
|
|
|
"he$lo".to_string()
|
2020-03-01 06:30:22 +01:00
|
|
|
);
|
|
|
|
|
2020-03-02 15:11:56 +01:00
|
|
|
assert!(engine.eval::<char>("'\\uhello'").is_err());
|
|
|
|
assert!(engine.eval::<char>("''").is_err());
|
2017-11-03 17:58:51 +01:00
|
|
|
|
2020-03-02 15:11:56 +01:00
|
|
|
Ok(())
|
2018-06-13 10:56:29 +02:00
|
|
|
}
|