def METHOD_NAME(
    mocked_revoke_plugin,
    mocked_provision_plugin,
    mocked_sync_organization,
    mocked_grafana_api_client,
    make_self_hosted_install_header,
    make_organization,
):
    organization = make_organization(stack_id=STACK_ID, org_id=ORG_ID)
    provision_plugin_response = {"stackId": STACK_ID, "orgId": ORG_ID, "onCallToken": "HELLOOO", "license": LICENSE}
    mocked_provision_plugin.return_value = provision_plugin_response
    mocked_grafana_api_client.return_value.check_token.return_value = (None, {"status_code": status.HTTP_200_OK})
    mocked_grafana_api_client.return_value.is_rbac_enabled_for_organization.return_value = True
    client = APIClient()
    url = reverse("grafana-plugin:self-hosted-install")
    response = client.post(url, format="json", **make_self_hosted_install_header(GRAFANA_TOKEN))
    assert mocked_grafana_api_client.called_once_with(api_url=GRAFANA_API_URL, api_token=GRAFANA_TOKEN)
    assert mocked_grafana_api_client.return_value.check_token.called_once_with()
    assert mocked_grafana_api_client.return_value.is_rbac_enabled_for_organization.called_once_with()
    assert mocked_sync_organization.called_once_with(organization)
    assert mocked_provision_plugin.called_once_with()
    assert mocked_revoke_plugin.called_once_with()
    assert response.status_code == status.HTTP_201_CREATED
    assert response.data == {"error": None, **provision_plugin_response}
    organization.refresh_from_db()
    assert organization.grafana_url == GRAFANA_API_URL
    assert organization.api_token == GRAFANA_TOKEN
    assert organization.is_rbac_permissions_enabled is True