<p>neels <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/21199">View Change</a></p><div style="white-space:pre-wrap">Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
neels: Looks good to me, approved
</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">handover_test: change 'meas-rep' params to bts-trx-ts-ss nr<br><br>So far the 'meas-rep' expects the index of the MS in order of appearance, to<br>send a measurement report for that MS. That may seem like a simplification for<br>human readability, but in fact, it is confusing for a human to keep track which<br>MS has which index, and to which timeslot it has been handovered. When reading<br>the tests, it is much easier to read exactly which timeslot the measurement<br>report is being sent to; which MS came first is inherently not as interesting<br>as which lchans are currently occupied.<br><br>Change-Id: I7ab2ef604196cfe96112dfefb9aa930368bf4812<br>---<br>M tests/handover/handover_test.c<br>1 file changed, 122 insertions(+), 98 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/handover/handover_test.c b/tests/handover/handover_test.c</span><br><span>index 5655bda..ea78fbf 100644</span><br><span>--- a/tests/handover/handover_test.c</span><br><span>+++ b/tests/handover/handover_test.c</span><br><span>@@ -724,8 +724,9 @@</span><br><span> "create-n-bts", "7",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0",</span><br><span style="color: hsl(0, 100%, 40%);">- "6","0","20","1","21","2","18","3","20","4","23","5","19",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "30","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "6", "0","20", "1","21", "2","18", "3","20", "4","23", "5","19",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span> };</span><br><span>@@ -739,8 +740,9 @@</span><br><span> "create-n-bts", "7",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "10","0",</span><br><span style="color: hsl(0, 100%, 40%);">- "6","0","20","1","21","2","18","3","20","4","23","5","19",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "10","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "6", "0","20", "1","21", "2","18", "3","20", "4","23", "5","19",</span><br><span> "expect-chan", "5", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -768,10 +770,10 @@</span><br><span> "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/H-", "-", "-",</span><br><span> "as-enable", "0", "0",</span><br><span> "ho-enable", "0", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "0","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "as-enable", "0", "1",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "0","0", "1","0","30",</span><br><span> "expect-chan", "0", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "5",</span><br><span>@@ -779,10 +781,10 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "ho-enable", "0", "1",</span><br><span> "ho-enable", "1", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "0","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "ho-enable", "1", "1",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "0","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -803,14 +805,14 @@</span><br><span> "create-n-bts", "2",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span> "ho-failed",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "-", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span> };</span><br><span>@@ -827,10 +829,10 @@</span><br><span> "set-min-free", "1", "TCH/H", "4",</span><br><span> "create-ms", "0", "TCH/H", "HR",</span><br><span> "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/H-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "set-min-free", "1", "TCH/H", "3",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "5",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "5",</span><br><span>@@ -852,10 +854,10 @@</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "create-ms", "0", "TCH/F", "FR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "set-min-free", "1", "TCH/F", "3",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -877,10 +879,10 @@</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "create-ms", "0", "TCH/F", "EFR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "set-min-free", "1", "TCH/F", "3",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -901,7 +903,7 @@</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "5",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -929,7 +931,7 @@</span><br><span> "create-ms", "1", "TCH/H", "AMR",</span><br><span> "create-ms", "1", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "TCH/F", "TCH/F", "TCH/F", "TCH/HH", "TCH/HH", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "0","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span> };</span><br><span>@@ -947,11 +949,11 @@</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "0","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","2","0", "0","0", "1","0","30",</span><br><span> "expect-chan", "1", "2",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "0","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","3","0", "0","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span> };</span><br><span>@@ -966,9 +968,9 @@</span><br><span> "create-n-bts", "2",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "27","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "27","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "26","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "26","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -993,11 +995,11 @@</span><br><span> "create-n-bts", "2",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "10","0", "1","0","11",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "10","0", "1","0","11",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "8","0", "1","0","9",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "8","0", "1","0","9",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "9","0", "1","0","10",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "9","0", "1","0","10",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1019,11 +1021,11 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "set-min-free", "1", "TCH/H", "4",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "set-min-free", "1", "TCH/F", "3",</span><br><span> "set-min-free", "1", "TCH/H", "3",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1049,11 +1051,11 @@</span><br><span> "set-min-free", "0", "TCH/H", "4",</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "set-min-free", "1", "TCH/H", "4",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1076,9 +1078,9 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "set-min-free", "1", "TCH/H", "4",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "10","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "10","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "9","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "9","0", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1104,25 +1106,25 @@</span><br><span> "create-n-bts", "2",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "40","6", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","6", "1","0","30",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1147,17 +1149,17 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "set-max-ta", "0", "5", /* of cell */</span><br><span> "set-ta", "0", "5", /* of ms */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span> "set-ta", "0", "6", /* of ms */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","20",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span> "ho-complete",</span><br><span> "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "-", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "20","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span> };</span><br><span>@@ -1184,17 +1186,17 @@</span><br><span> "create-ms", "1", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/HH", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","2","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "3", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","1", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "4", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "5", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","5","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-no-chan",</span><br><span>@@ -1227,19 +1229,19 @@</span><br><span> "create-ms", "1", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "TCH/HH", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","2","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "30","0", "2","0","21","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","3","0", "30","0", "2","0","21","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "3", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "4", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","1", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "5", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "6", "30","0", "2","0","20","1","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","5","0", "30","0", "2","0","20","1","20",</span><br><span> "expect-no-chan",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "TCH/HH", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "TCH/H-", "-", "-",</span><br><span>@@ -1269,13 +1271,13 @@</span><br><span> "create-ms", "1", "TCH/F", "FR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "TCH/F", "-", "-", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "30","0", "1","0","21",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","2","0", "30","0", "1","0","21",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "30","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","3","0", "30","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "3", "30","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "30","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "1", "2",</span><br><span>@@ -1299,7 +1301,7 @@</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "1", "5",</span><br><span>@@ -1326,7 +1328,7 @@</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/H-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "1", "1",</span><br><span>@@ -1353,9 +1355,9 @@</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/HH", "TCH/H-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "34","0", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "20","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "30","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","1", "34","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","6","0", "20","0", "0",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "0", "1",</span><br><span>@@ -1385,7 +1387,7 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "expect-ts-use", "1", "0", "*", "-", "-", "-", "-", "-", "-", "-",</span><br><span> "expect-ts-use", "2", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "40","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "40","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> </span><br><span> "print",</span><br><span>@@ -1397,7 +1399,7 @@</span><br><span> "What happens: While driving, a different cell (mounted atop the\n"</span><br><span> "store) becomes better.",</span><br><span> /* drive to bts 1 */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "20","0", "1","0","35",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","35",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1415,7 +1417,7 @@</span><br><span> "What happens: Inside the store the close cell is so bad, that\n"</span><br><span> "handover back to the previous cell is required.",</span><br><span> /* bts 1 becomes bad, so bts 0 helps out */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "5","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "5","0", "1","0","20",</span><br><span> "expect-chan", "0", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "1", "1",</span><br><span>@@ -1430,7 +1432,7 @@</span><br><span> "What happens: Outside the store the close cell is better again, so\n"</span><br><span> "handover back to the that cell is performed.",</span><br><span> /* bts 1 becomes better again */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "20","0", "1","0","35",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","35",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1445,7 +1447,7 @@</span><br><span> "\n"</span><br><span> "What happens: There is a small cell at Axel's house, which becomes\n"</span><br><span> "better, because the current cell has no good comverage at the lake.",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "14","0", "2","0","2","1","63",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "14","0", "2","0","2","1","63",</span><br><span> "expect-chan", "2", "2",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "1", "1",</span><br><span>@@ -1481,7 +1483,7 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> </span><br><span> /* send measurement and trigger congestion check */</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "20","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "1", "1",</span><br><span>@@ -1500,7 +1502,7 @@</span><br><span> /* no handover until measurements applied */</span><br><span> "congestion-check",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "20","0", "1","0","20",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "1","0","1","0", "20","0", "1","0","20",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "0", "1",</span><br><span>@@ -1522,7 +1524,7 @@</span><br><span> "create-n-bts", "7",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0",</span><br><span> "6","0","20","1","21","2","18","3","20","4","23","5","19",</span><br><span> "expect-no-chan",</span><br><span> NULL</span><br><span>@@ -1537,7 +1539,7 @@</span><br><span> "create-n-bts", "7",</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "10","0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "10","0",</span><br><span> "6","0","20","1","21","2","18","3","20","4","23","5","19",</span><br><span> "expect-chan", "5", "1",</span><br><span> "ack-chan",</span><br><span>@@ -1564,9 +1566,9 @@</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "-", "-", "-", "-", "TCH/HH", "TCH/H-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "1", "34","0", "0",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "2", "20","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","0", "30","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","5","1", "34","0", "0",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","6","0", "20","0", "0",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "0", "1",</span><br><span>@@ -1601,25 +1603,25 @@</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "-", "-", "-", "-", "-", "-",</span><br><span> "set-min-free", "1", "TCH/F", "4",</span><br><span> "set-min-free", "1", "TCH/H", "4",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-no-chan",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","6", "1","0","40",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","6", "1","0","40",</span><br><span> "expect-chan", "1", "1",</span><br><span> "ack-chan",</span><br><span> "expect-ho", "0", "1",</span><br><span>@@ -1642,7 +1644,7 @@</span><br><span> "create-ms", "0", "TCH/F", "AMR",</span><br><span> "create-ms", "0", "TCH/H", "AMR",</span><br><span> "expect-ts-use", "0", "0", "*", "TCH/F", "TCH/F", "-", "-", "TCH/H-", "-", "-",</span><br><span style="color: hsl(0, 100%, 40%);">- "meas-rep", "0", "30","0", "1","0","30",</span><br><span style="color: hsl(120, 100%, 40%);">+ "meas-rep", "0","0","1","0", "30","0", "1","0","30",</span><br><span> "expect-no-chan",</span><br><span> "congestion-check",</span><br><span> "expect-chan", "0", "5",</span><br><span>@@ -1934,16 +1936,38 @@</span><br><span> test_case += 3;</span><br><span> } else</span><br><span> if (!strcmp(*test_case, "meas-rep")) {</span><br><span style="color: hsl(0, 100%, 40%);">- /* meas-rep <lchan-nr> <rxlev> <rxqual> <nr-of-neighbors> [<cell-idx> <rxlev> [...]] */</span><br><span style="color: hsl(0, 100%, 40%);">- int n = atoi(test_case[4]);</span><br><span style="color: hsl(0, 100%, 40%);">- struct gsm_lchan *lc = lchan[atoi(test_case[1])];</span><br><span style="color: hsl(120, 100%, 40%);">+ /* meas-rep <bts-nr> <trx-nr> <ts-nr> <lchan-nr> <rxlev> <rxqual> <nr-of-neighbors> [<cell-idx> <rxlev> [...]] */</span><br><span style="color: hsl(120, 100%, 40%);">+ int n;</span><br><span style="color: hsl(120, 100%, 40%);">+ struct gsm_bts *bts;</span><br><span style="color: hsl(120, 100%, 40%);">+ struct gsm_bts_trx *trx;</span><br><span style="color: hsl(120, 100%, 40%);">+ struct gsm_bts_trx_ts *ts;</span><br><span style="color: hsl(120, 100%, 40%);">+ struct gsm_lchan *lc;</span><br><span style="color: hsl(120, 100%, 40%);">+ int bts_nr = atoi(test_case[1]);</span><br><span style="color: hsl(120, 100%, 40%);">+ int trx_nr = atoi(test_case[2]);</span><br><span style="color: hsl(120, 100%, 40%);">+ int ts_nr = atoi(test_case[3]);</span><br><span style="color: hsl(120, 100%, 40%);">+ int ss_nr = atoi(test_case[4]);</span><br><span style="color: hsl(120, 100%, 40%);">+ meas_dl_rxlev = atoi(test_case[5]);</span><br><span style="color: hsl(120, 100%, 40%);">+ meas_dl_rxqual = atoi(test_case[6]);</span><br><span style="color: hsl(120, 100%, 40%);">+ n = atoi(test_case[7]);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ bts = gsm_bts_num(bsc_gsmnet, bts_nr);</span><br><span style="color: hsl(120, 100%, 40%);">+ trx = gsm_bts_trx_num(bts, trx_nr);</span><br><span style="color: hsl(120, 100%, 40%);">+ ts = &trx->ts[ts_nr];</span><br><span style="color: hsl(120, 100%, 40%);">+ lc = &ts->lchan[ss_nr];</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ if (!lchan_state_is(lc, LCHAN_ST_ESTABLISHED)) {</span><br><span style="color: hsl(120, 100%, 40%);">+ printf("Error: sending measurement report for %d-%d-%d-%d which is in state %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+ bts_nr, trx_nr, ts_nr, ss_nr,</span><br><span style="color: hsl(120, 100%, 40%);">+ lchan_state_name(lc));</span><br><span style="color: hsl(120, 100%, 40%);">+ exit(1);</span><br><span style="color: hsl(120, 100%, 40%);">+ }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> fprintf(stderr, "- Sending measurement report from "</span><br><span style="color: hsl(0, 100%, 40%);">- "mobile #%s (rxlev=%s, rxqual=%s)\n",</span><br><span style="color: hsl(0, 100%, 40%);">- test_case[1], test_case[2], test_case[3]);</span><br><span style="color: hsl(0, 100%, 40%);">- meas_dl_rxlev = atoi(test_case[2]);</span><br><span style="color: hsl(0, 100%, 40%);">- meas_dl_rxqual = atoi(test_case[3]);</span><br><span style="color: hsl(120, 100%, 40%);">+ "%d-%d-%d-%d (rxlev=%d, rxqual=%d)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+ bts_nr, trx_nr, ts_nr, ss_nr,</span><br><span style="color: hsl(120, 100%, 40%);">+ meas_dl_rxlev, meas_dl_rxqual);</span><br><span> meas_num_nc = n;</span><br><span style="color: hsl(0, 100%, 40%);">- test_case += 5;</span><br><span style="color: hsl(120, 100%, 40%);">+ test_case += 8;</span><br><span> for (i = 0; i < n; i++) {</span><br><span> int nr = atoi(test_case[0]);</span><br><span> /* since our bts is not in the list of neighbor</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/21199">change 21199</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-bsc/+/21199"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I7ab2ef604196cfe96112dfefb9aa930368bf4812 </div>
<div style="display:none"> Gerrit-Change-Number: 21199 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>