mirror of https://gerrit.osmocom.org/libosmocore
914 lines
25 KiB
Plaintext
914 lines
25 KiB
Plaintext
Testing generation of GSM0808 messages
|
|
test_gsm0808_enc_cause: encoded: 04 01 41 (rc = 3)
|
|
test_gsm0808_enc_cause: encoded: 04 02 80 41 (rc = 4)
|
|
Testing creating Layer3
|
|
Testing creating Layer3 (AoIP)
|
|
Testing creating Reset
|
|
Testing creating Reset Ack
|
|
Testing creating Clear Command
|
|
Testing creating Clear Command 2
|
|
Testing creating Clear Command 2 (CSFB)
|
|
Testing creating Clear Complete
|
|
Testing creating Chipher Mode Command
|
|
Testing creating Cipher Complete
|
|
Testing creating Cipher Reject
|
|
Testing creating Cipher Reject (extended)
|
|
Testing creating CM U
|
|
Testing creating SAPI Reject
|
|
Testing creating Assignment Request
|
|
Testing creating Assignment Request with Kc and LCLS
|
|
Testing creating Assignment Complete
|
|
Testing creating Assignment Complete (AoIP)
|
|
Testing creating Assignment Failure
|
|
Testing creating Assignment Failure (AoIP)
|
|
Testing creating Clear Request
|
|
Testing creating Paging Request
|
|
Testing creating DTAP
|
|
Testing prepend DTAP
|
|
Testing Global Call Reference IE encoder...
|
|
15 bytes added: OK
|
|
decoded 15 bytes: OK:
|
|
LCLS Config: Not available, Control: Not available, Correlation-Needed: 1
|
|
GCR NetID 0xf1f2f3, Node 0xdead, CallRefID 0x4142434445
|
|
test_gsm0808_enc_dec_cell_id_list_lac: encoded: 1a 07 05 01 24 ab cd 56 78 (rc = 9)
|
|
------- test_cell_id_list_add
|
|
cell_id_list == CGI[0]:{}
|
|
gsm0808_cell_id_list_add(&cil, &lac1) --> rc = 1
|
|
cell_id_list == LAC[1]:{123}
|
|
gsm0808_cell_id_list_add(&cil, &lac1) --> rc = 0
|
|
cell_id_list == LAC[1]:{123}
|
|
gsm0808_cell_id_list_add(&cil, &lac2) --> rc = 2
|
|
cell_id_list == LAC[3]:{123, 456, 789}
|
|
gsm0808_cell_id_list_add(&cil, &lac2) --> rc = 0
|
|
cell_id_list == LAC[3]:{123, 456, 789}
|
|
gsm0808_cell_id_list_add(&cil, &cil) --> rc = 0
|
|
cell_id_list == LAC[3]:{123, 456, 789}
|
|
gsm0808_cell_id_list_add(&cil, &cgi1) --> rc = -22
|
|
cell_id_list == LAC[3]:{123, 456, 789}
|
|
* can't add to BSS list
|
|
cell_id_list == BSS[0]
|
|
gsm0808_cell_id_list_add(&cil, &lac1) --> rc = -22
|
|
cell_id_list == BSS[0]
|
|
* other types (including NO_CELL) take on new type iff empty
|
|
cell_id_list == NO-CELL[0]
|
|
gsm0808_cell_id_list_add(&cil, &cgi1) --> rc = 1
|
|
cell_id_list == CGI[1]:{001-02-3-4}
|
|
gsm0808_cell_id_list_add(&cil, &cgi1) --> rc = 0
|
|
cell_id_list == CGI[1]:{001-02-3-4}
|
|
gsm0808_cell_id_list_add(&cil, &cgi2) --> rc = 2
|
|
cell_id_list == CGI[3]:{001-02-3-4, 001-002-3-4, 005-006-7-8}
|
|
gsm0808_cell_id_list_add(&cil, &cgi2) --> rc = 0
|
|
cell_id_list == CGI[3]:{001-02-3-4, 001-002-3-4, 005-006-7-8}
|
|
* test gsm0808_cell_id_list_name_buf()'s return val
|
|
strlen(gsm0808_cell_id_list_name(cil)) == 45
|
|
gsm0808_cell_id_list_name_buf(buf, 46, cil)) == 45 "CGI[3]:{001-02-3-4, 001-002-3-4, 005-006-7-8}"
|
|
gsm0808_cell_id_list_name_buf(buf, 23, cil)) == 45 "CGI[3]:{001-02-3-4, 00"
|
|
gsm0808_cell_id_list_name_buf(buf, 11, cil)) == 45 "CGI[3]:{00"
|
|
gsm0808_cell_id_list_name_buf(buf, 5, cil)) == 45 "CGI["
|
|
gsm0808_cell_id_list_name_buf(buf, 2, cil)) == 45 "C"
|
|
gsm0808_cell_id_list_name_buf(buf, 1, cil)) == 45 ""
|
|
gsm0808_cell_id_list_name_buf(buf, 0, cil)) == 45 "#"
|
|
* list-full behavior
|
|
cil.id_list_len = 126
|
|
gsm0808_cell_id_list_add(&cil, &cgi2a) --> rc = 1
|
|
cil.id_list_len = 127
|
|
cil.id_list_len = 126
|
|
gsm0808_cell_id_list_add(&cil, &cgi3) --> rc = -28
|
|
cil.id_list_len = 127
|
|
gsm0808_cell_id_list_add(&cil, &cgi2a) --> rc = -28
|
|
cil.id_list_len = 127
|
|
------- test_cell_id_list_add done
|
|
test_gsm0808_enc_dec_cell_id_lac: encoded: 05 03 05 01 24 (rc = 5)
|
|
test_gsm0808_enc_dec_cell_id_bss: encoded: 05 01 06 (rc = 3)
|
|
test_gsm0808_enc_dec_cell_id_no_cell: encoded: 05 01 03 (rc = 3)
|
|
test_gsm0808_enc_dec_cell_id_lai_and_lac: encoded: 05 06 04 21 63 54 23 42 (rc = 8)
|
|
test_gsm0808_enc_dec_cell_id_ci: encoded: 05 03 02 04 23 (rc = 5)
|
|
test_gsm0808_enc_dec_cell_id_lac_and_ci: encoded: 05 05 01 04 23 02 35 (rc = 7)
|
|
test_gsm0808_enc_dec_cell_id_global: encoded: 05 08 00 21 63 54 23 42 04 23 (rc = 10)
|
|
Testing gsm0808_sc_cfg_from_gsm48_mr_cfg():
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
Result (hr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 5701 = 0b0101011100000001
|
|
Result (hr):
|
|
S15-S0 = 0701 = 0b0000011100000001
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 1 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
Result (hr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 5704 = 0b0101011100000100
|
|
Result (hr):
|
|
S15-S0 = 0704 = 0b0000011100000100
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 1608 = 0b0001011000001000
|
|
Result (hr):
|
|
S15-S0 = 0608 = 0b0000011000001000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 0410 = 0b0000010000010000
|
|
Result (hr):
|
|
S15-S0 = 0410 = 0b0000010000010000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 4020 = 0b0100000000100000
|
|
Result (hr):
|
|
S15-S0 = 0020 = 0b0000000000100000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 1040 = 0b0001000001000000
|
|
Result (hr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 4080 = 0b0100000010000000
|
|
Result (hr):
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 1 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 570d = 0b0101011100001101
|
|
Result (hr):
|
|
S15-S0 = 070d = 0b0000011100001101
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 1
|
|
m10_2= 1
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 54f0 = 0b0101010011110000
|
|
Result (hr):
|
|
S15-S0 = 0430 = 0b0000010000110000
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 57cc = 0b0101011111001100
|
|
Result (hr):
|
|
S15-S0 = 070c = 0b0000011100001100
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 1 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 5731 = 0b0101011100110001
|
|
Result (hr):
|
|
S15-S0 = 0731 = 0b0000011100110001
|
|
|
|
Input:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 1 spare= 0
|
|
m5_90= 0 icmi= 0
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 0
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 56a8 = 0b0101011010101000
|
|
Result (hr):
|
|
S15-S0 = 0628 = 0b0000011000101000
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 5755 = 0b0101011101010101
|
|
Result (hr):
|
|
S15-S0 = 0717 = 0b0000011100010111
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 1 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 1
|
|
m10_2= 1
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 57ff = 0b0101011111111111
|
|
Result (hr):
|
|
S15-S0 = 073f = 0b0000011100111111
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
Result (fr):
|
|
S15-S0 = 5797 = 0b0101011110010111
|
|
Result (hr):
|
|
S15-S0 = 0717 = 0b0000011100010111
|
|
|
|
Input:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 0
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 0
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result (fr):
|
|
S15-S0 = 5715 = 0b0101011100010101
|
|
Result (hr):
|
|
S15-S0 = 0717 = 0b0000011100010111
|
|
|
|
Testing gsm48_mr_cfg_from_gsm0808_sc_cfg():
|
|
Input:
|
|
S15-S0 = ff03 = 0b1111111100000011
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result invalid!
|
|
|
|
Input:
|
|
S15-S0 = ff06 = 0b1111111100000110
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 3e08 = 0b0011111000001000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0c12 = 0b0000110000010010
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = c020 = 0b1100000000100000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 3040 = 0b0011000001000000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = c082 = 0b1100000010000010
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 0001 = 0b0000000000000001
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0002 = 0b0000000000000010
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 0004 = 0b0000000000000100
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0008 = 0b0000000000001000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0010 = 0b0000000000010000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0020 = 0b0000000000100000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0040 = 0b0000000001000000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0080 = 0b0000000010000000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 0058 = 0b0000000001011000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 1
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0021 = 0b0000000000100001
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
|
|
Input:
|
|
S15-S0 = 0084 = 0b0000000010000100
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 0086 = 0b0000000010000110
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
|
|
Input:
|
|
S15-S0 = 000a = 0b0000000000001010
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
Result invalid!
|
|
|
|
Input:
|
|
S15-S0 = 0079 = 0b0000000001111001
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 1 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 1
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result invalid!
|
|
|
|
Input:
|
|
S15-S0 = 0000 = 0b0000000000000000
|
|
Output:
|
|
m4_75= 0 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 0 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 0 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 0
|
|
Result invalid!
|
|
|
|
Input:
|
|
S15-S0 = ffff = 0b1111111111111111
|
|
Output:
|
|
m4_75= 1 smod= 0
|
|
m5_15= 0 spare= 0
|
|
m5_90= 1 icmi= 1
|
|
m6_70= 0 nscb= 0
|
|
m7_40= 1 ver= 1
|
|
m7_95= 0
|
|
m10_2= 0
|
|
m12_2= 1
|
|
Result invalid!
|
|
|
|
|
|
test_cell_id_matching
|
|
[0] LAC:23 LAC:23 MATCH
|
|
[0] LAC:23 LAC:23 MATCH exactly
|
|
[1] LAC:23 LAC:42 don't match
|
|
[1] LAC:23 LAC:42 don't match exactly
|
|
[2] LAC:23 CI:5 MATCH
|
|
[2] LAC:23 CI:5 don't match exactly
|
|
[3] LAC:23 CI:6 MATCH
|
|
[3] LAC:23 CI:6 don't match exactly
|
|
[4] LAC:23 LAC-CI:23-5 MATCH
|
|
[4] LAC:23 LAC-CI:23-5 don't match exactly
|
|
[5] LAC:23 LAC-CI:42-6 don't match
|
|
[5] LAC:23 LAC-CI:42-6 don't match exactly
|
|
[6] LAC:23 LAI:023-042-23 MATCH
|
|
[6] LAC:23 LAI:023-042-23 don't match exactly
|
|
[7] LAC:23 LAI:023-042-42 don't match
|
|
[7] LAC:23 LAI:023-042-42 don't match exactly
|
|
[8] LAC:23 LAI:023-99-23 MATCH
|
|
[8] LAC:23 LAI:023-99-23 don't match exactly
|
|
[9] LAC:23 LAI:023-42-23 MATCH
|
|
[9] LAC:23 LAI:023-42-23 don't match exactly
|
|
[10] LAC:23 CGI:023-042-23-5 MATCH
|
|
[10] LAC:23 CGI:023-042-23-5 don't match exactly
|
|
[11] LAC:23 CGI:023-042-42-6 don't match
|
|
[11] LAC:23 CGI:023-042-42-6 don't match exactly
|
|
[12] LAC:23 CGI:023-99-23-5 MATCH
|
|
[12] LAC:23 CGI:023-99-23-5 don't match exactly
|
|
[13] CI:5 LAC:23 MATCH
|
|
[13] CI:5 LAC:23 don't match exactly
|
|
[14] CI:5 LAC:42 MATCH
|
|
[14] CI:5 LAC:42 don't match exactly
|
|
[15] CI:5 CI:5 MATCH
|
|
[15] CI:5 CI:5 MATCH exactly
|
|
[16] CI:5 CI:6 don't match
|
|
[16] CI:5 CI:6 don't match exactly
|
|
[17] CI:5 LAC-CI:23-5 MATCH
|
|
[17] CI:5 LAC-CI:23-5 don't match exactly
|
|
[18] CI:5 LAC-CI:42-6 don't match
|
|
[18] CI:5 LAC-CI:42-6 don't match exactly
|
|
[19] CI:5 LAI:023-042-23 MATCH
|
|
[19] CI:5 LAI:023-042-23 don't match exactly
|
|
[20] CI:5 LAI:023-042-42 MATCH
|
|
[20] CI:5 LAI:023-042-42 don't match exactly
|
|
[21] CI:5 LAI:023-99-23 MATCH
|
|
[21] CI:5 LAI:023-99-23 don't match exactly
|
|
[22] CI:5 LAI:023-42-23 MATCH
|
|
[22] CI:5 LAI:023-42-23 don't match exactly
|
|
[23] CI:5 CGI:023-042-23-5 MATCH
|
|
[23] CI:5 CGI:023-042-23-5 don't match exactly
|
|
[24] CI:5 CGI:023-042-42-6 don't match
|
|
[24] CI:5 CGI:023-042-42-6 don't match exactly
|
|
[25] CI:5 CGI:023-99-23-5 MATCH
|
|
[25] CI:5 CGI:023-99-23-5 don't match exactly
|
|
[26] LAC-CI:23-5 LAC:23 MATCH
|
|
[26] LAC-CI:23-5 LAC:23 don't match exactly
|
|
[27] LAC-CI:23-5 LAC:42 don't match
|
|
[27] LAC-CI:23-5 LAC:42 don't match exactly
|
|
[28] LAC-CI:23-5 CI:5 MATCH
|
|
[28] LAC-CI:23-5 CI:5 don't match exactly
|
|
[29] LAC-CI:23-5 CI:6 don't match
|
|
[29] LAC-CI:23-5 CI:6 don't match exactly
|
|
[30] LAC-CI:23-5 LAC-CI:23-5 MATCH
|
|
[30] LAC-CI:23-5 LAC-CI:23-5 MATCH exactly
|
|
[31] LAC-CI:23-5 LAC-CI:42-6 don't match
|
|
[31] LAC-CI:23-5 LAC-CI:42-6 don't match exactly
|
|
[32] LAC-CI:23-5 LAI:023-042-23 MATCH
|
|
[32] LAC-CI:23-5 LAI:023-042-23 don't match exactly
|
|
[33] LAC-CI:23-5 LAI:023-042-42 don't match
|
|
[33] LAC-CI:23-5 LAI:023-042-42 don't match exactly
|
|
[34] LAC-CI:23-5 LAI:023-99-23 MATCH
|
|
[34] LAC-CI:23-5 LAI:023-99-23 don't match exactly
|
|
[35] LAC-CI:23-5 LAI:023-42-23 MATCH
|
|
[35] LAC-CI:23-5 LAI:023-42-23 don't match exactly
|
|
[36] LAC-CI:23-5 CGI:023-042-23-5 MATCH
|
|
[36] LAC-CI:23-5 CGI:023-042-23-5 don't match exactly
|
|
[37] LAC-CI:23-5 CGI:023-042-42-6 don't match
|
|
[37] LAC-CI:23-5 CGI:023-042-42-6 don't match exactly
|
|
[38] LAC-CI:23-5 CGI:023-99-23-5 MATCH
|
|
[38] LAC-CI:23-5 CGI:023-99-23-5 don't match exactly
|
|
[39] LAI:023-042-23 LAC:23 MATCH
|
|
[39] LAI:023-042-23 LAC:23 don't match exactly
|
|
[40] LAI:023-042-23 LAC:42 don't match
|
|
[40] LAI:023-042-23 LAC:42 don't match exactly
|
|
[41] LAI:023-042-23 CI:5 MATCH
|
|
[41] LAI:023-042-23 CI:5 don't match exactly
|
|
[42] LAI:023-042-23 CI:6 MATCH
|
|
[42] LAI:023-042-23 CI:6 don't match exactly
|
|
[43] LAI:023-042-23 LAC-CI:23-5 MATCH
|
|
[43] LAI:023-042-23 LAC-CI:23-5 don't match exactly
|
|
[44] LAI:023-042-23 LAC-CI:42-6 don't match
|
|
[44] LAI:023-042-23 LAC-CI:42-6 don't match exactly
|
|
[45] LAI:023-042-23 LAI:023-042-23 MATCH
|
|
[45] LAI:023-042-23 LAI:023-042-23 MATCH exactly
|
|
[46] LAI:023-042-23 LAI:023-042-42 don't match
|
|
[46] LAI:023-042-23 LAI:023-042-42 don't match exactly
|
|
[47] LAI:023-042-23 LAI:023-99-23 don't match
|
|
[47] LAI:023-042-23 LAI:023-99-23 don't match exactly
|
|
[48] LAI:023-042-23 LAI:023-42-23 don't match
|
|
[48] LAI:023-042-23 LAI:023-42-23 don't match exactly
|
|
[49] LAI:023-042-23 CGI:023-042-23-5 MATCH
|
|
[49] LAI:023-042-23 CGI:023-042-23-5 don't match exactly
|
|
[50] LAI:023-042-23 CGI:023-042-42-6 don't match
|
|
[50] LAI:023-042-23 CGI:023-042-42-6 don't match exactly
|
|
[51] LAI:023-042-23 CGI:023-99-23-5 don't match
|
|
[51] LAI:023-042-23 CGI:023-99-23-5 don't match exactly
|
|
[52] CGI:023-042-23-5 LAC:23 MATCH
|
|
[52] CGI:023-042-23-5 LAC:23 don't match exactly
|
|
[53] CGI:023-042-23-5 LAC:42 don't match
|
|
[53] CGI:023-042-23-5 LAC:42 don't match exactly
|
|
[54] CGI:023-042-23-5 CI:5 MATCH
|
|
[54] CGI:023-042-23-5 CI:5 don't match exactly
|
|
[55] CGI:023-042-23-5 CI:6 don't match
|
|
[55] CGI:023-042-23-5 CI:6 don't match exactly
|
|
[56] CGI:023-042-23-5 LAC-CI:23-5 MATCH
|
|
[56] CGI:023-042-23-5 LAC-CI:23-5 don't match exactly
|
|
[57] CGI:023-042-23-5 LAC-CI:42-6 don't match
|
|
[57] CGI:023-042-23-5 LAC-CI:42-6 don't match exactly
|
|
[58] CGI:023-042-23-5 LAI:023-042-23 MATCH
|
|
[58] CGI:023-042-23-5 LAI:023-042-23 don't match exactly
|
|
[59] CGI:023-042-23-5 LAI:023-042-42 don't match
|
|
[59] CGI:023-042-23-5 LAI:023-042-42 don't match exactly
|
|
[60] CGI:023-042-23-5 LAI:023-99-23 don't match
|
|
[60] CGI:023-042-23-5 LAI:023-99-23 don't match exactly
|
|
[61] CGI:023-042-23-5 LAI:023-42-23 don't match
|
|
[61] CGI:023-042-23-5 LAI:023-42-23 don't match exactly
|
|
[62] CGI:023-042-23-5 CGI:023-042-23-5 MATCH
|
|
[62] CGI:023-042-23-5 CGI:023-042-23-5 MATCH exactly
|
|
[63] CGI:023-042-23-5 CGI:023-042-42-6 don't match
|
|
[63] CGI:023-042-23-5 CGI:023-042-42-6 don't match exactly
|
|
[64] CGI:023-042-23-5 CGI:023-99-23-5 don't match
|
|
[64] CGI:023-042-23-5 CGI:023-99-23-5 don't match exactly
|
|
|
|
test_cell_id_list_matching(test match)
|
|
LAC:23 and LAC[2]:{42, 23}: MATCH at [1]
|
|
LAC:23 and CI[2]:{5, 6}: MATCH at [0]
|
|
LAC:23 and LAC-CI[2]:{42-6, 23-5}: MATCH at [1]
|
|
LAC:23 and LAI[4]:{023-042-42, 023-042-23, 023-99-23, 023-42-23}: MATCH at [1]
|
|
LAC:23 and CGI[3]:{023-042-42-6, 023-042-23-5, 023-99-23-5}: MATCH at [1]
|
|
CI:5 and LAC[2]:{23, 42}: MATCH at [0]
|
|
CI:5 and CI[2]:{6, 5}: MATCH at [1]
|
|
CI:5 and LAC-CI[2]:{42-6, 23-5}: MATCH at [1]
|
|
CI:5 and LAI[4]:{023-042-23, 023-042-42, 023-99-23, 023-42-23}: MATCH at [0]
|
|
CI:5 and CGI[3]:{023-042-42-6, 023-042-23-5, 023-99-23-5}: MATCH at [1]
|
|
LAC-CI:23-5 and LAC[2]:{42, 23}: MATCH at [1]
|
|
LAC-CI:23-5 and CI[2]:{6, 5}: MATCH at [1]
|
|
LAC-CI:23-5 and LAC-CI[2]:{42-6, 23-5}: MATCH at [1]
|
|
LAC-CI:23-5 and LAI[4]:{023-042-42, 023-042-23, 023-99-23, 023-42-23}: MATCH at [1]
|
|
LAC-CI:23-5 and CGI[3]:{023-042-42-6, 023-042-23-5, 023-99-23-5}: MATCH at [1]
|
|
LAI:023-042-23 and LAC[2]:{42, 23}: MATCH at [1]
|
|
LAI:023-042-23 and CI[2]:{5, 6}: MATCH at [0]
|
|
LAI:023-042-23 and LAC-CI[2]:{42-6, 23-5}: MATCH at [1]
|
|
LAI:023-042-23 and LAI[4]:{023-042-42, 023-99-23, 023-42-23, 023-042-23}: MATCH at [3]
|
|
LAI:023-042-23 and CGI[3]:{023-042-42-6, 023-99-23-5, 023-042-23-5}: MATCH at [2]
|
|
CGI:023-042-23-5 and LAC[2]:{42, 23}: MATCH at [1]
|
|
CGI:023-042-23-5 and CI[2]:{6, 5}: MATCH at [1]
|
|
CGI:023-042-23-5 and LAC-CI[2]:{42-6, 23-5}: MATCH at [1]
|
|
CGI:023-042-23-5 and LAI[4]:{023-042-42, 023-99-23, 023-42-23, 023-042-23}: MATCH at [3]
|
|
CGI:023-042-23-5 and CGI[3]:{023-042-42-6, 023-99-23-5, 023-042-23-5}: MATCH at [2]
|
|
|
|
test_cell_id_list_matching(test mismatch)
|
|
LAC:23 and LAC[1]:{42}: mismatch
|
|
LAC:23 vs. CI: No match_id entries to test mismatch
|
|
LAC:23 and LAC-CI[1]:{42-6}: mismatch
|
|
LAC:23 and LAI[1]:{023-042-42}: mismatch
|
|
LAC:23 and CGI[1]:{023-042-42-6}: mismatch
|
|
CI:5 vs. LAC: No match_id entries to test mismatch
|
|
CI:5 and CI[1]:{6}: mismatch
|
|
CI:5 and LAC-CI[1]:{42-6}: mismatch
|
|
CI:5 vs. LAI: No match_id entries to test mismatch
|
|
CI:5 and CGI[1]:{023-042-42-6}: mismatch
|
|
LAC-CI:23-5 and LAC[1]:{42}: mismatch
|
|
LAC-CI:23-5 and CI[1]:{6}: mismatch
|
|
LAC-CI:23-5 and LAC-CI[1]:{42-6}: mismatch
|
|
LAC-CI:23-5 and LAI[1]:{023-042-42}: mismatch
|
|
LAC-CI:23-5 and CGI[1]:{023-042-42-6}: mismatch
|
|
LAI:023-042-23 and LAC[1]:{42}: mismatch
|
|
LAI:023-042-23 vs. CI: No match_id entries to test mismatch
|
|
LAI:023-042-23 and LAC-CI[1]:{42-6}: mismatch
|
|
LAI:023-042-23 and LAI[3]:{023-042-42, 023-99-23, 023-42-23}: mismatch
|
|
LAI:023-042-23 and CGI[2]:{023-042-42-6, 023-99-23-5}: mismatch
|
|
CGI:023-042-23-5 and LAC[1]:{42}: mismatch
|
|
CGI:023-042-23-5 and CI[1]:{6}: mismatch
|
|
CGI:023-042-23-5 and LAC-CI[1]:{42-6}: mismatch
|
|
CGI:023-042-23-5 and LAI[3]:{023-042-42, 023-99-23, 023-42-23}: mismatch
|
|
CGI:023-042-23-5 and CGI[2]:{023-042-42-6, 023-99-23-5}: mismatch
|
|
|
|
test_gsm0808_cell_id_to_from_cgi()
|
|
cid LAC:23 -> cgi 777-007-23-7777 LAC -> cid LAC:23
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-23
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-23-7777
|
|
cid LAC:42 -> cgi 777-007-42-7777 LAC -> cid LAC:42
|
|
--> gsm0808_cell_id{LAC} = LAC:42
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:42-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-42
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-42-7777
|
|
cid CI:5 -> cgi 777-007-7777-5 CI -> cid CI:5
|
|
--> gsm0808_cell_id{LAC} = LAC:7777
|
|
--> gsm0808_cell_id{CI} = CI:5
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:7777-5
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-7777
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-7777-5
|
|
cid CI:6 -> cgi 777-007-7777-6 CI -> cid CI:6
|
|
--> gsm0808_cell_id{LAC} = LAC:7777
|
|
--> gsm0808_cell_id{CI} = CI:6
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:7777-6
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-7777
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-7777-6
|
|
cid LAC-CI:23-5 -> cgi 777-007-23-5 LAC CI -> cid LAC-CI:23-5
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:5
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-5
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-23
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-23-5
|
|
cid LAC-CI:42-6 -> cgi 777-007-42-6 LAC CI -> cid LAC-CI:42-6
|
|
--> gsm0808_cell_id{LAC} = LAC:42
|
|
--> gsm0808_cell_id{CI} = CI:6
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:42-6
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-42
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-42-6
|
|
cid LAI:023-042-23 -> cgi 023-042-23-7777 PLMN LAC -> cid LAI:023-042-23
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:023-042-23
|
|
--> gsm0808_cell_id{CGI} = CGI:023-042-23-7777
|
|
cid LAI:023-042-42 -> cgi 023-042-42-7777 PLMN LAC -> cid LAI:023-042-42
|
|
--> gsm0808_cell_id{LAC} = LAC:42
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:42-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:023-042-42
|
|
--> gsm0808_cell_id{CGI} = CGI:023-042-42-7777
|
|
cid LAI:023-99-23 -> cgi 023-99-23-7777 PLMN LAC -> cid LAI:023-99-23
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:023-99-23
|
|
--> gsm0808_cell_id{CGI} = CGI:023-99-23-7777
|
|
cid LAI:023-42-23 -> cgi 023-42-23-7777 PLMN LAC -> cid LAI:023-42-23
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:023-42-23
|
|
--> gsm0808_cell_id{CGI} = CGI:023-42-23-7777
|
|
cid CGI:023-042-23-5 -> cgi 023-042-23-5 PLMN LAC CI -> cid CGI:023-042-23-5
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:5
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-5
|
|
--> gsm0808_cell_id{LAI} = LAI:023-042-23
|
|
--> gsm0808_cell_id{CGI} = CGI:023-042-23-5
|
|
cid CGI:023-042-42-6 -> cgi 023-042-42-6 PLMN LAC CI -> cid CGI:023-042-42-6
|
|
--> gsm0808_cell_id{LAC} = LAC:42
|
|
--> gsm0808_cell_id{CI} = CI:6
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:42-6
|
|
--> gsm0808_cell_id{LAI} = LAI:023-042-42
|
|
--> gsm0808_cell_id{CGI} = CGI:023-042-42-6
|
|
cid CGI:023-99-23-5 -> cgi 023-99-23-5 PLMN LAC CI -> cid CGI:023-99-23-5
|
|
--> gsm0808_cell_id{LAC} = LAC:23
|
|
--> gsm0808_cell_id{CI} = CI:5
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:23-5
|
|
--> gsm0808_cell_id{LAI} = LAI:023-99-23
|
|
--> gsm0808_cell_id{CGI} = CGI:023-99-23-5
|
|
cid NO-CELL:NO-CELL -> cgi 777-007-7777-7777 -> cid NO-CELL:NO-CELL
|
|
--> gsm0808_cell_id{LAC} = LAC:7777
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:7777-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-7777
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-7777-7777
|
|
cid unknown 0x1a7:unknown 0x1a7 -> cgi 777-007-7777-7777 -> cid unknown 0x1a7:unknown 0x1a7
|
|
--> gsm0808_cell_id{LAC} = LAC:7777
|
|
--> gsm0808_cell_id{CI} = CI:7777
|
|
--> gsm0808_cell_id{LAC-CI} = LAC-CI:7777-7777
|
|
--> gsm0808_cell_id{LAI} = LAI:777-007-7777
|
|
--> gsm0808_cell_id{CGI} = CGI:777-007-7777-7777
|
|
Done
|