From fc4c5d2718731442517059f3eceff8dcacce42c2 Mon Sep 17 00:00:00 2001 From: Mubelotix Date: Wed, 30 Jul 2025 16:16:12 +0200 Subject: [PATCH] Add dump test --- crates/dump/src/reader/mod.rs | 39 ++++++++++++++++++ .../dump/tests/assets/v6-with-webhooks.dump | Bin 0 -> 1693 bytes 2 files changed, 39 insertions(+) create mode 100644 crates/dump/tests/assets/v6-with-webhooks.dump diff --git a/crates/dump/src/reader/mod.rs b/crates/dump/src/reader/mod.rs index 328a01f60..a34365905 100644 --- a/crates/dump/src/reader/mod.rs +++ b/crates/dump/src/reader/mod.rs @@ -372,6 +372,7 @@ pub(crate) mod test { assert_eq!(dump.features().unwrap().unwrap(), RuntimeTogglableFeatures::default()); assert_eq!(dump.network().unwrap(), None); + assert_eq!(dump.webhooks(), None); } #[test] @@ -442,6 +443,44 @@ pub(crate) mod test { insta::assert_snapshot!(network.remotes.get("ms-2").as_ref().unwrap().search_api_key.as_ref().unwrap(), @"foo"); } + #[test] + fn import_dump_v6_webhooks() { + let dump = File::open("tests/assets/v6-with-webhooks.dump").unwrap(); + let dump = DumpReader::open(dump).unwrap(); + + // top level infos + insta::assert_snapshot!(dump.date().unwrap(), @"2025-07-30 14:06:57.240882 +00:00:00"); + insta::assert_debug_snapshot!(dump.instance_uid().unwrap(), @r" + Some( + cb887dcc-34b3-48d1-addd-9815ae721a81, + ) + "); + + // webhooks + + let webhooks = dump.webhooks().unwrap(); + insta::assert_json_snapshot!(webhooks, @r#" + { + "webhooks": { + "exampleName": { + "url": "https://example.com/hook", + "headers": { + "authorization": "TOKEN" + } + }, + "otherName": { + "url": "https://example.com/authorization-less", + "headers": {} + }, + "third": { + "url": "https://third.com", + "headers": {} + } + } + } + "#); + } + #[test] fn import_dump_v5() { let dump = File::open("tests/assets/v5.dump").unwrap(); diff --git a/crates/dump/tests/assets/v6-with-webhooks.dump b/crates/dump/tests/assets/v6-with-webhooks.dump new file mode 100644 index 0000000000000000000000000000000000000000..89b1f61be5a0cb74449d0f372aa388fb7f5ac1f1 GIT binary patch literal 1693 zcmV;O24eXiiwFP!00000|Ls~|lbbdW_j5i4p)=`SGSkUS(n&9QXr_}0 zB+m3OxFF_o_1wqm7w9MJN?`lWcMeW!J4vJ8gE3+yV3*ZOzg_oabZ~ec@j^=B=y_q# z9X+3P#||SzJ>nA|6A!8O5QpA~j*ft~k*v0?(SODAMV7~J1bNBD2hofUiBGpb@&bg7 z{f~fz$#nV^+Mj})vH#)G+yCUxR{$4k^6Yuzc^%(4_yV2XrI6b3dh! zfVe&y?$IwCpa;d#PCdkjxv2A*DB+v2GO$=%>;5DP-6$IFeRcUn~*AKT@P1#9( zKda9}J)#@n2j$gRUR!U61@8^K&4gU*a&PPXZQp(m`d41V%CeGH zvi!t&*N>IgRs{yC^;oWb^Jrx7C6Jf!sg|jD2VuZ%;b*je48(s}9+J)Y@6!OA_F}929qIp%dQmk48&*fQ_w(2Wse!70vmT9-z?yvXDgXURYNKvnv zOChhS`f_!CA*9+UtVX(f6SZusnp}#fvqW$%>h%+;<@f1o^}TMNwS~-Q6=y}?bTcye zMD#}5v&Y}XVEo7arvIbB3yuFD0kBaQMP^URwkXDSEoPO}`}7;*OWy@x_Gg?)cE|}} z$p4Z5fd7Yq@&6;BBjnydxb66}Hvv!vJXtp&7YGthHGh7%+H9O9w>jD$J|q7_{J`Y@jsZo3A1Lj!!chJP(|h&@0?0S>{}BN5zi84r zpZEEb*9}nnQjyvXFwDUHW_2~wR66`Ar6@Usf|AWt7&sFdgDsf#YbW{Sm!GZY;u@~& zl#G2rc-?oNC%%@!EM~DPEf`)l>nE zqIqxEI%Tc;^MiF(X&HF-sv8DUN6ebHNs*@?QRfpr%gcM(WIPEnEU1$T>N|vD;jlP` z#9T%=4?Qo5aduamkN2iXiv1n+s3o_m5xy$88Hd~vD0HUPWwErb`ee=3v??HF1FO-5 zHDaqG!3vE^-|eVQ$Z2rrrAk{otk@_^upjuyNiY+j*fek==6en$ltf<4z?nA{>jISl zO?vKBfA^$k$n^MlH%0fNAJeo>TC$RVf+L@*E}QxxVH~3*2%Ruuu|q@_IShG$lai48 zC?uF==&pV?`I_;b9h>?X)7|vci<UvmG4@jd<*zALl;I|df^I;{>#C;deib_*w}2RPsq=2p$rE^L^qr&XQ*wJgLqfBF3B3!Mws zdEVh6?+oA+kfpzK12q!N{58Knif&e8Y;-Uj)-ZGp!|1U1occcuN3;JsJhc5!x00G(F71bTsQmusZYA(Q_3!=*krn5ppAMOrVPb}f875|!nDG_G4E4xEF`_Hj nzy$6$5F>iYIE)5kL|+9Gg%}&c-N3-W;H$^K8)Yw;07L))oiSHZ literal 0 HcmV?d00001