codama_nodes/contextual_value_nodes/
payer_value_node.rs

1use codama_nodes_derive::node;
2
3#[node]
4#[derive(Default)]
5pub struct PayerValueNode {}
6
7impl From<PayerValueNode> for crate::Node {
8    fn from(val: PayerValueNode) -> Self {
9        crate::Node::ContextualValue(val.into())
10    }
11}
12
13impl PayerValueNode {
14    pub fn new() -> Self {
15        Self::default()
16    }
17}
18
19#[cfg(test)]
20mod tests {
21    use super::*;
22
23    #[test]
24    fn new() {
25        let node = PayerValueNode::new();
26        assert_eq!(node, PayerValueNode {});
27    }
28
29    #[test]
30    fn to_json() {
31        let node = PayerValueNode::new();
32        let json = serde_json::to_string(&node).unwrap();
33        assert_eq!(json, r#"{"kind":"payerValueNode"}"#);
34    }
35
36    #[test]
37    fn from_json() {
38        let json = r#"{"kind":"payerValueNode"}"#;
39        let node: PayerValueNode = serde_json::from_str(json).unwrap();
40        assert_eq!(node, PayerValueNode::new());
41    }
42}