use oxur_ast::ast::*;
use oxur_ast::gen_rs::{generate_rust, RustCodegen};
#[test]
fn test_empty_crate_generates() {
let crate_node = Crate {
attrs: Vec::new(),
items: Vec::new(),
spans: ModSpans { inner_span: Span::DUMMY, inject_use_span: Span::DUMMY },
id: NodeId(0),
is_placeholder: false,
};
let result = generate_rust(&crate_node);
assert!(result.is_ok(), "Empty crate should generate successfully");
let code = result.unwrap();
assert_eq!(code, "", "Empty crate with no header should generate empty string");
let mut codegen = RustCodegen::with_header();
let result_with_header = codegen.generate_crate(&crate_node);
assert!(result_with_header.is_ok(), "Empty crate with header should generate successfully");
let code_with_header = result_with_header.unwrap();
assert!(
code_with_header.contains("Generated by Oxur"),
"Should contain generator comment when header enabled"
);
}
#[test]
fn test_codegen_new() {
let _codegen = RustCodegen::new();
assert_eq!(0, 0); }
#[test]
fn test_codegen_default() {
let _codegen = RustCodegen::default();
assert_eq!(0, 0); }