@Test
public void testGroupByPod() {

	
	GroupByTransform transform = new GroupByTransform(new TransformFactory(null, null));
	
	Map<Long, Double> datapoints = new HashMap<Long, Double>();
       	datapoints.put(1000L, 1.0);
	
	List<Metric> metrics = new ArrayList<>();
	
	Metric metric1 = new Metric("system.pod1", "latency");
	metric1.setTag("device", "pod1-device1");
        metric1.setDatapoints(datapoints);
        
        Metric metric11 = new Metric("system.pod1", "latency");
	metric11.setTag("device", "pod1-device2");
        metric11.setDatapoints(datapoints);
       
       
        Metric metric2 = new Metric("system.pod2", "latency");
	metric2.setTag("device", "pod2-device1");
        metric2.setDatapoints(datapoints);
       
        Metric metric21 = new Metric("system.pod2", "latency");
	metric21.setTag("device", "pod2-device2");
        metric21.setDatapoints(datapoints);
       
        Metric metric3 = new Metric("system.pod3", "latency");
	metric3.setTag("device", "pod3-device1");
        metric3.setDatapoints(datapoints);
       
        Metric metric31 = new Metric("system.pod3", "latency");
	metric31.setTag("device", "pod3-device2");
        metric31.setDatapoints(datapoints);
       
        metrics.add(metric1);
        metrics.add(metric11);
        metrics.add(metric2);
        metrics.add(metric21);
        metrics.add(metric3);
        metrics.add(metric31);
       
	
	List<String> constants = new ArrayList<>();
	constants.add("(system\\.pod[0-9]:latency)");
	constants.add("SUM");
	
	List<Metric> result = transform.transform(null, metrics, constants);
	assertTrue(result.size() == 3);
	for(Metric r : result) {
		assertEquals(new Double(2.0), r.getDatapoints().get(1000L));
	}
}