neels has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-bsc/+/21199 )

Change subject: handover_test: change 'meas-rep' params to bts-trx-ts-ss nr
......................................................................

handover_test: change 'meas-rep' params to bts-trx-ts-ss nr

So far the 'meas-rep' expects the index of the MS in order of appearance, to
send a measurement report for that MS. That may seem like a simplification for
human readability, but in fact, it is confusing for a human to keep track which
MS has which index, and to which timeslot it has been handovered. When reading
the tests, it is much easier to read exactly which timeslot the measurement
report is being sent to; which MS came first is inherently not as interesting
as which lchans are currently occupied.

Change-Id: I7ab2ef604196cfe96112dfefb9aa930368bf4812
---
M tests/handover/handover_test.c
1 file changed, 122 insertions(+), 98 deletions(-)

Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  neels: Looks good to me, approved



diff --git a/tests/handover/handover_test.c b/tests/handover/handover_test.c
index 5655bda..ea78fbf 100644
--- a/tests/handover/handover_test.c
+++ b/tests/handover/handover_test.c
@@ -724,8 +724,9 @@
        "create-n-bts", "7",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "30","0",
-               "6","0","20","1","21","2","18","3","20","4","23","5","19",
+       "meas-rep", "0","0","1","0",
+               "30","0",
+               "6", "0","20", "1","21", "2","18", "3","20", "4","23", "5","19",
        "expect-no-chan",
        NULL
 };
@@ -739,8 +740,9 @@
        "create-n-bts", "7",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "10","0",
-               "6","0","20","1","21","2","18","3","20","4","23","5","19",
+       "meas-rep", "0","0","1","0",
+               "10","0",
+               "6", "0","20", "1","21", "2","18", "3","20", "4","23", "5","19",
        "expect-chan", "5", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -768,10 +770,10 @@
        "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/H-", "-", "-",
        "as-enable", "0", "0",
        "ho-enable", "0", "0",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","5","0", "0","0", "1","0","30",
        "expect-no-chan",
        "as-enable", "0", "1",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","5","0", "0","0", "1","0","30",
        "expect-chan", "0", "1",
        "ack-chan",
        "expect-ho", "0", "5",
@@ -779,10 +781,10 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "ho-enable", "0", "1",
        "ho-enable", "1", "0",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "0","0", "1","0","30",
        "expect-no-chan",
        "ho-enable", "1", "1",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "0","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -803,14 +805,14 @@
        "create-n-bts", "2",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
        "ho-failed",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "expect-ts-use", "1", "0", "*", "-", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        NULL
 };
@@ -827,10 +829,10 @@
        "set-min-free", "1", "TCH/H", "4",
        "create-ms", "0", "TCH/H", "HR",
        "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/H-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","5","0", "20","0", "1","0","30",
        "expect-no-chan",
        "set-min-free", "1", "TCH/H", "3",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","5","0", "20","0", "1","0","30",
        "expect-chan", "1", "5",
        "ack-chan",
        "expect-ho", "0", "5",
@@ -852,10 +854,10 @@
        "set-min-free", "1", "TCH/F", "4",
        "create-ms", "0", "TCH/F", "FR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        "set-min-free", "1", "TCH/F", "3",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -877,10 +879,10 @@
        "set-min-free", "1", "TCH/F", "4",
        "create-ms", "0", "TCH/F", "EFR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        "set-min-free", "1", "TCH/F", "3",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -901,7 +903,7 @@
        "set-min-free", "1", "TCH/F", "4",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "5",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -929,7 +931,7 @@
        "create-ms", "1", "TCH/H", "AMR",
        "create-ms", "1", "TCH/H", "AMR",
        "expect-ts-use", "1", "0", "*", "TCH/F", "TCH/F", "TCH/F", "TCH/F", 
"TCH/HH", "TCH/HH", "-",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "0","0", "1","0","30",
        "expect-no-chan",
        NULL
 };
@@ -947,11 +949,11 @@
        "create-ms", "0", "TCH/F", "AMR",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "-", 
"-", "-",
-       "meas-rep", "0", "0","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "0","0", "1","0","30",
        "expect-chan", "1", "1",
