Skip to content

Commit

Permalink
metabase.companies: Add the convergence_france field
Browse files Browse the repository at this point in the history
  • Loading branch information
rsebille committed Jul 31, 2024
1 parent e8f502a commit 763bd26
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 1 deletion.
9 changes: 9 additions & 0 deletions itou/metabase/tables/companies.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
from django.conf import settings

from itou.companies.enums import CompanyKind
from itou.companies.models import Company
from itou.metabase.tables.utils import (
MetabaseTable,
Expand Down Expand Up @@ -52,6 +55,12 @@ def get_field(name):
get_column_from_field(get_field("naf"), name="code_naf"),
get_column_from_field(get_field("email"), name="email_public"),
get_column_from_field(get_field("auth_email"), name="email_authentification"),
{
"name": "convergence_france",
"type": "boolean",
"comment": "Convergence France (contrats PHC et CVG)",
"fn": lambda o: o.kind == CompanyKind.ACI and o.siret in settings.ACI_CONVERGENCE_SIRET_WHITELIST,
},
]
)

Expand Down
23 changes: 22 additions & 1 deletion tests/metabase/management/test_populate_metabase_emplois.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

from itou.approvals.enums import Origin
from itou.common_apps.address.departments import DEPARTMENTS
from itou.companies.enums import ContractType
from itou.companies.enums import CompanyKind, ContractType
from itou.companies.models import JobDescription
from itou.eligibility.models import AdministrativeCriteria
from itou.geo.utils import coords_to_geometry
Expand Down Expand Up @@ -1168,6 +1168,7 @@ def test_populate_companies():
"1071A",
"contact@garaje_el_martinet.es",
"secret.ceo@garaje_el_martinet.es",
False,
# Address columns " de la structure mère"
"112 rue de la Croix-Nivert",
"",
Expand Down Expand Up @@ -1212,6 +1213,26 @@ def test_populate_companies():
]


@pytest.mark.django_db(transaction=True)
@pytest.mark.usefixtures("metabase")
def test_populate_companies_convergence(settings):
convergence_company = CompanyFactory(
kind=CompanyKind.ACI,
)
settings.ACI_CONVERGENCE_SIRET_WHITELIST = [convergence_company.siret]
aci_non_convergence_company = CompanyFactory(kind=CompanyKind.ACI)
non_convergence_company = CompanyFactory()

management.call_command("populate_metabase_emplois", mode="siaes")
with connection.cursor() as cursor:
cursor.execute("SELECT siret, convergence_france FROM structures_v0 ORDER BY id")
assert cursor.fetchall() == [
(convergence_company.siret, True),
(aci_non_convergence_company.siret, False),
(non_convergence_company.siret, False),
]


@freeze_time("2023-02-02")
@pytest.mark.django_db(transaction=True)
@pytest.mark.usefixtures("metabase")
Expand Down

0 comments on commit 763bd26

Please sign in to comment.