2323import com .google .cloud .logging .SinkInfo .Destination ;
2424import com .google .cloud .logging .SinkInfo .Destination .BucketDestination ;
2525import com .google .cloud .logging .SinkInfo .Destination .DatasetDestination ;
26+ import com .google .cloud .logging .SinkInfo .Destination .LoggingBucketDestination ;
2627import com .google .cloud .logging .SinkInfo .Destination .TopicDestination ;
2728import com .google .cloud .logging .SinkInfo .VersionFormat ;
2829import org .junit .Test ;
@@ -37,6 +38,8 @@ public class SinkInfoTest {
3738 private static final DatasetDestination DATASET_DESTINATION =
3839 DatasetDestination .of ("project" , "dataset" );
3940 private static final TopicDestination TOPIC_DESTINATION = TopicDestination .of ("project" , "topic" );
41+ private static final LoggingBucketDestination LOGGING_BUCKET_DESTINATION =
42+ LoggingBucketDestination .of ("project" , "location" , "bucket" );
4043 private static final SinkInfo BUCKET_SINK_INFO =
4144 SinkInfo .newBuilder (NAME , BUCKET_DESTINATION )
4245 .setFilter (FILTER )
@@ -79,6 +82,19 @@ public void testOfTopicDestination() {
7982 assertEquals ("topic" , topicDestination .getTopic ());
8083 }
8184
85+ @ Test
86+ public void testOfLoggingBucketDestination () {
87+ assertEquals (Destination .Type .LOGGING_BUCKET , LOGGING_BUCKET_DESTINATION .getType ());
88+ assertEquals ("project" , LOGGING_BUCKET_DESTINATION .getProject ());
89+ assertEquals ("location" , LOGGING_BUCKET_DESTINATION .getLocation ());
90+ assertEquals ("bucket" , LOGGING_BUCKET_DESTINATION .getBucket ());
91+ LoggingBucketDestination loggingBucketDestination =
92+ LoggingBucketDestination .of ("location" , "bucket" );
93+ assertNull (loggingBucketDestination .getProject ());
94+ assertEquals ("location" , loggingBucketDestination .getLocation ());
95+ assertEquals ("bucket" , loggingBucketDestination .getBucket ());
96+ }
97+
8298 @ Test
8399 public void testToAndFromPbDestination () {
84100 BucketDestination bucketDestination = Destination .fromPb (BUCKET_DESTINATION .toPb ("other" ));
@@ -95,6 +111,13 @@ public void testToAndFromPbDestination() {
95111 assertEquals ("project" , topicDestination .getProject ());
96112 assertEquals ("topic" , topicDestination .getTopic ());
97113 compareTopicDestination (TOPIC_DESTINATION , topicDestination );
114+ LoggingBucketDestination loggingBucketDestination =
115+ Destination .fromPb (LOGGING_BUCKET_DESTINATION .toPb ("other" ));
116+ assertEquals (Destination .Type .LOGGING_BUCKET , loggingBucketDestination .getType ());
117+ assertEquals ("project" , loggingBucketDestination .getProject ());
118+ assertEquals ("location" , loggingBucketDestination .getLocation ());
119+ assertEquals ("bucket" , loggingBucketDestination .getBucket ());
120+ compareLoggingBucketDestination (LOGGING_BUCKET_DESTINATION , loggingBucketDestination );
98121 try {
99122 Destination .fromPb ("wrongDestination" );
100123 fail ();
@@ -113,6 +136,11 @@ public void testToAndFromPbDestination_NoProjectId() {
113136 TopicDestination .fromPb (TopicDestination .of ("topic" ).toPb ("project" ));
114137 assertEquals ("project" , topicDestination .getProject ());
115138 compareTopicDestination (TOPIC_DESTINATION , topicDestination );
139+ LoggingBucketDestination loggingBucketDestination =
140+ LoggingBucketDestination .fromPb (
141+ LoggingBucketDestination .of ("location" , "bucket" ).toPb ("project" ));
142+ assertEquals ("project" , loggingBucketDestination .getProject ());
143+ compareLoggingBucketDestination (LOGGING_BUCKET_DESTINATION , loggingBucketDestination );
116144 }
117145
118146 @ Test
@@ -209,6 +237,16 @@ private void compareTopicDestination(TopicDestination expected, TopicDestination
209237 assertEquals (expected .toString (), value .toString ());
210238 }
211239
240+ private void compareLoggingBucketDestination (
241+ LoggingBucketDestination expected , LoggingBucketDestination value ) {
242+ assertEquals (expected , value );
243+ assertEquals (expected .getProject (), value .getProject ());
244+ assertEquals (expected .getLocation (), value .getLocation ());
245+ assertEquals (expected .getBucket (), value .getBucket ());
246+ assertEquals (expected .hashCode (), value .hashCode ());
247+ assertEquals (expected .toString (), value .toString ());
248+ }
249+
212250 private void compareSinkInfo (SinkInfo expected , SinkInfo value ) {
213251 assertEquals (expected , value );
214252 assertEquals (expected .getName (), value .getName ());
0 commit comments