use crate::engine::OptimizedHybridEngine;
use crate::*;
#[cfg(feature = "web-sys")]
use wasm_bindgen_test::*;
#[cfg(feature = "web-sys")]
wasm_bindgen_test_configure!(run_in_browser);
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_optimized_hybrid_engine_performance_monitoring() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(0);
let metrics = engine.get_performance_metrics();
assert!(metrics.is_none() || metrics.is_some());
}
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_monitoring_with_animations() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(1);
engine.start_performance_monitoring();
engine.end_performance_monitoring(0);
assert!(true); }
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_budget_enforcement() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(10);
engine.start_performance_monitoring();
engine.end_performance_monitoring(5);
assert!(true); }
#[cfg(feature = "web-sys")]
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_gpu_layer_management_integration() {
let mut engine = OptimizedHybridEngine::new();
let document = web_sys::window().unwrap().document().unwrap();
let element = document.create_element("div").unwrap();
let optimized = engine.optimize_for_gpu(&element);
assert!(optimized == true || optimized == false);
}
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_animation_pool_integration() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(0);
assert!(true); }
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_monitoring_with_real_animation() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(1);
assert!(true); }
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_monitoring_error_handling() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(0);
engine.start_performance_monitoring();
engine.end_performance_monitoring(1000);
assert!(true); }
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_monitoring_memory_tracking() {
let mut engine = OptimizedHybridEngine::new();
engine.start_performance_monitoring();
engine.end_performance_monitoring(1);
assert!(true); }
#[cfg_attr(feature = "web-sys", wasm_bindgen_test)]
#[cfg_attr(not(feature = "web-sys"), test)]
fn test_performance_monitoring_multiple_engines() {
let mut engine1 = OptimizedHybridEngine::new();
let mut engine2 = OptimizedHybridEngine::new();
engine1.start_performance_monitoring();
engine1.end_performance_monitoring(1);
engine2.start_performance_monitoring();
engine2.end_performance_monitoring(2);
assert!(true); }