def test_not_registered_and_not_searching(self): """ Test when we are not registered and the SIM doesn't tries to register """ pattern = { # our IMSI is a vodafone one 'get_imsi' : '21401122121212', # first time we're connected it will return we're connected to # Amena 'get_network_info' : (21403, "3G"), # second time we're connected it will say we're connected to # vodafone 'get_network_info2' : (21401, "3G"), 'get_netreg_status' : DeferredNotification( (0, 0), NetworkRegNotification(1), delay=1), 'set_netreg_notification' : 'OK', 'set_charset' : 'OK', 'set_charset2' : 'OK', 'set_network_info_format' : 'OK', # Vodafone, Amena and Telefónica are around 'get_network_names' : [BasicNetworkOperator(21403), BasicNetworkOperator(21401), BasicNetworkOperator(21407)], # register with network succeeds 'register_with_network' : 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) device.set_sm(sm) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, (21401, "3G"))) return d
def test_sim_insists_on_replying_in_alphanumeric_format(self): """ Test when the SIM insists on replying in alphanumeric format Affected devices: Option Nozomi. """ pattern = { 'get_imsi': '21401122121212', 'get_imsi2': '21401122121212', 'get_netreg_status': (0, 1), 'get_network_info': ("Vodafone ES", "3G"), 'set_network_info_format': 'OK', 'set_charset': 'OK', 'set_charset2': 'OK', 'set_network_info_format': 'OK', # register with network succeeds 'register_with_network': 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, ("Vodafone ES", "3G"))) return d
def test_connected_to_other_operator_abroad(self): """ Test when we are connected to other operator abroad and our operator list is available """ raise unittest.SkipTest("Not Ready") pattern = { # our IMSI is a vodafone one 'get_imsi': '21401122121212', # first time we're connected it will return we're connected to # TIM BRAZIL 'get_network_info': (72403, "GPRS"), 'get_netreg_status': (0, 0), # second time we're connected it will say we're connected to # Claro 'get_network_info2': (72405, "GPRS"), 'set_charset': 'OK', 'set_charset2': 'OK', 'set_network_info_format': 'OK', 'set_netreg_notification': 'OK', # TIM Brazil and Claro are around 'get_network_names': [BasicNetworkOperator(72403), BasicNetworkOperator(72405)], # AT+CPOL response, we've got agreements with Claro Brazil # and some other networks 'get_roaming_ids': [ BasicNetworkOperator(12367), BasicNetworkOperator(33412), BasicNetworkOperator(55673), BasicNetworkOperator(72405), # Claro BasicNetworkOperator(74201), ], # register with network succeeds 'register_with_network': 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() # assert we're connected to Claro GPRS d.addCallback(lambda resp: self.assertEqual(resp, (72405, "GPRS"))) return d
def test_already_connected(self): """ Test when we are already connected to our operator """ pattern = { 'get_imsi' : '21401122121212', 'get_netreg_status' : (0, 1), 'get_network_info' : (21401, "3G"), 'set_charset' : 'OK', 'set_charset2' : 'OK', 'set_network_info_format' : 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, (21401, "3G"))) return d
def test_already_connected(self): """ Test when we are already connected to our operator """ pattern = { 'get_imsi': '21401122121212', 'get_netreg_status': (0, 1), 'get_network_info': (21401, "3G"), 'set_charset': 'OK', 'set_charset2': 'OK', 'set_network_info_format': 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, (21401, "3G"))) return d
def test_not_registered_and_not_searching(self): """ Test when we are not registered and the SIM doesn't tries to register """ pattern = { # our IMSI is a vodafone one 'get_imsi': '21401122121212', # first time we're connected it will return we're connected to # Amena 'get_network_info': (21403, "3G"), # second time we're connected it will say we're connected to # vodafone 'get_network_info2': (21401, "3G"), 'get_netreg_status': DeferredNotification((0, 0), NetworkRegNotification(1), delay=1), 'set_netreg_notification': 'OK', 'set_charset': 'OK', 'set_charset2': 'OK', 'set_network_info_format': 'OK', # Vodafone, Amena and Telefónica are around 'get_network_names': [ BasicNetworkOperator(21403), BasicNetworkOperator(21401), BasicNetworkOperator(21407) ], # register with network succeeds 'register_with_network': 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) device.set_sm(sm) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, (21401, "3G"))) return d
def test_connected_to_other_operator_abroad(self): """ Test when we are connected to other operator abroad and our operator list is available """ raise unittest.SkipTest("Not Ready") pattern = { # our IMSI is a vodafone one 'get_imsi' : '21401122121212', # first time we're connected it will return we're connected to # TIM BRAZIL 'get_network_info' : (72403, "GPRS"), 'get_netreg_status' : (0, 0), # second time we're connected it will say we're connected to # Claro 'get_network_info2' : (72405, "GPRS"), 'set_charset' : 'OK', 'set_charset2' : 'OK', 'set_network_info_format' : 'OK', 'set_netreg_notification' : 'OK', # TIM Brazil and Claro are around 'get_network_names' : [BasicNetworkOperator(72403), BasicNetworkOperator(72405)], # AT+CPOL response, we've got agreements with Claro Brazil # and some other networks 'get_roaming_ids' : [BasicNetworkOperator(12367), BasicNetworkOperator(33412), BasicNetworkOperator(55673), BasicNetworkOperator(72405), # Claro BasicNetworkOperator(74201),], # register with network succeeds 'register_with_network' : 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() # assert we're connected to Claro GPRS d.addCallback(lambda resp: self.assertEqual(resp, (72405, "GPRS"))) return d
def test_sim_insists_on_replying_in_alphanumeric_format(self): """ Test when the SIM insists on replying in alphanumeric format Affected devices: Option Nozomi. """ pattern = { 'get_imsi' : '21401122121212', 'get_imsi2' : '21401122121212', 'get_netreg_status' : (0, 1), 'get_network_info' : ("Vodafone ES", "3G"), 'set_network_info_format': 'OK', 'set_charset' : 'OK', 'set_charset2' : 'OK', 'set_network_info_format' : 'OK', # register with network succeeds 'register_with_network' : 'OK', } device = DeviceStub(pattern) sm = NetworkRegStateMachine(device) d = sm.start_netreg() d.addCallback(lambda resp: self.assertEqual(resp, ("Vodafone ES", "3G"))) return d