-       "meas-rep", "1", "0","0", "1","0","30",
+       "meas-rep", "0","0","2","0", "0","0", "1","0","30",
        "expect-chan", "1", "2",
-       "meas-rep", "2", "0","0", "1","0","30",
+       "meas-rep", "0","0","3","0", "0","0", "1","0","30",
        "expect-no-chan",
        NULL
 };
@@ -966,9 +968,9 @@
        "create-n-bts", "2",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "27","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "27","0", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "26","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "26","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -993,11 +995,11 @@
        "create-n-bts", "2",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "10","0", "1","0","11",
+       "meas-rep", "0","0","1","0", "10","0", "1","0","11",
        "expect-no-chan",
-       "meas-rep", "0", "8","0", "1","0","9",
+       "meas-rep", "0","0","1","0", "8","0", "1","0","9",
        "expect-no-chan",
-       "meas-rep", "0", "9","0", "1","0","10",
+       "meas-rep", "0","0","1","0", "9","0", "1","0","10",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1019,11 +1021,11 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "set-min-free", "1", "TCH/F", "4",
        "set-min-free", "1", "TCH/H", "4",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        "set-min-free", "1", "TCH/F", "3",
        "set-min-free", "1", "TCH/H", "3",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1049,11 +1051,11 @@
        "set-min-free", "0", "TCH/H", "4",
        "set-min-free", "1", "TCH/F", "4",
        "set-min-free", "1", "TCH/H", "4",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "-", "-", 
"-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1076,9 +1078,9 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "set-min-free", "1", "TCH/F", "4",
        "set-min-free", "1", "TCH/H", "4",
-       "meas-rep", "0", "10","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "10","0", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "9","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "9","0", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1104,25 +1106,25 @@
        "create-n-bts", "2",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-no-chan",
-       "meas-rep", "0", "40","6", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","6", "1","0","30",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1147,17 +1149,17 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "set-max-ta", "0", "5", /* of cell */
        "set-ta", "0", "5", /* of ms */
-       "meas-rep", "0", "30","0", "1","0","20",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","20",
        "expect-no-chan",
        "set-ta", "0", "6", /* of ms */
-       "meas-rep", "0", "30","0", "1","0","20",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","20",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
        "ho-complete",
        "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "-", "-", "-",
        "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "20","0", "1","0","30",
+       "meas-rep", "1","0","1","0", "20","0", "1","0","30",
        "expect-no-chan",
        NULL
 };
@@ -1184,17 +1186,17 @@
        "create-ms", "1", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/HH", 
"-", "-",
        "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", 
"-",
-       "meas-rep", "0", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","1","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "1", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","2","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "2", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","5","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "3", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","5","1", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "4", "30","0", "2","0","20","1","20",
+       "meas-rep", "1","0","1","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "5", "30","0", "2","0","20","1","20",
+       "meas-rep", "1","0","5","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
        "congestion-check",
        "expect-no-chan",
@@ -1227,19 +1229,19 @@
        "create-ms", "1", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", 
"TCH/HH", "-", "-",
        "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", 
"-",
-       "meas-rep", "0", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","1","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "1", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","2","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "2", "30","0", "2","0","21","1","20",
+       "meas-rep", "0","0","3","0", "30","0", "2","0","21","1","20",
        "expect-no-chan",
-       "meas-rep", "3", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","5","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "4", "30","0", "2","0","20","1","20",
+       "meas-rep", "0","0","5","1", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "5", "30","0", "2","0","20","1","20",
+       "meas-rep", "1","0","1","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
-       "meas-rep", "6", "30","0", "2","0","20","1","20",
+       "meas-rep", "1","0","5","0", "30","0", "2","0","20","1","20",
        "expect-no-chan",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", 
"TCH/HH", "-", "-",
        "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", 
"-",
@@ -1269,13 +1271,13 @@
        "create-ms", "1", "TCH/F", "FR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "-", 
"-", "-",
        "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "30","0", "1","0","20",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","20",
        "expect-no-chan",
-       "meas-rep", "1", "30","0", "1","0","21",
+       "meas-rep", "0","0","2","0", "30","0", "1","0","21",
        "expect-no-chan",
