@@ -117,57 +117,6 @@ public class GroupByKeyTest implements Serializable {
117
117
/** Shared test base class with setup/teardown helpers. */
118
118
public abstract static class SharedTestBase {
119
119
@ Rule public transient TestPipeline p = TestPipeline .create ();
120
-
121
- private static final String PROJECT_ID = "apache-beam-testing" ;
122
- private static final String SECRET_ID = "gbek-test" ;
123
- public static String gcpSecretVersionName ;
124
- private static String secretId ;
125
-
126
- @ BeforeClass
127
- public static void setup () throws IOException {
128
- secretId = String .format ("%s-%d" , SECRET_ID , new SecureRandom ().nextInt (10000 ));
129
- SecretManagerServiceClient client ;
130
- try {
131
- client = SecretManagerServiceClient .create ();
132
- } catch (IOException e ) {
133
- gcpSecretVersionName = null ;
134
- return ;
135
- }
136
- ProjectName projectName = ProjectName .of (PROJECT_ID );
137
- SecretName secretName = SecretName .of (PROJECT_ID , secretId );
138
-
139
- try {
140
- client .getSecret (secretName );
141
- } catch (Exception e ) {
142
- com .google .cloud .secretmanager .v1 .Secret secret =
143
- com .google .cloud .secretmanager .v1 .Secret .newBuilder ()
144
- .setReplication (
145
- com .google .cloud .secretmanager .v1 .Replication .newBuilder ()
146
- .setAutomatic (
147
- com .google .cloud .secretmanager .v1 .Replication .Automatic .newBuilder ()
148
- .build ())
149
- .build ())
150
- .build ();
151
- client .createSecret (projectName , secretId , secret );
152
- byte [] secretBytes = new byte [32 ];
153
- new SecureRandom ().nextBytes (secretBytes );
154
- client .addSecretVersion (
155
- secretName ,
156
- SecretPayload .newBuilder ()
157
- .setData (ByteString .copyFrom (java .util .Base64 .getUrlEncoder ().encode (secretBytes )))
158
- .build ());
159
- }
160
- gcpSecretVersionName = secretName .toString () + "/versions/latest" ;
161
- }
162
-
163
- @ AfterClass
164
- public static void tearDown () throws IOException {
165
- if (gcpSecretVersionName != null ) {
166
- SecretManagerServiceClient client = SecretManagerServiceClient .create ();
167
- SecretName secretName = SecretName .of (PROJECT_ID , secretId );
168
- client .deleteSecret (secretName );
169
- }
170
- }
171
120
}
172
121
173
122
/** Tests validating basic {@link GroupByKey} scenarios. */
@@ -673,6 +622,61 @@ public void testLargeKeys10MB() throws Exception {
673
622
public void testLargeKeys100MB () throws Exception {
674
623
runLargeKeysTest (p , 100 << 20 );
675
624
}
625
+ }
626
+
627
+ /** Tests validating GroupByKey behaviors with the gbek flag set. */
628
+ @ RunWith (JUnit4 .class )
629
+ public static class GbekTests extends SharedTestBase {
630
+ private static final String PROJECT_ID = "apache-beam-testing" ;
631
+ private static final String SECRET_ID = "gbek-test" ;
632
+ public static String gcpSecretVersionName ;
633
+ private static String secretId ;
634
+
635
+ @ BeforeClass
636
+ public static void setup () throws IOException {
637
+ secretId = String .format ("%s-%d" , SECRET_ID , new SecureRandom ().nextInt (10000 ));
638
+ SecretManagerServiceClient client ;
639
+ try {
640
+ client = SecretManagerServiceClient .create ();
641
+ } catch (IOException e ) {
642
+ gcpSecretVersionName = null ;
643
+ return ;
644
+ }
645
+ ProjectName projectName = ProjectName .of (PROJECT_ID );
646
+ SecretName secretName = SecretName .of (PROJECT_ID , secretId );
647
+
648
+ try {
649
+ client .getSecret (secretName );
650
+ } catch (Exception e ) {
651
+ com .google .cloud .secretmanager .v1 .Secret secret =
652
+ com .google .cloud .secretmanager .v1 .Secret .newBuilder ()
653
+ .setReplication (
654
+ com .google .cloud .secretmanager .v1 .Replication .newBuilder ()
655
+ .setAutomatic (
656
+ com .google .cloud .secretmanager .v1 .Replication .Automatic .newBuilder ()
657
+ .build ())
658
+ .build ())
659
+ .build ();
660
+ client .createSecret (projectName , secretId , secret );
661
+ byte [] secretBytes = new byte [32 ];
662
+ new SecureRandom ().nextBytes (secretBytes );
663
+ client .addSecretVersion (
664
+ secretName ,
665
+ SecretPayload .newBuilder ()
666
+ .setData (ByteString .copyFrom (java .util .Base64 .getUrlEncoder ().encode (secretBytes )))
667
+ .build ());
668
+ }
669
+ gcpSecretVersionName = secretName .toString () + "/versions/latest" ;
670
+ }
671
+
672
+ @ AfterClass
673
+ public static void tearDown () throws IOException {
674
+ if (gcpSecretVersionName != null ) {
675
+ SecretManagerServiceClient client = SecretManagerServiceClient .create ();
676
+ SecretName secretName = SecretName .of (PROJECT_ID , secretId );
677
+ client .deleteSecret (secretName );
678
+ }
679
+ }
676
680
677
681
@ Test
678
682
@ Category (NeedsRunner .class )
0 commit comments