Пример #1
0
    def test_create_restore_session_with_device_guid_calls_post_with_device_guid_in_json(
            self, connection):
        storage_archive_service = StorageArchiveService(connection)

        storage_archive_service.create_restore_session(DEVICE_GUID)
        json_arg = connection.post.call_args[KWARGS_INDEX][JSON_KEYWORD]
        assert json_arg.get(COMPUTER_GUID_KEY) == DEVICE_GUID
Пример #2
0
    def test_create_restore_session_with_encryption_key_calls_post_with_encryption_key_in_json(
            self, connection):
        storage_archive_service = StorageArchiveService(connection)

        storage_archive_service.create_restore_session(
            DEVICE_GUID, encryption_key=ENCRYPTION_KEY)
        json_arg = connection.post.call_args[KWARGS_INDEX][JSON_KEYWORD]
        assert json_arg.get(ENCRYPTION_KEY_KEY) == ENCRYPTION_KEY
Пример #3
0
    def test_create_restore_session_with_private_password_calls_post_with_private_password_in_json(
            self, connection):
        storage_archive_service = StorageArchiveService(connection)

        storage_archive_service.create_restore_session(
            DEVICE_GUID, private_password=PRIVATE_PASSWORD)
        json_arg = connection.post.call_args[KWARGS_INDEX][JSON_KEYWORD]
        assert json_arg.get(PRIVATE_PASSWORD_KEY) == PRIVATE_PASSWORD
Пример #4
0
    def test_create_restore_session_with_data_key_token_calls_post_with_data_key_token_in_json(
            self, connection):
        storage_archive_service = StorageArchiveService(connection)

        storage_archive_service.create_restore_session(
            DEVICE_GUID, data_key_token=DATA_KEY_TOKEN)
        json_arg = connection.post.call_args[KWARGS_INDEX][JSON_KEYWORD]
        assert json_arg.get(DATA_KEY_TOKEN_KEY) == DATA_KEY_TOKEN
Пример #5
0
 def test_create_restore_session_calls_post_with_correct_url(
     self, mocker, connection
 ):
     storage_archive_service = StorageArchiveService(connection)
     storage_archive_service.create_restore_session(TEST_DEVICE_GUID)
     connection.post.assert_called_once_with(
         WEB_RESTORE_SESSION_URL, json=mocker.ANY
     )
Пример #6
0
    def test_create_restore_session_when_invalid_encryption_key_raises_expected_error(
            self, mocker, connection):
        def side_effect(*args, **kwargs):
            base_err = HTTPError()
            base_err.response = mocker.MagicMock(spec=Response)
            base_err.response.text = """
                [{"name":"CUSTOM_KEY_INVALID","description":"An error has
                occurred. See server logs for more information.","objects":[]}]
            """
            raise Py42InternalServerError(base_err)

        connection.post.side_effect = side_effect
        storage_archive_service = StorageArchiveService(connection)

        with pytest.raises(Py42InvalidArchiveEncryptionKey) as err:
            storage_archive_service.create_restore_session(
                TEST_DEVICE_GUID, encryption_key=TEST_ENCRYPTION_KEY)

        assert "Invalid archive encryption key." in str(err.value)
Пример #7
0
    def test_create_restore_session_when_invalid_password_raises_expected_error(
            self, mocker, connection):
        def side_effect(*args, **kwargs):
            base_err = HTTPError()
            base_err.response = mocker.MagicMock(spec=Response)
            base_err.response.text = """
                [{"name":"PRIVATE_PASSWORD_INVALID","description":"An error has
                occurred. See server logs for more information.","objects":[]}]
            """
            raise Py42InternalServerError(base_err)

        connection.post.side_effect = side_effect
        storage_archive_service = StorageArchiveService(connection)

        with pytest.raises(Py42InvalidArchivePassword) as err:
            storage_archive_service.create_restore_session(
                TEST_DEVICE_GUID, private_password=TEST_PASSWORD)

        assert "Invalid archive password." in str(err.value)