4242class MetricExportBatcherTest {
4343
4444 @ Test
45- void constructor_InvalidMaxExportBatchSize () {
46- assertThatThrownBy (() -> new MetricExportBatcher ( 0 ))
45+ void batchMetrics_InvalidMaxExportBatchSize () {
46+ assertThatThrownBy (() -> MetricExportBatcher . batchMetrics ( Collections . emptyList (), 0 ))
4747 .isInstanceOf (IllegalArgumentException .class )
4848 .hasMessage ("maxExportBatchSize must be positive" );
49- assertThatThrownBy (() -> new MetricExportBatcher ( -1 ))
49+ assertThatThrownBy (() -> MetricExportBatcher . batchMetrics ( Collections . emptyList (), -1 ))
5050 .isInstanceOf (IllegalArgumentException .class )
5151 .hasMessage ("maxExportBatchSize must be positive" );
5252 }
5353
54- @ Test
55- void toString_Valid () {
56- MetricExportBatcher batcher = new MetricExportBatcher (10 );
57- assertThat (batcher .toString ()).isEqualTo ("MetricExportBatcher{maxExportBatchSize=10}" );
58- }
59-
6054 @ Test
6155 void batchMetrics_EmptyMetrics () {
62- MetricExportBatcher batcher = new MetricExportBatcher (10 );
63- assertThat (batcher .batchMetrics (Collections .emptyList ())).isEmpty ();
56+ assertThat (MetricExportBatcher .batchMetrics (Collections .emptyList (), 10 )).isEmpty ();
6457 }
6558
6659 @ Test
6760 void batchMetrics_MetricFitsIntact () {
68- MetricExportBatcher batcher = new MetricExportBatcher (10 );
6961 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 1L );
7062 MetricData metric =
7163 ImmutableMetricData .createLongGauge (
@@ -77,14 +69,13 @@ void batchMetrics_MetricFitsIntact() {
7769 ImmutableGaugeData .create (Collections .singletonList (p1 )));
7870
7971 Collection <Collection <MetricData >> batches =
80- batcher .batchMetrics (Collections .singletonList (metric ));
72+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 10 );
8173 assertThat (batches ).hasSize (1 );
8274 assertThat (batches .iterator ().next ()).containsExactly (metric );
8375 }
8476
8577 @ Test
8678 void batchMetrics_SplitsDoubleGauge_LastBatchPartiallyFilled () {
87- MetricExportBatcher batcher = new MetricExportBatcher (2 );
8879 DoublePointData p1 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 1.0 );
8980 DoublePointData p2 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 2.0 );
9081 DoublePointData p3 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 3.0 );
@@ -101,7 +92,7 @@ void batchMetrics_SplitsDoubleGauge_LastBatchPartiallyFilled() {
10192 ImmutableGaugeData .create (Arrays .asList (p1 , p2 , p3 , p4 , p5 )));
10293
10394 Collection <Collection <MetricData >> batches =
104- batcher .batchMetrics (Collections .singletonList (metric ));
95+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 2 );
10596 List <Collection <MetricData >> batchesList = new ArrayList <>(batches );
10697
10798 assertThat (batchesList .size ()).isEqualTo (3 );
@@ -138,7 +129,6 @@ void batchMetrics_SplitsDoubleGauge_LastBatchPartiallyFilled() {
138129
139130 @ Test
140131 void batchMetrics_SplitsLongGauge_SingleBatchPartiallyFilled () {
141- MetricExportBatcher batcher = new MetricExportBatcher (4 );
142132 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 1L );
143133 LongPointData p2 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 2L );
144134 LongPointData p3 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 3L );
@@ -153,7 +143,7 @@ void batchMetrics_SplitsLongGauge_SingleBatchPartiallyFilled() {
153143 ImmutableGaugeData .create (Arrays .asList (p1 , p2 , p3 )));
154144
155145 Collection <Collection <MetricData >> batches =
156- batcher .batchMetrics (Collections .singletonList (metric ));
146+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 4 );
157147
158148 assertThat (batches ).hasSize (1 );
159149 Collection <MetricData > firstBatch = batches .iterator ().next ();
@@ -169,7 +159,6 @@ void batchMetrics_SplitsLongGauge_SingleBatchPartiallyFilled() {
169159
170160 @ Test
171161 void batchMetrics_SplitsDoubleSum_SingleBatchCompletelyFilled () {
172- MetricExportBatcher batcher = new MetricExportBatcher (2 );
173162 DoublePointData p1 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 1.0 );
174163 DoublePointData p2 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 2.0 );
175164
@@ -184,7 +173,7 @@ void batchMetrics_SplitsDoubleSum_SingleBatchCompletelyFilled() {
184173 /* isMonotonic= */ true , AggregationTemporality .CUMULATIVE , Arrays .asList (p1 , p2 )));
185174
186175 Collection <Collection <MetricData >> batches =
187- batcher .batchMetrics (Collections .singletonList (metric ));
176+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 2 );
188177
189178 Collection <MetricData > firstBatch = batches .iterator ().next ();
190179 assertThat (firstBatch ).hasSize (1 ); // There is only 1 MetricData
@@ -202,7 +191,6 @@ void batchMetrics_SplitsDoubleSum_SingleBatchCompletelyFilled() {
202191
203192 @ Test
204193 void batchMetrics_SplitsLongSum_MultipleBatchesCompletelyFilled_MultipleMetrics () {
205- MetricExportBatcher batcher = new MetricExportBatcher (1 );
206194 Attributes attrs1 = Attributes .builder ().put ("key1" , "val1" ).build ();
207195 Attributes attrs2 = Attributes .builder ().put ("key2" , "val2" ).build ();
208196 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , attrs1 , 1L );
@@ -229,7 +217,7 @@ void batchMetrics_SplitsLongSum_MultipleBatchesCompletelyFilled_MultipleMetrics(
229217 /* isMonotonic= */ false , AggregationTemporality .DELTA , Arrays .asList (p1 , p2 )));
230218
231219 Collection <Collection <MetricData >> batches =
232- batcher .batchMetrics (Arrays .asList (metric1 , metric2 ));
220+ MetricExportBatcher .batchMetrics (Arrays .asList (metric1 , metric2 ), 1 );
233221
234222 assertThat (batches ).hasSize (4 );
235223 Collection <MetricData > firstBatch = batches .iterator ().next ();
@@ -289,7 +277,6 @@ void batchMetrics_SplitsLongSum_MultipleBatchesCompletelyFilled_MultipleMetrics(
289277
290278 @ Test
291279 void batchMetrics_SplitsHistogram_MultipleBatchesCompletelyFilled_SingleMetric () {
292- MetricExportBatcher batcher = new MetricExportBatcher (1 );
293280 ImmutableHistogramPointData p1 =
294281 ImmutableHistogramPointData .create (
295282 1 ,
@@ -326,7 +313,7 @@ void batchMetrics_SplitsHistogram_MultipleBatchesCompletelyFilled_SingleMetric()
326313 AggregationTemporality .CUMULATIVE , Arrays .asList (p1 , p2 )));
327314
328315 Collection <Collection <MetricData >> batches =
329- batcher .batchMetrics (Collections .singletonList (metric ));
316+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 1 );
330317
331318 assertThat (batches ).hasSize (2 );
332319 Collection <MetricData > firstBatch = batches .iterator ().next ();
@@ -354,7 +341,6 @@ void batchMetrics_SplitsHistogram_MultipleBatchesCompletelyFilled_SingleMetric()
354341
355342 @ Test
356343 void batchMetrics_MultipleMetricsExactCapacityMatch () {
357- MetricExportBatcher batcher = new MetricExportBatcher (4 );
358344 Attributes attrs1 = Attributes .builder ().put ("k" , "v1" ).build ();
359345 Attributes attrs2 = Attributes .builder ().put ("k" , "v2" ).build ();
360346 Attributes attrs3 = Attributes .builder ().put ("k" , "v3" ).build ();
@@ -381,7 +367,8 @@ void batchMetrics_MultipleMetricsExactCapacityMatch() {
381367 "1" ,
382368 ImmutableGaugeData .create (Arrays .asList (p3 , p4 )));
383369
384- Collection <Collection <MetricData >> batches = batcher .batchMetrics (Arrays .asList (m1 , m2 ));
370+ Collection <Collection <MetricData >> batches =
371+ MetricExportBatcher .batchMetrics (Arrays .asList (m1 , m2 ), 4 );
385372 assertThat (batches ).hasSize (1 );
386373 Collection <MetricData > firstBatch = batches .iterator ().next ();
387374 assertThat (firstBatch ).containsExactly (m1 , m2 );
@@ -397,7 +384,6 @@ void batchMetrics_MultipleMetricsExactCapacityMatch() {
397384
398385 @ Test
399386 void batchMetrics_SplitsLongGauge_MultipleMetrics_ExceedsCapacity () {
400- MetricExportBatcher batcher = new MetricExportBatcher (4 );
401387 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 1L );
402388 LongPointData p2 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 2L );
403389 LongPointData p3 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 3L );
@@ -422,7 +408,8 @@ void batchMetrics_SplitsLongGauge_MultipleMetrics_ExceedsCapacity() {
422408 "1" ,
423409 ImmutableGaugeData .create (Arrays .asList (p4 , p5 , p6 )));
424410
425- Collection <Collection <MetricData >> batches = batcher .batchMetrics (Arrays .asList (m1 , m2 ));
411+ Collection <Collection <MetricData >> batches =
412+ MetricExportBatcher .batchMetrics (Arrays .asList (m1 , m2 ), 4 );
426413
427414 assertThat (batches ).hasSize (2 );
428415
@@ -455,7 +442,6 @@ void batchMetrics_SplitsLongGauge_MultipleMetrics_PerfectFillThenSplit() {
455442 // m2 has 3 points, which forces it to split from the start of a fully-exhausted
456443 // previous pass.
457444 // This test case fails if there is an empty batch
458- MetricExportBatcher batcher = new MetricExportBatcher (2 );
459445 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 1L );
460446 LongPointData p2 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 2L );
461447 LongPointData p3 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 3L );
@@ -479,7 +465,8 @@ void batchMetrics_SplitsLongGauge_MultipleMetrics_PerfectFillThenSplit() {
479465 "1" ,
480466 ImmutableGaugeData .create (Arrays .asList (p3 , p4 , p5 )));
481467
482- Collection <Collection <MetricData >> batches = batcher .batchMetrics (Arrays .asList (m1 , m2 ));
468+ Collection <Collection <MetricData >> batches =
469+ MetricExportBatcher .batchMetrics (Arrays .asList (m1 , m2 ), 2 );
483470
484471 assertThat (batches ).hasSize (3 );
485472
@@ -507,7 +494,6 @@ void batchMetrics_SplitsLongGauge_MultipleMetrics_PerfectFillThenSplit() {
507494
508495 @ Test
509496 void batchMetrics_SplitsExponentialHistogram_MultipleBatchesCompletelyFilled_SingleMetric () {
510- MetricExportBatcher batcher = new MetricExportBatcher (1 );
511497 ExponentialHistogramBuckets buckets =
512498 ImmutableExponentialHistogramBuckets .create (
513499 /* scale= */ 20 , /* offset= */ 0 , /* bucketCounts= */ Collections .singletonList (1L ));
@@ -553,7 +539,7 @@ void batchMetrics_SplitsExponentialHistogram_MultipleBatchesCompletelyFilled_Sin
553539 AggregationTemporality .CUMULATIVE , Arrays .asList (p1 , p2 )));
554540
555541 Collection <Collection <MetricData >> batches =
556- batcher .batchMetrics (Collections .singletonList (metric ));
542+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 1 );
557543
558544 assertThat (batches ).hasSize (2 );
559545 Collection <MetricData > firstBatch = batches .iterator ().next ();
@@ -582,7 +568,6 @@ void batchMetrics_SplitsExponentialHistogram_MultipleBatchesCompletelyFilled_Sin
582568
583569 @ Test
584570 void batchMetrics_SplitsSummary_MultipleBatchesCompletelyFilled_SingleMetric () {
585- MetricExportBatcher batcher = new MetricExportBatcher (1 );
586571 SummaryPointData p1 =
587572 ImmutableSummaryPointData .create (
588573 /* startEpochNanos= */ 1 ,
@@ -612,7 +597,7 @@ void batchMetrics_SplitsSummary_MultipleBatchesCompletelyFilled_SingleMetric() {
612597 ImmutableSummaryData .create (Arrays .asList (p1 , p2 )));
613598
614599 Collection <Collection <MetricData >> batches =
615- batcher .batchMetrics (Collections .singletonList (metric ));
600+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 1 );
616601
617602 assertThat (batches ).hasSize (2 );
618603 Collection <MetricData > firstBatch = batches .iterator ().next ();
@@ -637,7 +622,6 @@ void batchMetrics_SplitsSummary_MultipleBatchesCompletelyFilled_SingleMetric() {
637622
638623 @ Test
639624 void batchMetrics_SplitsLongGauge_MultipleBatches () {
640- MetricExportBatcher batcher = new MetricExportBatcher (2 );
641625 LongPointData p1 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 1L );
642626 LongPointData p2 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 2L );
643627 LongPointData p3 = ImmutableLongPointData .create (1 , 2 , Attributes .empty (), 3L );
@@ -654,7 +638,7 @@ void batchMetrics_SplitsLongGauge_MultipleBatches() {
654638 ImmutableGaugeData .create (Arrays .asList (p1 , p2 , p3 , p4 , p5 )));
655639
656640 Collection <Collection <MetricData >> batches =
657- batcher .batchMetrics (Collections .singletonList (metric ));
641+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 2 );
658642 List <Collection <MetricData >> batchesList = new ArrayList <>(batches );
659643
660644 assertThat (batchesList ).hasSize (3 );
@@ -690,7 +674,6 @@ void batchMetrics_SplitsLongGauge_MultipleBatches() {
690674
691675 @ Test
692676 void batchMetrics_SplitsDoubleSum_MultipleBatches () {
693- MetricExportBatcher batcher = new MetricExportBatcher (1 );
694677 DoublePointData p1 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 1.0 );
695678 DoublePointData p2 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 2.0 );
696679 DoublePointData p3 = ImmutableDoublePointData .create (1 , 2 , Attributes .empty (), 3.0 );
@@ -708,7 +691,7 @@ void batchMetrics_SplitsDoubleSum_MultipleBatches() {
708691 Arrays .asList (p1 , p2 , p3 )));
709692
710693 Collection <Collection <MetricData >> batches =
711- batcher .batchMetrics (Collections .singletonList (metric ));
694+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 1 );
712695 List <Collection <MetricData >> batchesList = new ArrayList <>(batches );
713696
714697 assertThat (batchesList ).hasSize (3 );
@@ -753,7 +736,6 @@ void batchMetrics_SplitsDoubleSum_MultipleBatches() {
753736
754737 @ Test
755738 void batchMetrics_EmptyPointsInMetricData () {
756- MetricExportBatcher batcher = new MetricExportBatcher (2 );
757739 MetricData metric =
758740 ImmutableMetricData .createLongGauge (
759741 Resource .empty (),
@@ -764,7 +746,7 @@ void batchMetrics_EmptyPointsInMetricData() {
764746 ImmutableGaugeData .create (Collections .emptyList ()));
765747
766748 Collection <Collection <MetricData >> batches =
767- batcher .batchMetrics (Collections .singletonList (metric ));
749+ MetricExportBatcher .batchMetrics (Collections .singletonList (metric ), 2 );
768750 assertThat (batches ).hasSize (1 );
769751 assertThat (batches .iterator ().next ()).containsExactly (metric );
770752 }
0 commit comments