irongit
jv/tests/jq_engine_tests.rs
25 lines861 BRust
1use jv::jq_engine::JqEngine;
2
3#[test]
4fn test_identity() {
5 let input: serde_json::Value = serde_json::json!({"a": 1, "b": 2});
6 let result = JqEngine::execute(".", &input);
7 assert!(result.error.is_none(), "Error: {:?}", result.error);
8 assert_eq!(result.output.len(), 1);
9}
10
11#[test]
12fn test_field_access() {
13 let input: serde_json::Value = serde_json::json!({"name": "Alice", "age": 30});
14 let result = JqEngine::execute(".name", &input);
15 assert!(result.error.is_none(), "Error: {:?}", result.error);
16 assert_eq!(result.output, vec!["\"Alice\""]);
17}
18
19#[test]
20fn test_array_iter() {
21 let input: serde_json::Value = serde_json::json!({"items": [1, 2, 3]});
22 let result = JqEngine::execute(".items[]", &input);
23 assert!(result.error.is_none(), "Error: {:?}", result.error);
24 assert_eq!(result.output, vec!["1", "2", "3"]);
25}