From e72328b2ee8282bdc90d0389c98b5294340fb2fa Mon Sep 17 00:00:00 2001 From: Tianzi Cai Date: Wed, 10 Mar 2021 13:10:01 -0800 Subject: [PATCH] samples(testing): add retry rule (#565) * samples(testing): add retry rule * use google-cloud-core's MultipleAttemptsRule --- samples/install-without-bom/pom.xml | 6 ++++++ samples/snapshot/pom.xml | 6 ++++++ samples/snippets/pom.xml | 6 ++++++ samples/snippets/src/main/java/utilities/State.java | 9 ++++----- .../snippets/src/main/java/utilities/StateProto.java | 9 ++++----- samples/snippets/src/test/java/pubsub/SchemaIT.java | 10 +++------- 6 files changed, 29 insertions(+), 17 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 97065bdf1..c6c39ae8c 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -77,6 +77,12 @@ protobuf-java-util 3.15.3 + + com.google.cloud + google-cloud-core + 1.94.1 + tests + diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index b9d5f7c58..3fce50a90 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -76,6 +76,12 @@ 1.1.2 test + + com.google.cloud + google-cloud-core + 1.94.1 + tests + diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 32daa6883..d9415a5cd 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -87,6 +87,12 @@ 1.1.2 test + + com.google.cloud + google-cloud-core + 1.94.1 + tests + diff --git a/samples/snippets/src/main/java/utilities/State.java b/samples/snippets/src/main/java/utilities/State.java index 87ce59223..503acf61f 100644 --- a/samples/snippets/src/main/java/utilities/State.java +++ b/samples/snippets/src/main/java/utilities/State.java @@ -23,14 +23,13 @@ /** * This file is created using Avro tools. * - * To download, visit https://avro.apache.org/releases.html#Download + *

To download, visit https://avro.apache.org/releases.html#Download * - * Run the following command from the `samples/snippets` directory to - * generate this class: + *

Run the following command from the `samples/snippets` directory to generate this class: * - *`java -jar /location/to/your/avro-tools-1.10.1.jar compile schema src/main/resources/us-states.avsc src/main/java/` + *

`java -jar /location/to/your/avro-tools-1.10.1.jar compile schema + * src/main/resources/us-states.avsc src/main/java/` */ - package utilities; import org.apache.avro.message.BinaryMessageDecoder; diff --git a/samples/snippets/src/main/java/utilities/StateProto.java b/samples/snippets/src/main/java/utilities/StateProto.java index be57ce7b7..60701da37 100644 --- a/samples/snippets/src/main/java/utilities/StateProto.java +++ b/samples/snippets/src/main/java/utilities/StateProto.java @@ -20,14 +20,13 @@ /** * This file is created using protoc. * - * To download, visit https://developers.google.com/protocol-buffers/docs/downloads + *

To download, visit https://developers.google.com/protocol-buffers/docs/downloads * - * Run the following command from the `samples/snippets` directory to - * generate this class: + *

Run the following command from the `samples/snippets` directory to generate this class: * - *`protoc --proto_path=src/main/resources/ --java_out=src/main/java/ src/main/resources/us-states.proto` + *

`protoc --proto_path=src/main/resources/ --java_out=src/main/java/ + * src/main/resources/us-states.proto` */ - package utilities; public final class StateProto { diff --git a/samples/snippets/src/test/java/pubsub/SchemaIT.java b/samples/snippets/src/test/java/pubsub/SchemaIT.java index 45e899619..e920891eb 100644 --- a/samples/snippets/src/test/java/pubsub/SchemaIT.java +++ b/samples/snippets/src/test/java/pubsub/SchemaIT.java @@ -23,6 +23,7 @@ import com.google.cloud.pubsub.v1.SchemaServiceClient; import com.google.cloud.pubsub.v1.SubscriptionAdminClient; import com.google.cloud.pubsub.v1.TopicAdminClient; +import com.google.cloud.testing.junit4.MultipleAttemptsRule; import com.google.pubsub.v1.Encoding; import com.google.pubsub.v1.ProjectSubscriptionName; import com.google.pubsub.v1.SchemaName; @@ -33,7 +34,6 @@ import java.util.UUID; import org.junit.After; import org.junit.Before; -import org.junit.BeforeClass; import org.junit.Rule; import org.junit.Test; import org.junit.rules.Timeout; @@ -73,12 +73,8 @@ private static void requireEnvVar(String varName) { System.getenv(varName)); } - @Rule public Timeout globalTimeout = Timeout.seconds(300); // 5 minute timeout - - @BeforeClass - public static void checkRequirements() { - requireEnvVar("GOOGLE_CLOUD_PROJECT"); - } + @Rule public Timeout globalTimeout = Timeout.seconds(600); // 10 minute timeout + @Rule public MultipleAttemptsRule retryRule = new MultipleAttemptsRule(/*maxAttemptCount=*/ 3); @Before public void setUp() {