def test_get_connected(self): connection = Rest(device=self.device, alias='rest', via='rest') self.assertEqual(connection.connected, False) with patch('requests.Session') as req: resp = Response() resp.status_code = 200 req().post.return_value = resp req().get.return_value = resp connection.connect() resp.json = MagicMock(return_value={'imdata': []}) connection.get(dn='temp') connection.disconnect() self.assertEqual(connection.connected, False)
def test_get_connected_change_expected(self): connection = Rest(device=self.device, alias='rest', via='rest') self.assertEqual(connection.connected, False) with patch('requests.Session') as req: resp = Response() resp.status_code = 200 resp2 = Response() resp2.status_code = 300 req().get.side_effect = [resp, resp] connection.connect() resp.json = MagicMock(return_value={'imdata': []}) resp2.json = MagicMock(return_value={'imdata': []}) connection.get(dn='temp') self.assertEqual(connection.connected, True) connection.disconnect() self.assertEqual(connection.connected, False)
def test_get(self): self.mock_ics.return_value.post.return_value = FakeResponse() self.mock_ics.return_value.patch.return_value = FakeResponsePatch() self.mock_ics.return_value.delete.return_value = FakeResponseDelete() self.mock_ics.return_value.get.return_value = FakeResponseGet() connection = Rest(device=self.device, alias="rest", via="rest") connection.connect() result = connection.get("/mgmt/tm/ltm/global-settings") self.mock_ics.return_value.post.assert_called_once() self.mock_ics.return_value.get.assert_called_once() self.assertEqual(result, self.mock_ics.return_value.get.return_value)
def test_get_connected_wrong_status_change_expected(self): connection = Rest(device=self.device, alias='rest', via='rest') self.assertEqual(connection.connected, False) with patch('requests.Session') as req: resp = Response() resp.status_code = 200 resp2 = Response() resp2.status_code = 300 req().get.return_value = resp2 req().post.side_effect = [resp, resp, resp2] connection.connect() resp.json = MagicMock(return_value={'imdata': []}) resp2.json = MagicMock(return_value={'imdata': []}) with self.assertRaises(RequestException): connection.get(api_url='temp', expected_status_code=400) self.assertEqual(connection.connected, True) connection.disconnect() self.assertEqual(connection.connected, False)
def test_get_not_connected(self): connection = Rest(device=self.device, alias='rest', via='rest') with self.assertRaises(Exception): connection.get(dn='temp')