20
20
import static org .junit .Assert .assertEquals ;
21
21
import static org .junit .Assert .assertFalse ;
22
22
import static org .junit .Assert .assertNotNull ;
23
- import static org .junit .Assert .assertTrue ;
24
23
25
- import com .google .cloud .storage .Bucket ;
26
24
import com .google .cloud .storage .BucketInfo ;
27
25
import com .google .cloud .storage .BucketInfo .LifecycleRule ;
28
26
import com .google .cloud .storage .BucketInfo .LifecycleRule .AbortIncompleteMPUAction ;
29
27
import com .google .cloud .storage .BucketInfo .LifecycleRule .LifecycleAction ;
30
28
import com .google .cloud .storage .BucketInfo .LifecycleRule .LifecycleCondition ;
29
+ import com .google .cloud .storage .BucketInfo .LifecycleRule .SetStorageClassLifecycleAction ;
31
30
import com .google .cloud .storage .Storage ;
32
- import com .google .cloud .storage .Storage .BucketField ;
33
31
import com .google .cloud .storage .StorageClass ;
34
32
import com .google .cloud .storage .TransportCompatibility .Transport ;
35
33
import com .google .cloud .storage .it .runner .StorageITRunner ;
36
34
import com .google .cloud .storage .it .runner .annotations .Backend ;
37
35
import com .google .cloud .storage .it .runner .annotations .CrossRun ;
38
36
import com .google .cloud .storage .it .runner .annotations .Inject ;
39
37
import com .google .cloud .storage .it .runner .registry .Generator ;
40
- import com .google .cloud .storage .testing .RemoteStorageHelper ;
41
38
import com .google .common .collect .ImmutableList ;
42
39
import java .time .OffsetDateTime ;
43
- import java .util .concurrent .ExecutionException ;
44
- import java .util .concurrent .TimeUnit ;
45
40
import org .junit .Test ;
46
41
import org .junit .runner .RunWith ;
47
42
@@ -70,9 +65,9 @@ public class ITBucketLifecycleTest {
70
65
@ Inject public Generator generator ;
71
66
72
67
@ Test
73
- public void testGetBucketLifecycleRules () {
68
+ public void testGetBucketLifecycleRules () throws Exception {
74
69
String lifecycleTestBucketName = generator .randomBucketName ();
75
- storage . create (
70
+ BucketInfo bucketInfo =
76
71
BucketInfo .newBuilder (lifecycleTestBucketName )
77
72
.setLocation ("us" )
78
73
.setLifecycleRules (
@@ -90,16 +85,13 @@ public void testGetBucketLifecycleRules() {
90
85
.setCustomTimeBeforeOffsetDateTime (OffsetDateTime .now ())
91
86
.setDaysSinceCustomTime (30 )
92
87
.build ())))
93
- .build ());
94
- Bucket remoteBucket =
95
- storage .get (lifecycleTestBucketName , Storage .BucketGetOption .fields (BucketField .LIFECYCLE ));
96
- LifecycleRule lifecycleRule = remoteBucket .getLifecycleRules ().get (0 );
97
- try {
98
- assertTrue (
99
- lifecycleRule
100
- .getAction ()
101
- .getActionType ()
102
- .equals (LifecycleRule .SetStorageClassLifecycleAction .TYPE ));
88
+ .build ();
89
+ try (TemporaryBucket tempB =
90
+ TemporaryBucket .newBuilder ().setBucketInfo (bucketInfo ).setStorage (storage ).build ()) {
91
+ BucketInfo remoteBucket = tempB .getBucket ();
92
+ LifecycleRule lifecycleRule = remoteBucket .getLifecycleRules ().get (0 );
93
+ assertThat (lifecycleRule .getAction ().getActionType ())
94
+ .isEqualTo (SetStorageClassLifecycleAction .TYPE );
103
95
assertEquals (3 , lifecycleRule .getCondition ().getNumberOfNewerVersions ().intValue ());
104
96
assertNotNull (lifecycleRule .getCondition ().getCreatedBeforeOffsetDateTime ());
105
97
assertFalse (lifecycleRule .getCondition ().getIsLive ());
@@ -109,51 +101,46 @@ public void testGetBucketLifecycleRules() {
109
101
assertNotNull (lifecycleRule .getCondition ().getNoncurrentTimeBeforeOffsetDateTime ());
110
102
assertEquals (30 , lifecycleRule .getCondition ().getDaysSinceCustomTime ().intValue ());
111
103
assertNotNull (lifecycleRule .getCondition ().getCustomTimeBeforeOffsetDateTime ());
112
- } finally {
113
- storage .delete (lifecycleTestBucketName );
114
104
}
115
105
}
116
106
117
107
@ Test
118
- public void testGetBucketAbortMPULifecycle () {
108
+ public void testGetBucketAbortMPULifecycle () throws Exception {
119
109
String lifecycleTestBucketName = generator .randomBucketName ();
120
- storage . create (
110
+ BucketInfo bucketInfo =
121
111
BucketInfo .newBuilder (lifecycleTestBucketName )
122
112
.setLocation ("us" )
123
113
.setLifecycleRules (
124
114
ImmutableList .of (
125
115
new LifecycleRule (
126
116
LifecycleAction .newAbortIncompleteMPUploadAction (),
127
117
LifecycleCondition .newBuilder ().setAge (1 ).build ())))
128
- .build ()) ;
129
- Bucket remoteBucket =
130
- storage . get ( lifecycleTestBucketName , Storage . BucketGetOption . fields ( BucketField . LIFECYCLE ));
131
- LifecycleRule lifecycleRule = remoteBucket . getLifecycleRules (). get ( 0 );
132
- try {
118
+ .build ();
119
+ try ( TemporaryBucket tempB =
120
+ TemporaryBucket . newBuilder (). setBucketInfo ( bucketInfo ). setStorage ( storage ). build ()) {
121
+ BucketInfo remoteBucket = tempB . getBucket ( );
122
+ LifecycleRule lifecycleRule = remoteBucket . getLifecycleRules (). get ( 0 );
133
123
assertEquals (AbortIncompleteMPUAction .TYPE , lifecycleRule .getAction ().getActionType ());
134
124
assertEquals (1 , lifecycleRule .getCondition ().getAge ().intValue ());
135
- } finally {
136
- storage .delete (lifecycleTestBucketName );
137
125
}
138
126
}
139
127
140
128
@ Test
141
- public void testDeleteLifecycleRules () throws ExecutionException , InterruptedException {
129
+ public void testDeleteLifecycleRules () throws Exception {
142
130
String bucketName = generator .randomBucketName ();
143
- Bucket bucket =
144
- storage .create (
145
- BucketInfo .newBuilder (bucketName )
146
- .setLocation ("us" )
147
- .setLifecycleRules (LIFECYCLE_RULES )
148
- .build ());
149
- assertThat (bucket .getLifecycleRules ()).isNotNull ();
150
- assertThat (bucket .getLifecycleRules ()).hasSize (2 );
151
- try {
152
- Bucket updatedBucket = bucket .toBuilder ().deleteLifecycleRules ().build ();
131
+ BucketInfo bucketInfo =
132
+ BucketInfo .newBuilder (bucketName )
133
+ .setLocation ("us" )
134
+ .setLifecycleRules (LIFECYCLE_RULES )
135
+ .build ();
136
+ try (TemporaryBucket tempB =
137
+ TemporaryBucket .newBuilder ().setBucketInfo (bucketInfo ).setStorage (storage ).build ()) {
138
+ BucketInfo bucket = tempB .getBucket ();
139
+ assertThat (bucket .getLifecycleRules ()).isNotNull ();
140
+ assertThat (bucket .getLifecycleRules ()).hasSize (2 );
141
+ BucketInfo updatedBucket = bucket .toBuilder ().deleteLifecycleRules ().build ();
153
142
storage .update (updatedBucket );
154
143
assertThat (updatedBucket .getLifecycleRules ()).hasSize (0 );
155
- } finally {
156
- RemoteStorageHelper .forceDelete (storage , bucketName , 5 , TimeUnit .SECONDS );
157
144
}
158
145
}
159
146
}
0 commit comments