@@ -156,7 +156,29 @@ public async Task CanGetEventTermStatsByTagAsync() {
156
156
Assert . True ( fields . IsValid ) ;
157
157
158
158
var sf = new ExceptionlessSystemFilterQuery ( ProjectData . GenerateSampleProject ( ) , OrganizationData . GenerateSampleOrganization ( ) ) ;
159
- var result = await _stats . GetNumbersTermsStatsAsync ( "tags" , fields . Aggregations , startDate , SystemClock . UtcNow , sf , "fixed:false" ) ;
159
+ var result = await _stats . GetNumbersTermsStatsAsync ( "tags.keyword" , fields . Aggregations , startDate , SystemClock . UtcNow , sf , "fixed:false" ) ;
160
+ Assert . Equal ( eventCount , result . Total ) ;
161
+ // each event can be in multiple tag buckets since an event can have up to 3 sample tags
162
+ Assert . InRange ( result . Terms . Sum ( t => t . Total ) , eventCount , eventCount * 3 ) ;
163
+ Assert . InRange ( result . Terms . Sum ( t => t . Numbers [ 0 ] ) , 1 , 25 * TestConstants . EventTags . Count ) ; // new
164
+ Assert . InRange ( result . Terms . Count , 1 , TestConstants . EventTags . Count ) ;
165
+ foreach ( var term in result . Terms )
166
+ Assert . InRange ( term . Numbers [ 0 ] , 1 , 25 ) ; // new
167
+ }
168
+
169
+ [ Fact ]
170
+ public async Task CanGetEventTermStatsByVersionAsync ( ) {
171
+ // capture start date before generating data to make sure that our time range for stats includes all items
172
+ var startDate = SystemClock . UtcNow . SubtractDays ( 60 ) ;
173
+ const int eventCount = 100 ;
174
+ await CreateDataAsync ( eventCount , false ) ;
175
+
176
+ Log . MinimumLevel = LogLevel . Trace ;
177
+ var fields = FieldAggregationProcessor . Process ( "term:is_first_occurrence:-F" , false ) ;
178
+ Assert . True ( fields . IsValid ) ;
179
+
180
+ var sf = new ExceptionlessSystemFilterQuery ( ProjectData . GenerateSampleProject ( ) , OrganizationData . GenerateSampleOrganization ( ) ) ;
181
+ var result = await _stats . GetNumbersTermsStatsAsync ( "version.keyword" , fields . Aggregations , startDate , SystemClock . UtcNow , sf , "fixed:false" ) ;
160
182
Assert . Equal ( eventCount , result . Total ) ;
161
183
// each event can be in multiple tag buckets since an event can have up to 3 sample tags
162
184
Assert . InRange ( result . Terms . Sum ( t => t . Total ) , eventCount , eventCount * 3 ) ;
0 commit comments