-       "meas-rep", "2", "30","0", "1","0","20",
+       "meas-rep", "0","0","3","0", "30","0", "1","0","20",
        "expect-no-chan",
-       "meas-rep", "3", "30","0", "1","0","20",
+       "meas-rep", "1","0","1","0", "30","0", "1","0","20",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "1", "2",
@@ -1299,7 +1301,7 @@
        "set-min-free", "1", "TCH/F", "4",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "30","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","30",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "1", "5",
@@ -1326,7 +1328,7 @@
        "create-ms", "0", "TCH/F", "AMR",
        "create-ms", "0", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/H-", 
"-", "-",
-       "meas-rep", "0", "30","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","30",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "1", "1",
@@ -1353,9 +1355,9 @@
        "create-ms", "0", "TCH/H", "AMR",
        "create-ms", "0", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/HH", "TCH/H-", 
"-",
-       "meas-rep", "0", "30","0", "0",
-       "meas-rep", "1", "34","0", "0",
-       "meas-rep", "2", "20","0", "0",
+       "meas-rep", "0","0","5","0", "30","0", "0",
+       "meas-rep", "0","0","5","1", "34","0", "0",
+       "meas-rep", "0","0","6","0", "20","0", "0",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "0", "1",
@@ -1385,7 +1387,7 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "expect-ts-use", "1", "0", "*", "-", "-", "-", "-", "-", "-", "-",
        "expect-ts-use", "2", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "1", "40","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "40","0", "1","0","30",
        "expect-no-chan",

        "print",
@@ -1397,7 +1399,7 @@
        "What happens: While driving, a different cell (mounted atop the\n"
        "store) becomes better.",
        /* drive to bts 1 */
-       "meas-rep", "1", "20","0", "1","0","35",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","35",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1415,7 +1417,7 @@
        "What happens: Inside the store the close cell is so bad, that\n"
        "handover back to the previous cell is required.",
        /* bts 1 becomes bad, so bts 0 helps out */
-       "meas-rep", "1", "5","0", "1","0","20",
+       "meas-rep", "1","0","1","0", "5","0", "1","0","20",
        "expect-chan", "0", "1",
        "ack-chan",
        "expect-ho", "1", "1",
@@ -1430,7 +1432,7 @@
        "What happens: Outside the store the close cell is better again, so\n"
        "handover back to the that cell is performed.",
        /* bts 1 becomes better again */
-       "meas-rep", "1", "20","0", "1","0","35",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","35",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1445,7 +1447,7 @@
        "\n"
        "What happens: There is a small cell at Axel's house, which becomes\n"
        "better, because the current cell has no good comverage at the lake.",
-       "meas-rep", "1", "14","0", "2","0","2","1","63",
+       "meas-rep", "1","0","1","0", "14","0", "2","0","2","1","63",
        "expect-chan", "2", "2",
        "ack-chan",
        "expect-ho", "1", "1",
@@ -1481,7 +1483,7 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",

        /* send measurement and trigger congestion check */
-       "meas-rep", "0", "20","0", "1","0","20",
+       "meas-rep", "0","0","1","0", "20","0", "1","0","20",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "1", "1",
@@ -1500,7 +1502,7 @@
        /* no handover until measurements applied */
        "congestion-check",
        "expect-no-chan",
-       "meas-rep", "0", "20","0", "1","0","20",
+       "meas-rep", "1","0","1","0", "20","0", "1","0","20",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "0", "1",
@@ -1522,7 +1524,7 @@
        "create-n-bts", "7",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "30","0",
+       "meas-rep", "0","0","1","0", "30","0",
                "6","0","20","1","21","2","18","3","20","4","23","5","19",
        "expect-no-chan",
        NULL
@@ -1537,7 +1539,7 @@
        "create-n-bts", "7",
        "create-ms", "0", "TCH/F", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
-       "meas-rep", "0", "10","0",
+       "meas-rep", "0","0","1","0", "10","0",
                "6","0","20","1","21","2","18","3","20","4","23","5","19",
        "expect-chan", "5", "1",
        "ack-chan",
@@ -1564,9 +1566,9 @@
        "create-ms", "0", "TCH/H", "AMR",
        "create-ms", "0", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/HH", "TCH/H-", 
