1818
1919import static java .nio .charset .StandardCharsets .UTF_8 ;
2020
21- import com .google .api .core .ApiClock ;
2221import com .google .cloud .NoCredentials ;
2322import com .google .cloud .storage .it .runner .StorageITRunner ;
2423import com .google .cloud .storage .it .runner .annotations .Backend ;
2524import com .google .cloud .storage .it .runner .annotations .Inject ;
2625import com .google .cloud .storage .it .runner .annotations .SingleBackend ;
26+ import com .google .cloud .storage .it .runner .registry .Generator ;
2727import com .google .cloud .storage .it .runner .registry .TestBench ;
2828import io .opentelemetry .api .common .AttributeKey ;
2929import io .opentelemetry .sdk .OpenTelemetrySdk ;
4141@ SingleBackend (Backend .TEST_BENCH )
4242public class ITGrpcOpenTelemetryTest {
4343 @ Inject public TestBench testBench ;
44- private static final ApiClock TIME_SOURCE =
45- new ApiClock () {
46- @ Override
47- public long nanoTime () {
48- return 42_000_000_000L ;
49- }
50-
51- @ Override
52- public long millisTime () {
53- return 42_000L ;
54- }
55- };
5644 private StorageOptions options ;
57- private SpanExporter exporter = new TestExporter ();
45+ private SpanExporter exporter ;
46+ private Storage storage ;
47+ @ Inject public Generator generator ;
48+ @ Inject public BucketInfo testBucket ;
5849
5950 @ Before
6051 public void setUp () {
52+ exporter = new TestExporter ();
6153 OpenTelemetrySdk openTelemetrySdk =
6254 OpenTelemetrySdk .builder ()
6355 .setTracerProvider (
@@ -72,11 +64,11 @@ public void setUp() {
7264 .setCredentials (NoCredentials .getInstance ())
7365 .setOpenTelemetrySdk (openTelemetrySdk )
7466 .build ();
67+ storage = options .getService ();
7568 }
7669
7770 @ Test
7871 public void runCreateBucket () {
79- Storage storage = options .getService ();
8072 String bucket = "random-bucket" ;
8173 storage .create (BucketInfo .of (bucket ));
8274 TestExporter testExported = (TestExporter ) exporter ;
@@ -91,27 +83,22 @@ public void runCreateBucket() {
9183
9284 @ Test
9385 public void runCreateBlob () {
94- Storage storage = options .getService ();
95- String bucket = "random-bucket" ;
96- storage .create (BucketInfo .of (bucket ));
9786 byte [] content = "Hello, World!" .getBytes (UTF_8 );
98- BlobId toCreate = BlobId .of (bucket , "blob" );
87+ BlobId toCreate = BlobId .of (testBucket . getName (), generator . randomObjectName () );
9988 storage .create (BlobInfo .newBuilder (toCreate ).build (), content );
10089 TestExporter testExported = (TestExporter ) exporter ;
10190 List <SpanData > spanData = testExported .getExportedSpans ();
102- // (1) Span to create the bucket
103- // (2) Span when calling create
104- // (3) Span when passing call to internalDirectUpload
105- Assert .assertEquals (3 , spanData .size ());
106- for (SpanData span : spanData ) {
91+ // (1) Span when calling create
92+ // (2) Span when passing call to internalDirectUpload
93+ Assert .assertEquals (2 , spanData .size ());
94+ for (SpanData span : spanData ) {
10795 Assert .assertEquals ("Storage" , getAttributeValue (span , "gcp.client.service" ));
108- Assert .assertEquals ("googleapis/java-storage" ,
109- getAttributeValue (span , "gcp.client.repo" ));
96+ Assert .assertEquals ("googleapis/java-storage" , getAttributeValue (span , "gcp.client.repo" ));
11097 Assert .assertEquals (
111- "com.google.cloud.google-cloud-storage" ,
112- getAttributeValue (span , "gcp.client.artifact" ));
98+ "com.google.cloud.google-cloud-storage" , getAttributeValue (span , "gcp.client.artifact" ));
11399 Assert .assertEquals ("grpc" , getAttributeValue (span , "rpc.system" ));
114100 }
101+ Assert .assertEquals (spanData .get (1 ).getSpanContext (), spanData .get (0 ).getParentSpanContext ());
115102 }
116103
117104 private String getAttributeValue (SpanData spanData , String key ) {
0 commit comments