@@ -93,6 +93,50 @@ public void TestOverridePreviousDimensions()
9393 Assert . Equal ( dimensionValue , _sink . MetricsContext . GetAllDimensionSets ( ) [ 0 ] . GetDimensionValue ( dimensionName ) ) ;
9494 }
9595
96+ [ Fact ]
97+ public void TestPutDuplicateDimensions ( )
98+ {
99+ string dimensionName1 = "dim1" ;
100+ string dimensionName2 = "dim2" ;
101+ string dimensionValue1 = "dimValue1" ;
102+ string dimensionValue2 = "dimValue2" ;
103+ string dimensionValue3 = "dimValue3" ;
104+ string dimensionValue4 = "dimValue4" ;
105+
106+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName1 , dimensionValue1 ) ) ;
107+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName2 , dimensionValue2 ) ) ;
108+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName1 , dimensionValue3 ) ) ;
109+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName2 , dimensionValue4 ) ) ;
110+ _metricsLogger . Flush ( ) ;
111+
112+ Assert . Equal ( 4 , _sink . MetricsContext . GetAllDimensionSets ( ) [ 0 ] . DimensionKeys . Count ) ;
113+ Assert . Equal ( dimensionValue3 , _sink . MetricsContext . GetAllDimensionSets ( ) [ 0 ] . GetDimensionValue ( dimensionName1 ) ) ;
114+ Assert . Equal ( dimensionValue4 , _sink . MetricsContext . GetAllDimensionSets ( ) [ 0 ] . GetDimensionValue ( dimensionName2 ) ) ;
115+ }
116+
117+ [ Fact ]
118+ public void TestSetPutDuplicateDimensions ( )
119+ {
120+ string dimensionName1 = "dim1" ;
121+ string dimensionName2 = "dim2" ;
122+ string dimensionName3 = "dim3" ;
123+ string dimensionValue1 = "dimValue1" ;
124+ string dimensionValue2 = "dimValue2" ;
125+ string dimensionValue3 = "dimValue3" ;
126+ string dimensionValue4 = "dimValue4" ;
127+
128+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName1 , dimensionValue1 ) ) ;
129+ _metricsLogger . SetDimensions ( new DimensionSet ( dimensionName2 , dimensionValue1 ) ) ;
130+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName3 , dimensionValue2 ) ) ;
131+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName2 , dimensionValue3 ) ) ;
132+ _metricsLogger . PutDimensions ( new DimensionSet ( dimensionName3 , dimensionValue4 ) ) ;
133+ _metricsLogger . Flush ( ) ;
134+
135+ Assert . Equal ( 2 , _sink . MetricsContext . GetAllDimensionSets ( ) . Count ) ;
136+ Assert . Equal ( dimensionValue3 , _sink . MetricsContext . GetAllDimensionSets ( ) [ 0 ] . GetDimensionValue ( dimensionName2 ) ) ;
137+ Assert . Equal ( dimensionValue4 , _sink . MetricsContext . GetAllDimensionSets ( ) [ 1 ] . GetDimensionValue ( dimensionName3 ) ) ;
138+ }
139+
96140 [ Fact ]
97141 public void TestSetNameSpace ( )
98142 {
0 commit comments