diff --git a/src/ast/mod.rs b/src/ast/mod.rs index 8e3f555..443511d 100644 --- a/src/ast/mod.rs +++ b/src/ast/mod.rs @@ -56,7 +56,6 @@ pub mod build { #[cfg(test)] mod build_tests { - use std::process::id; use super::*; use crate::parser::DeimosParser; use pest::Parser; @@ -109,5 +108,26 @@ pub mod build { let pair = parse(Rule::DStringExpression, "${thing}"); let d_string_expression = build_d_string_expression(pair); } + + #[test] + fn d_string_inner() { + let pair = parse(Rule::DStringInner, "Hello!"); + let d_string_inner = build_d_string_inner(pair); + assert_eq!("Hello!", d_string_inner); + } + + #[test] + fn d_string_mixed() { + let pair = parse(Rule::DString, "\"Hello, ${world}!\""); + let d_string = build_d_string(pair); + assert_eq!(d_string.inners().count(), 2); + assert_eq!(d_string.expressions().count(), 1); + } + + #[test] + fn expression_simple_call() { + let pair = parse(Rule::Expression, "hello(42)"); + let expression = build_expression(pair); + } } }