@@ -40,8 +40,8 @@ fn proposal_rule() -> Rules {
4040 CATEGORY_PARAMETERS . clone( ) ,
4141 ] ;
4242 Rules {
43- id : Some ( IdRule ) ,
44- ver : Some ( VerRule ) ,
43+ id : IdRule ,
44+ ver : VerRule ,
4545 content_type : ContentTypeRule {
4646 exp : ContentType :: Json ,
4747 } ,
@@ -76,8 +76,8 @@ fn proposal_comment_rule() -> Rules {
7676 CATEGORY_PARAMETERS . clone( ) ,
7777 ] ;
7878 Rules {
79- id : Some ( IdRule ) ,
80- ver : Some ( VerRule ) ,
79+ id : IdRule ,
80+ ver : VerRule ,
8181 content_type : ContentTypeRule {
8282 exp : ContentType :: Json ,
8383 } ,
@@ -129,8 +129,8 @@ fn proposal_submission_action_rule() -> Rules {
129129 . expect ( "Must be a valid json scheme file" ) ;
130130
131131 Rules {
132- id : Some ( IdRule ) ,
133- ver : Some ( VerRule ) ,
132+ id : IdRule ,
133+ ver : VerRule ,
134134 content_type : ContentTypeRule {
135135 exp : ContentType :: Json ,
136136 } ,
@@ -285,92 +285,7 @@ where
285285
286286#[ cfg( test) ]
287287mod tests {
288- use std:: time:: SystemTime ;
289-
290- use uuid:: { Timestamp , Uuid } ;
291-
292- use crate :: {
293- builder:: tests:: Builder ,
294- metadata:: SupportedField ,
295- providers:: { tests:: TestCatalystSignedDocumentProvider , CatalystSignedDocumentProvider } ,
296- validator:: {
297- document_rules_init,
298- rules:: { IdRule , VerRule } ,
299- } ,
300- UuidV7 ,
301- } ;
302-
303- #[ tokio:: test]
304- async fn document_id_and_ver_test ( ) {
305- let provider = TestCatalystSignedDocumentProvider :: default ( ) ;
306- let now = SystemTime :: now ( )
307- . duration_since ( SystemTime :: UNIX_EPOCH )
308- . unwrap ( )
309- . as_secs ( ) ;
310-
311- let uuid_v7 = UuidV7 :: new ( ) ;
312- let doc = Builder :: new ( )
313- . with_metadata_field ( SupportedField :: Id ( uuid_v7) )
314- . with_metadata_field ( SupportedField :: Ver ( uuid_v7) )
315- . build ( ) ;
316-
317- let is_id_valid = IdRule . check ( & doc, & provider) . await . unwrap ( ) ;
318- let is_ver_valid = VerRule . check ( & doc) . await . unwrap ( ) ;
319- assert ! ( is_id_valid && is_ver_valid) ;
320-
321- let ver = Uuid :: new_v7 ( Timestamp :: from_unix_time ( now - 1 , 0 , 0 , 0 ) )
322- . try_into ( )
323- . unwrap ( ) ;
324- let id = Uuid :: new_v7 ( Timestamp :: from_unix_time ( now + 1 , 0 , 0 , 0 ) )
325- . try_into ( )
326- . unwrap ( ) ;
327- assert ! ( ver < id) ;
328- let doc = Builder :: new ( )
329- . with_metadata_field ( SupportedField :: Id ( id) )
330- . with_metadata_field ( SupportedField :: Ver ( ver) )
331- . build ( ) ;
332-
333- let is_id_valid = IdRule . check ( & doc, & provider) . await . unwrap ( ) ;
334- let is_ver_valid = VerRule . check ( & doc) . await . unwrap ( ) ;
335- assert ! ( is_id_valid) ;
336- assert ! ( !is_ver_valid) ;
337-
338- let to_far_in_past = Uuid :: new_v7 ( Timestamp :: from_unix_time (
339- now - provider. past_threshold ( ) . unwrap ( ) . as_secs ( ) - 1 ,
340- 0 ,
341- 0 ,
342- 0 ,
343- ) )
344- . try_into ( )
345- . unwrap ( ) ;
346- let doc = Builder :: new ( )
347- . with_metadata_field ( SupportedField :: Id ( to_far_in_past) )
348- . with_metadata_field ( SupportedField :: Ver ( to_far_in_past) )
349- . build ( ) ;
350-
351- let is_id_valid = IdRule . check ( & doc, & provider) . await . unwrap ( ) ;
352- let is_ver_valid = VerRule . check ( & doc) . await . unwrap ( ) ;
353- assert ! ( !is_id_valid) ;
354- assert ! ( is_ver_valid) ;
355-
356- let to_far_in_future = Uuid :: new_v7 ( Timestamp :: from_unix_time (
357- now + provider. future_threshold ( ) . unwrap ( ) . as_secs ( ) + 1 ,
358- 0 ,
359- 0 ,
360- 0 ,
361- ) )
362- . try_into ( )
363- . unwrap ( ) ;
364- let doc = Builder :: new ( )
365- . with_metadata_field ( SupportedField :: Id ( to_far_in_future) )
366- . with_metadata_field ( SupportedField :: Ver ( to_far_in_future) )
367- . build ( ) ;
368-
369- let is_id_valid = IdRule . check ( & doc, & provider) . await . unwrap ( ) ;
370- let is_ver_valid = VerRule . check ( & doc) . await . unwrap ( ) ;
371- assert ! ( !is_id_valid) ;
372- assert ! ( is_ver_valid) ;
373- }
288+ use crate :: validator:: document_rules_init;
374289
375290 #[ test]
376291 fn document_rules_init_test ( ) {
0 commit comments