use crate::ast::FieldSelection;
use crate::ast::Selection;
use crate::ast::SelectionSet;
use crate::ast::tests::ast_test_utils::make_byte_span;
use crate::ast::tests::ast_test_utils::make_name;
#[test]
fn selection_set_construct_and_source_slice() {
let source = "{ name }";
let ss = SelectionSet {
span: make_byte_span(0, 8),
selections: vec![Selection::Field(FieldSelection {
span: make_byte_span(2, 6),
alias: None,
name: make_name("name", 2, 6),
arguments: vec![],
directives: vec![],
selection_set: None,
syntax: None,
})],
syntax: None,
};
assert_eq!(ss.selections.len(), 1);
let mut sink = String::new();
ss.append_source(&mut sink, Some(source));
assert_eq!(sink, "{ name }");
}