1
use conjure_cp_essence_parser::parse_essence;
2

            
3
#[test]
4
1
fn parses_variant_domains_literals_fields_and_active() {
5
1
    let source = r#"
6
1
language Essence 1.4
7
1
find x : variant { flag : bool, value : int(1..2) }
8
1
such that active(x, flag) -> x[flag] = true
9
1
such that x != variant { value = 2 }
10
1
"#;
11
1
    let (model, _) = parse_essence(source).unwrap();
12
1
    let printed = model.to_string();
13
1
    assert!(printed.contains("variant {flag: bool, value: int(1..2)}"));
14
1
    assert!(printed.contains("active(x, flag)"));
15
1
    assert!(printed.contains("variant{value = 2}"));
16
1
}