@@ -2667,6 +2667,35 @@ def test_etag(self):
2667
2667
blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2668
2668
self .assertEqual (blob .etag , ETAG )
2669
2669
2670
+ def test_event_based_hold_getter_missing (self ):
2671
+ BLOB_NAME = 'blob-name'
2672
+ bucket = _Bucket ()
2673
+ properties = {}
2674
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2675
+ self .assertIsNone (blob .event_based_hold )
2676
+
2677
+ def test_event_based_hold_getter_false (self ):
2678
+ BLOB_NAME = 'blob-name'
2679
+ bucket = _Bucket ()
2680
+ properties = {'eventBasedHold' : False }
2681
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2682
+ self .assertFalse (blob .event_based_hold )
2683
+
2684
+ def test_event_based_hold_getter_true (self ):
2685
+ BLOB_NAME = 'blob-name'
2686
+ bucket = _Bucket ()
2687
+ properties = {'eventBasedHold' : True }
2688
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2689
+ self .assertTrue (blob .event_based_hold )
2690
+
2691
+ def test_event_based_hold_setter (self ):
2692
+ BLOB_NAME = 'blob-name'
2693
+ bucket = _Bucket ()
2694
+ blob = self ._make_one (BLOB_NAME , bucket = bucket )
2695
+ self .assertIsNone (blob .event_based_hold )
2696
+ blob .event_based_hold = True
2697
+ self .assertEqual (blob .event_based_hold , True )
2698
+
2670
2699
def test_generation (self ):
2671
2700
BUCKET = object ()
2672
2701
GENERATION = 42
@@ -2766,6 +2795,23 @@ def test_owner(self):
2766
2795
self .assertEqual (owner ['entity' ], 'project-owner-12345' )
2767
2796
self .assertEqual (owner ['entityId' ], '23456' )
2768
2797
2798
+ def test_retention_expiration_time (self ):
2799
+ from google .cloud ._helpers import _RFC3339_MICROS
2800
+ from google .cloud ._helpers import UTC
2801
+
2802
+ BLOB_NAME = 'blob-name'
2803
+ bucket = _Bucket ()
2804
+ TIMESTAMP = datetime .datetime (2014 , 11 , 5 , 20 , 34 , 37 , tzinfo = UTC )
2805
+ TIME_CREATED = TIMESTAMP .strftime (_RFC3339_MICROS )
2806
+ properties = {'retentionExpirationTime' : TIME_CREATED }
2807
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2808
+ self .assertEqual (blob .retention_expiration_time , TIMESTAMP )
2809
+
2810
+ def test_retention_expiration_time_unset (self ):
2811
+ BUCKET = object ()
2812
+ blob = self ._make_one ('blob-name' , bucket = BUCKET )
2813
+ self .assertIsNone (blob .retention_expiration_time )
2814
+
2769
2815
def test_self_link (self ):
2770
2816
BLOB_NAME = 'blob-name'
2771
2817
bucket = _Bucket ()
@@ -2811,6 +2857,35 @@ def test_storage_class_setter(self):
2811
2857
self .assertEqual (blob .storage_class , storage_class )
2812
2858
self .assertEqual (blob ._properties , {'storageClass' : storage_class })
2813
2859
2860
+ def test_temporary_hold_getter_missing (self ):
2861
+ BLOB_NAME = 'blob-name'
2862
+ bucket = _Bucket ()
2863
+ properties = {}
2864
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2865
+ self .assertIsNone (blob .temporary_hold )
2866
+
2867
+ def test_temporary_hold_getter_false (self ):
2868
+ BLOB_NAME = 'blob-name'
2869
+ bucket = _Bucket ()
2870
+ properties = {'temporaryHold' : False }
2871
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2872
+ self .assertFalse (blob .temporary_hold )
2873
+
2874
+ def test_temporary_hold_getter_true (self ):
2875
+ BLOB_NAME = 'blob-name'
2876
+ bucket = _Bucket ()
2877
+ properties = {'temporaryHold' : True }
2878
+ blob = self ._make_one (BLOB_NAME , bucket = bucket , properties = properties )
2879
+ self .assertTrue (blob .temporary_hold )
2880
+
2881
+ def test_temporary_hold_setter (self ):
2882
+ BLOB_NAME = 'blob-name'
2883
+ bucket = _Bucket ()
2884
+ blob = self ._make_one (BLOB_NAME , bucket = bucket )
2885
+ self .assertIsNone (blob .temporary_hold )
2886
+ blob .temporary_hold = True
2887
+ self .assertEqual (blob .temporary_hold , True )
2888
+
2814
2889
def test_time_deleted (self ):
2815
2890
from google .cloud ._helpers import _RFC3339_MICROS
2816
2891
from google .cloud ._helpers import UTC
0 commit comments