liminal-rs 0.16.5

A conversation-based messaging bus built on beamr
Documentation
//! Key order is sorted at every depth whatever map type `serde_json` was built with.

use serde_json::{Map, Value};

#[test]
fn nested_members_come_out_in_sorted_key_order() -> Result<(), serde_json::Error> {
    let mut inner = Map::new();
    inner.insert("zeta".to_owned(), Value::from(1));
    inner.insert("alpha".to_owned(), Value::from(2));
    let mut outer = Map::new();
    outer.insert("v".to_owned(), Value::from(1));
    outer.insert("type".to_owned(), Value::from("topology"));
    outer.insert(
        "devices".to_owned(),
        Value::Array(vec![Value::Object(inner)]),
    );
    let bytes = super::to_vec(Value::Object(outer))?;
    assert_eq!(
        bytes,
        br#"{"devices":[{"alpha":2,"zeta":1}],"type":"topology","v":1}"#
    );
    Ok(())
}