def test_rrcConnectionEstablishedButSubsequentSetupsIgnored(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage( "ue", *randomAccessResponse(self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(0.2) # smaller than 0.5 interface, channelInfo, message = contentionResolutionIdentity( temporaryCrnti, self.procedure.rrcConnectionRequestMessage) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.5) # less than 2.0 rrcTransactionIdentifier = 4 interface, channelInfo, message = rrcConnectionSetup( temporaryCrnti, rrcTransactionIdentifier) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.5) self.assertEqual(self.result, RrcConnectionEstablishmentProcedure.Success) self.result = None self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.2) self.assertEqual(self.result, None) self.procedure.terminate()
def test_noContentionResolutionIdentityReceived(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage("ue", *randomAccessResponse( self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(2.0) # greater than 0.5 self.assertEqual(self.result, RrcConnectionEstablishmentProcedure.ErrorNoContentionResolutionIdentity) self.procedure.terminate()
def test_noContentionResolutionIdentityReceived(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage( "ue", *randomAccessResponse(self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(2.0) # greater than 0.5 self.assertEqual( self.result, RrcConnectionEstablishmentProcedure. ErrorNoContentionResolutionIdentity) self.procedure.terminate()
def test_noRrcConnectionSetupReceived(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage("ue", *randomAccessResponse( self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(0.2) # smaller than 0.5 interface, channelInfo, message = contentionResolutionIdentity( temporaryCrnti, self.procedure.rrcConnectionRequestMessage) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(2.5) # greater than 2.0 self.assertEqual(self.result, RrcConnectionEstablishmentProcedure.ErrorNoRrcConnectionSetup) self.procedure.terminate()
def test_noRrcConnectionSetupReceived(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage( "ue", *randomAccessResponse(self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(0.2) # smaller than 0.5 interface, channelInfo, message = contentionResolutionIdentity( temporaryCrnti, self.procedure.rrcConnectionRequestMessage) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(2.5) # greater than 2.0 self.assertEqual( self.result, RrcConnectionEstablishmentProcedure.ErrorNoRrcConnectionSetup) self.procedure.terminate()
def test_rrcConnectionEstablishedButSubsequentSetupsIgnored(self): self.result = None self.procedure.execute() time.sleep(0.4) # smaller than 0.7 temporaryCrnti = 43 uplinkGrant = 12 self.enbIoService.sendMessage("ue", *randomAccessResponse( self.procedure.raRnti, self.procedure.rapid, temporaryCrnti, uplinkGrant)) time.sleep(0.2) # smaller than 0.5 interface, channelInfo, message = contentionResolutionIdentity( temporaryCrnti, self.procedure.rrcConnectionRequestMessage) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.5) # less than 2.0 rrcTransactionIdentifier = 4 interface, channelInfo, message = rrcConnectionSetup(temporaryCrnti, rrcTransactionIdentifier) self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.5) self.assertEqual(self.result, RrcConnectionEstablishmentProcedure.Success) self.result = None self.enbIoService.sendMessage("ue", interface, channelInfo, message) time.sleep(0.2) self.assertEqual(self.result, None) self.procedure.terminate()
def __sendRandomAccessResponse__(self, destination, raRnti, rapid, temporaryCrnti, uplinkGrant): self.ioService.sendMessage(destination, *randomAccessResponse( raRnti, rapid, temporaryCrnti, uplinkGrant))