use potato::SessionCache;
#[test]
fn test_session_cache_cookie_methods() {
let cache = SessionCache::new();
cache.set_cookie("user_token", "abc123");
cache.set_cookie("theme", "dark");
let token = cache.get_cookie("user_token");
assert!(token.is_none());
cache.remove_cookie("old_session");
println!("✅ SessionCache cookie methods test passed");
}
#[test]
fn test_session_cache_cookie_parse_and_apply() {
use potato::HttpResponse;
let mut cache = SessionCache::new();
cache.parse_request_cookies("session_id=xyz789; user_pref=light");
let session_id = cache.get_cookie("session_id");
assert_eq!(session_id, Some("xyz789".to_string()));
let user_pref = cache.get_cookie("user_pref");
assert_eq!(user_pref, Some("light".to_string()));
cache.set_cookie("new_token", "value123");
cache.remove_cookie("old_cookie");
let mut response = HttpResponse::text("test");
cache.apply_cookies(&mut response);
assert!(response.headers.contains_key("Set-Cookie"));
println!("✅ SessionCache cookie parse and apply test passed");
}