예제 #1
0
def create_driver():
    kwargs = ACCESS_INFO

    m = mock.MagicMock()
    with mock.patch.object(Session, 'post', return_value=m):
        m.raise_for_status.return_value = None
        m.json.return_value = {
            'data': {
                'deviceid': '123ABC456',
                'iBaseToken': 'FFFF0000',
                'accountstate': 1
            },
            'error': {
                'code': 0,
                'description': '0'
            }
        }
        return OceanStorDriver(**kwargs)
예제 #2
0
    def test_init(self):
        driver = create_driver()
        self.assertEqual(driver.storage_id, "12345")
        self.assertEqual(driver.sector_size, consts.SECTORS_SIZE)
        self.assertEqual(driver.client.device_id, '123ABC456')

        m = mock.MagicMock()
        with mock.patch.object(Session, 'post', return_value=m):
            m.raise_for_status.return_value = None
            m.json.return_value = {
                'data': {
                    'deviceid': '123ABC456',
                    'iBaseToken': 'FFFF0000',
                    'accountstate': 1
                },
                'error': {
                    'code': 123,
                    'description': '0'
                }
            }
            kwargs = ACCESS_INFO
            with self.assertRaises(Exception) as exc:
                OceanStorDriver(**kwargs)
            self.assertIn('The credentials are invalid', str(exc.exception))