--- test_enc_zero_len ---
Application Information Request with zero length received!

--- test_enc ---
exp: 03 fc 03 fc 00 00 00 00 00 00 00 00 00 00 00 00 
msg: 03 fc 03 fc 00 00 00 00 00 00 00 00 00 00 00 00 

--- test_pcu_rx_no_subscr_with_active_tbf ---
Application Information Request received: type=0x00000000 len=0
Packet Application Information will not be sent, no subscribers with active TBF

--- prepare_bts_with_two_dl_tbf_subscr ---
PDCH(bts=0,trx=0,ts=4) PDCH state: disabled => enabled
PDCH(bts=0,trx=0,ts=5) PDCH state: disabled => enabled
PDCH(bts=0,trx=0,ts=6) PDCH state: disabled => enabled
PDCH(bts=0,trx=0,ts=7) PDCH state: disabled => enabled
Creating MS object, TLLI = 0xffffffff
Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 10
Modifying MS object, TLLI = 0xffffffff, EGPRS MS class 0 -> 11
MS(TA-220:MSCLS-10-11) Enabled EGPRS, mode EGPRS
[DL] algo B <multi> (suggested TRX: 0): using 4 slots
PDCH(bts=0,trx=0,ts=4) Attaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000001.
PDCH(bts=0,trx=0,ts=5) Attaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000001.
PDCH(bts=0,trx=0,ts=6) Attaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000001.
PDCH(bts=0,trx=0,ts=7) Attaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000001.
MS(TA-220:MSCLS-10-11) Attaching DL TBF: TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS)
ws(64)
Creating MS object, TLLI = 0xffffffff
Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 12
Modifying MS object, TLLI = 0xffffffff, EGPRS MS class 0 -> 13
MS(TA-220:MSCLS-12-13) Enabled EGPRS, mode EGPRS
[DL] algo B <multi> (suggested TRX: 0): using 3 slots
PDCH(bts=0,trx=0,ts=4) Attaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
PDCH(bts=0,trx=0,ts=5) Attaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
PDCH(bts=0,trx=0,ts=6) Attaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
MS(TA-220:MSCLS-12-13) Attaching DL TBF: TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS)
ws(64)

--- test_sched_app_info_ok ---
Application Information Request received: type=0x00000000 len=15
Sending Packet Application Information to 2 subscribers with active TBF
Sending Packet Application Information message
Sending Packet Application Information message
Packet Application Information successfully sent to all MS with active TBF

--- test_sched_app_info_missing_app_info_in_bts ---
Application Information Request received: type=0x00000000 len=15
Sending Packet Application Information to 2 subscribers with active TBF
MS has app_info_pending flag set, but no Packet Application Information message stored in BTS!

--- test_pcu_rx_overwrite_app_info ---
Application Information Request received: type=0x00000000 len=15
Sending Packet Application Information to 2 subscribers with active TBF
Application Information Request received: type=0x00000000 len=15
Previous Packet Application Information was not sent to all subscribers, overwriting with new one
Sending Packet Application Information to 2 subscribers with active TBF

--- cleanup ---
PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
PDCH(bts=0,trx=0,ts=5) Detaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
PDCH(bts=0,trx=0,ts=6) Detaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 2 TBFs, USFs = 00, TFIs = 00000003.
PDCH(bts=0,trx=0,ts=7) Detaching TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000001.
MS(TA-220:MSCLS-10-11) Detaching TBF: TBF(DL:TFI-0-0-0:STATE-NEW:EGPRS)
PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000002.
PDCH(bts=0,trx=0,ts=5) Detaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000002.
PDCH(bts=0,trx=0,ts=6) Detaching TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS), 1 TBFs, USFs = 00, TFIs = 00000002.
MS(TA-220:MSCLS-12-13) Detaching TBF: TBF(DL:TFI-0-0-1:STATE-NEW:EGPRS)
MS(TA-220:MSCLS-12-13) Destroying MS object
MS(TA-220:MSCLS-10-11) Destroying MS object
