| 170 | } |
| 171 | |
| 172 | @Test |
| 173 | public void evaluateSubQuerySeries() throws Exception { |
| 174 | SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, |
| 175 | NUM_POINTS, true, -10, -1); |
| 176 | DataPoints dps2 = PowerMockito.mock(DataPoints.class); |
| 177 | when(dps2.iterator()).thenReturn(view2); |
| 178 | when(dps2.metricName()).thenReturn("sys.mem"); |
| 179 | group_bys = new DataPoints[] { dps, dps2 }; |
| 180 | query_results.clear(); |
| 181 | query_results.add(group_bys); |
| 182 | params.add("My Alias"); |
| 183 | |
| 184 | final DataPoints[] results = func.evaluate(data_query, query_results, params); |
| 185 | |
| 186 | assertEquals(2, results.length); |
| 187 | assertEquals("My Alias", results[0].metricName()); |
| 188 | assertEquals("My Alias", results[1].metricName()); |
| 189 | |
| 190 | long ts = START_TIME; |
| 191 | long v = 1; |
| 192 | for (DataPoint dp : results[0]) { |
| 193 | assertEquals(ts, dp.timestamp()); |
| 194 | assertTrue(dp.isInteger()); |
| 195 | assertEquals(v, dp.longValue()); |
| 196 | ts += INTERVAL; |
| 197 | v += 1; |
| 198 | } |
| 199 | ts = START_TIME; |
| 200 | v = 10; |
| 201 | for (DataPoint dp : results[1]) { |
| 202 | assertEquals(ts, dp.timestamp()); |
| 203 | assertTrue(dp.isInteger()); |
| 204 | assertEquals(v, dp.longValue()); |
| 205 | ts += INTERVAL; |
| 206 | v += 1; |
| 207 | } |
| 208 | } |
| 209 | |
| 210 | @Test |
| 211 | public void evaluateWithTags() throws Exception { |