def METHOD_NAME(
    self, service_account_get, post, app_spec, owner_references, deployer, default_sa_exists, image_pull_secrets
):
    default_sa_name = "default"
    default_service_account = ServiceAccount(
        metadata=ObjectMeta(name=default_sa_name),
        imagePullSecrets=image_pull_secrets,
    )
    def get_default_or_notfound(name, namespace):
        if name == default_sa_name and default_sa_exists:
            return default_service_account
        else:
            raise NotFound
    service_account_get.side_effect = get_default_or_notfound
    expected_service_account = {
        "metadata": pytest.helpers.create_metadata("testapp", labels=LABELS),
        "secrets": [],
        "imagePullSecrets": image_pull_secrets,
    }
    mock_response = create_autospec(Response)
    mock_response.json.return_value = expected_service_account
    post.return_value = mock_response
    deployer.deploy(app_spec, LABELS)
    pytest.helpers.assert_any_call(post, SERVICE_ACCOUNT_URI, expected_service_account)
    owner_references.apply.assert_called_once_with(TypeMatcher(ServiceAccount), app_spec)