"-",
-       "meas-rep", "0", "30","0", "0",
-       "meas-rep", "1", "34","0", "0",
-       "meas-rep", "2", "20","0", "0",
+       "meas-rep", "0","0","5","0", "30","0", "0",
+       "meas-rep", "0","0","5","1", "34","0", "0",
+       "meas-rep", "0","0","6","0", "20","0", "0",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "0", "1",
@@ -1601,25 +1603,25 @@
        "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",
        "set-min-free", "1", "TCH/F", "4",
        "set-min-free", "1", "TCH/H", "4",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-no-chan",
-       "meas-rep", "0", "30","6", "1","0","40",
+       "meas-rep", "0","0","1","0", "30","6", "1","0","40",
        "expect-chan", "1", "1",
        "ack-chan",
        "expect-ho", "0", "1",
@@ -1642,7 +1644,7 @@
        "create-ms", "0", "TCH/F", "AMR",
        "create-ms", "0", "TCH/H", "AMR",
        "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/H-", 
"-", "-",
-       "meas-rep", "0", "30","0", "1","0","30",
+       "meas-rep", "0","0","1","0", "30","0", "1","0","30",
        "expect-no-chan",
        "congestion-check",
        "expect-chan", "0", "5",
@@ -1934,16 +1936,38 @@
                        test_case += 3;
                } else
                if (!strcmp(*test_case, "meas-rep")) {
-                       /* meas-rep <lchan-nr> <rxlev> <rxqual> 
<nr-of-neighbors> [<cell-idx> <rxlev> [...]] */
-                       int n = atoi(test_case[4]);
-                       struct gsm_lchan *lc = lchan[atoi(test_case[1])];
+                       /* meas-rep <bts-nr> <trx-nr> <ts-nr> <lchan-nr> 
<rxlev> <rxqual> <nr-of-neighbors> [<cell-idx> <rxlev> [...]] */
+                       int n;
+                       struct gsm_bts *bts;
+                       struct gsm_bts_trx *trx;
+                       struct gsm_bts_trx_ts *ts;
+                       struct gsm_lchan *lc;
+                       int bts_nr = atoi(test_case[1]);
+                       int trx_nr = atoi(test_case[2]);
+                       int ts_nr = atoi(test_case[3]);
+                       int ss_nr = atoi(test_case[4]);
+                       meas_dl_rxlev = atoi(test_case[5]);
+                       meas_dl_rxqual = atoi(test_case[6]);
+                       n = atoi(test_case[7]);
+
+                       bts = gsm_bts_num(bsc_gsmnet, bts_nr);
+                       trx = gsm_bts_trx_num(bts, trx_nr);
+                       ts = &trx->ts[ts_nr];
+                       lc = &ts->lchan[ss_nr];
+
+                       if (!lchan_state_is(lc, LCHAN_ST_ESTABLISHED)) {
+                               printf("Error: sending measurement report for 
%d-%d-%d-%d which is in state %s\n",
+                                      bts_nr, trx_nr, ts_nr, ss_nr,
+                                      lchan_state_name(lc));
+                               exit(1);
+                       }
+
                        fprintf(stderr, "- Sending measurement report from "
-                               "mobile #%s (rxlev=%s, rxqual=%s)\n",
-                               test_case[1], test_case[2], test_case[3]);
-                       meas_dl_rxlev = atoi(test_case[2]);
-                       meas_dl_rxqual = atoi(test_case[3]);
+                               "%d-%d-%d-%d (rxlev=%d, rxqual=%d)\n",
+                               bts_nr, trx_nr, ts_nr, ss_nr,
+                               meas_dl_rxlev, meas_dl_rxqual);
                        meas_num_nc = n;
-                       test_case += 5;
+                       test_case += 8;
                        for (i = 0; i < n; i++) {
                                int nr = atoi(test_case[0]);
                                /* since our bts is not in the list of neighbor

--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/21199
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I7ab2ef604196cfe96112dfefb9aa930368bf4812
Gerrit-Change-Number: 21199
Gerrit-PatchSet: 2
Gerrit-Owner: neels <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: neels <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>
Gerrit-MessageType: merged

Reply via email to