@@ -175,14 +175,30 @@ func runQueryFrontendTest(t *testing.T, testMissingMetricName bool, setup queryF
175
175
c , err := e2ecortex .NewClient ("" , queryFrontend .HTTPEndpoint (), "" , "" , fmt .Sprintf ("user-%d" , userID ))
176
176
require .NoError (t , err )
177
177
178
- // No need to repeat this test for each user.
178
+ // No need to repeat the test on missing metric name for each user.
179
179
if userID == 0 && testMissingMetricName {
180
180
res , body , err := c .QueryRaw ("{instance=~\" hello.*\" }" )
181
181
require .NoError (t , err )
182
182
require .Equal (t , 422 , res .StatusCode )
183
183
require .Contains (t , string (body ), "query must contain metric name" )
184
184
}
185
185
186
+ // No need to repeat the test on start/end time rounding for each user.
187
+ if userID == 0 {
188
+ start := time .Unix (1595846748 , 806 * 1e6 )
189
+ end := time .Unix (1595846750 , 806 * 1e6 )
190
+
191
+ result , err := c .QueryRange ("time()" , start , end , time .Second )
192
+ require .NoError (t , err )
193
+ require .Equal (t , model .ValMatrix , result .Type ())
194
+
195
+ matrix := result .(model.Matrix )
196
+ require .Len (t , matrix , 1 )
197
+ require .Len (t , matrix [0 ].Values , 3 )
198
+ assert .Equal (t , model .Time (1595846748806 ), matrix [0 ].Values [0 ].Timestamp )
199
+ assert .Equal (t , model .Time (1595846750806 ), matrix [0 ].Values [2 ].Timestamp )
200
+ }
201
+
186
202
for q := 0 ; q < numQueriesPerUser ; q ++ {
187
203
go func () {
188
204
defer wg .Done ()
@@ -197,9 +213,9 @@ func runQueryFrontendTest(t *testing.T, testMissingMetricName bool, setup queryF
197
213
198
214
wg .Wait ()
199
215
200
- extra := float64 (0 )
216
+ extra := float64 (1 )
201
217
if testMissingMetricName {
202
- extra = 1
218
+ extra ++
203
219
}
204
220
require .NoError (t , queryFrontend .WaitSumMetrics (e2e .Equals (numUsers * numQueriesPerUser + extra ), "cortex_query_frontend_queries_total" ))
205
221
0 commit comments