ms_srs: sum bitrates for all component carrier

when calculating the dl and ul bitrate, it is required to take the
sum of all active component carriers since they are reported seperately
inside the CSV file

Change-Id: If30ec3f22ce5871f911433e6a6997e9c6e7ca210
diff --git a/src/osmo_gsm_tester/obj/ms_srs.py b/src/osmo_gsm_tester/obj/ms_srs.py
index f53f461..3e1b3ff 100644
--- a/src/osmo_gsm_tester/obj/ms_srs.py
+++ b/src/osmo_gsm_tester/obj/ms_srs.py
@@ -398,6 +398,15 @@
                 # Sum them up assuming same array dimension
                 sel_data += vec
 
+        # Sum up all component carriers for rate metrics
+        if metric_str.find('brate'):
+            # Determine number of component carriers
+            num_cc = numpy.amax(numpy.array(self.raw_data['cc'])) + 1 # account for zero index
+            tmp_values = sel_data
+            sel_data = numpy.array(tmp_values[::num_cc]) # first carrier, every num_cc'th item in list
+            for cc in range(1, num_cc):
+                sel_data += numpy.array(tmp_values[cc::num_cc]) # all other carriers, start at cc index
+
         if operation == 'avg':
             result = numpy.average(sel_data)
         elif operation == 'sum':