use javascript::*;
#[test]
fn boxed_prototype_strict_equality() -> Result<(), JSError> {
let script = r#"
(Object(123).__proto__ === Number.prototype);
"#;
let res = evaluate_script(script, false, None::<&std::path::Path>)?;
assert_eq!(res, "true", "Number prototype strict equality failed: {res}");
let script = r#"
(Object('x').__proto__ === String.prototype);
"#;
let res = evaluate_script(script, false, None::<&std::path::Path>)?;
assert_eq!(res, "true", "String prototype strict equality failed: {res}");
let script = r#"
(Object(true).__proto__ === Boolean.prototype);
"#;
let res = evaluate_script(script, false, None::<&std::path::Path>)?;
assert_eq!(res, "true", "Boolean prototype strict equality failed: {res}");
let script = r#"
(Object(7n).__proto__ === BigInt.prototype);
"#;
let res = evaluate_script(script, false, None::<&std::path::Path>)?;
assert_eq!(res, "true", "BigInt prototype strict equality failed: {res}");
Ok(())
}