def METHOD_NAME(
    auth_client,
    is_employed,
    is_customer_assignee,
    is_customer,
    expected,
    status_code,
    django_assert_num_queries,
):
    user = auth_client.user
    setup_customer_and_employment_status(
        user=user,
        is_assignee=is_customer_assignee,
        is_customer=is_customer,
        is_employed=is_employed,
        is_external=False,
    )
    report = ReportFactory.create(duration=timedelta(hours=1))
    project = report.task.project
    ReportFactory.create(duration=timedelta(hours=2), task=report.task)
    report2 = ReportFactory.create(duration=timedelta(hours=4))
    project_2 = report2.task.project
    task = TaskFactory(project=report.task.project)
    ReportFactory.create(duration=timedelta(hours=2), task=task)
    url = reverse("project-statistic-list")
    with django_assert_num_queries(expected):
        result = auth_client.get(
            url, data={"ordering": "duration", "include": "customer"}
        )
    assert result.status_code == status_code
    if status_code == status.HTTP_200_OK:
        json = result.json()
        expected_json = [
            {
                "type": "project-statistics",
                "id": str(report2.task.project.id),
                "attributes": {
                    "duration": "04:00:00",
                    "name": report2.task.project.name,
                    "amount-offered": str(project_2.amount_offered.amount),
                    "amount-offered-currency": project_2.amount_offered_currency,
                    "amount-invoiced": str(project_2.amount_invoiced.amount),
                    "amount-invoiced-currency": project_2.amount_invoiced_currency,
                    "estimated-time": "00:00:00",
                    "total-remaining-effort": "00:00:00",
                },
                "relationships": {
                    "customer": {
                        "data": {
                            "type": "customers",
                            "id": str(project_2.customer.id),
                        }
                    }
                },
            },
            {
                "type": "project-statistics",
                "id": str(report.task.project.id),
                "attributes": {
                    "duration": "05:00:00",
                    "name": report.task.project.name,
                    "amount-offered": str(project.amount_offered.amount),
                    "amount-offered-currency": project.amount_offered_currency,
                    "amount-invoiced": str(project.amount_invoiced.amount),
                    "amount-invoiced-currency": project.amount_invoiced_currency,
                    "estimated-time": "00:00:00",
                    "total-remaining-effort": "00:00:00",
                },
                "relationships": {
                    "customer": {
                        "data": {
                            "type": "customers",
                            "id": str(project.customer.id),
                        }
                    }
                },
            },
        ]
        assert json["data"] == expected_json
        assert json["meta"]["total-time"] == "09:00:00"