/ core / src / starknet / proto.rs
proto.rs
 1  pub mod v1alpha2 {
 2      tonic::include_proto!("apibara.starknet.v1alpha2");
 3      tonic::include_proto!("apibara.starknet.v1alpha2.serde");
 4  
 5      pub(crate) const FILE_DESCRIPTOR_SET: &[u8] =
 6          tonic::include_file_descriptor_set!("starknet_v1alpha2_descriptor");
 7  
 8      pub fn starknet_file_descriptor_set() -> &'static [u8] {
 9          FILE_DESCRIPTOR_SET
10      }
11  }
12  
13  #[cfg(test)]
14  mod tests {
15      use super::v1alpha2;
16  
17      #[test]
18      pub fn test_field_element_as_hex_string() {
19          let fe = v1alpha2::FieldElement::from_u64(0x1234567890abcdef);
20          let as_hex = serde_json::to_string(&fe).unwrap();
21          assert_eq!(
22              as_hex,
23              r#""0x0000000000000000000000000000000000000000000000001234567890abcdef""#
24          );
25          let back = serde_json::from_str::<v1alpha2::FieldElement>(&as_hex).unwrap();
26          assert_eq!(fe, back);
27      }
28  }