@@ -783,6 +783,39 @@ def test_timestamp_are_incremented_on_delete(self):
783783 after = self .storage .resource_timestamp (** self .storage_kw )
784784 self .assertTrue (before < after )
785785
786+ def test_all_timestamps_by_parent_id (self ):
787+ self .storage .create (obj = {"id" : "main" }, resource_name = "bucket" , parent_id = "" )
788+ self .storage .create (obj = {"id" : "cid1" }, resource_name = "collection" , parent_id = "/main" )
789+ self .storage .create (obj = {"id" : "cid2" }, resource_name = "collection" , parent_id = "/main" )
790+ self .storage .create (obj = {}, resource_name = "record" , parent_id = "/main/cid2" )
791+ self .storage .create (obj = {}, resource_name = "record" , parent_id = "/main/cid2" )
792+
793+ self .assertEqual (
794+ {
795+ "" : self .storage .resource_timestamp (resource_name = "bucket" , parent_id = "" ),
796+ },
797+ self .storage .all_resources_timestamps (resource_name = "bucket" ),
798+ )
799+ self .assertEqual (
800+ {
801+ "/main" : self .storage .resource_timestamp (
802+ resource_name = "collection" , parent_id = "/main"
803+ ),
804+ },
805+ self .storage .all_resources_timestamps (resource_name = "collection" ),
806+ )
807+ self .assertEqual (
808+ {
809+ "/main/cid1" : self .storage .resource_timestamp (
810+ resource_name = "record" , parent_id = "/main/cid1"
811+ ),
812+ "/main/cid2" : self .storage .resource_timestamp (
813+ resource_name = "record" , parent_id = "/main/cid2"
814+ ),
815+ },
816+ self .storage .all_resources_timestamps (resource_name = "record" ),
817+ )
818+
786819 @skip_if_ci
787820 def test_timestamps_are_unique (self ): # pragma: no cover
788821 obtained = []
0 commit comments