コード例 #1
0
def test_siren_search_with_periodic_list():

    request = api.siren(q=Criteria.Periodic(
        Criteria.Field('activitePrincipaleUniteLegale', '84.23Z'),
        Criteria.Field('activitePrincipaleUniteLegale', '86.21Z')))

    assert request.url == base_siren_url + '/?q=periode(activitePrincipaleUniteLegale:84.23Z AND activitePrincipaleUniteLegale:86.21Z)'
コード例 #2
0
def test_siren_search_with_not_operator():

    request = api.siren(
        q=(-(-Criteria.Field('codeCommuneEtablissement', 92046)),
           -Criteria.Field('unitePurgeeUniteLegale', True)))

    assert request.url == base_siren_url + '/?q=codeCommuneEtablissement:92046 AND -unitePurgeeUniteLegale:True'
コード例 #3
0
def test_siren_search_with_operators():

    request = api.siren(q=Criteria.Field('codeCommuneEtablissement', 92046)
                        | Criteria.Field('unitePurgeeUniteLegale', True))

    assert (
        request.url == base_siren_url +
        '/?q=codeCommuneEtablissement:92046 OR unitePurgeeUniteLegale:True')
コード例 #4
0
def test_siren_search_with_periodic_list_and_operators_excluding():

    request = api.siren(
        q=Criteria.Periodic(
            Criteria.Field('activitePrincipaleUniteLegale', '84.23Z')
            | Criteria.Field('activitePrincipaleUniteLegale', '86.21Z'))
        & Criteria.PeriodicField('activitePrincipaleUniteLegale', '87.21Z'))

    assert request.url == base_siren_url + '/?q=periode(activitePrincipaleUniteLegale:84.23Z OR activitePrincipaleUniteLegale:86.21Z) AND periode(activitePrincipaleUniteLegale:87.21Z)'
コード例 #5
0
ファイル: test_siret.py プロジェクト: CamTosh/api_insee
def test_siret_search_with_2_criteria(execute_request):

    request = api.siret(
        q = (Criteria.Field('codeCommuneEtablissement', 92046),
        Criteria.Field('unitePurgeeUniteLegale', True))
    )

    assert request.url == base_siret_url + '?q=codeCommuneEtablissement:92046 AND unitePurgeeUniteLegale:True'

    execute_request(request)
コード例 #6
0
ファイル: test_siret.py プロジェクト: CamTosh/api_insee
def test_siret_search_with_periodic_list(execute_request):

    request = api.siret(
        q=Criteria.Periodic(
            Criteria.Field('activitePrincipaleEtablissement','84.23Z'),
            Criteria.Field('etatAdministratifEtablissement','A')
        )
    )
    assert request.url == base_siret_url + '?q=periode(activitePrincipaleEtablissement:84.23Z AND etatAdministratifEtablissement:A)'

    execute_request(request)
コード例 #7
0
def test_siret_search_with_2_criteria_and_date(api, execute_request):

    request = api.siret(
        q = (Criteria.Field('codeCommuneEtablissement', 92046),
        Criteria.Field('unitePurgeeUniteLegale', True)),
        date='2018-01-01'
    )

    assert request.url == base_siret_url + '?date=2018-01-01&q=codeCommuneEtablissement:92046 AND unitePurgeeUniteLegale:True'

    execute_request(request)
コード例 #8
0
ファイル: test_siret.py プロジェクト: CamTosh/api_insee
def test_siret_search_with_operators_or_and_parentheses(execute_request):

    request = api.siret(q=(
        (Criteria.Field('codeCommuneEtablissement', 92046) | Criteria.Field('unitePurgeeUniteLegale', True)) &
         Criteria.Field('codeCommuneEtablissement', 92046)
    ))

    assert (
        request.url == base_siret_url + '?q=codeCommuneEtablissement:92046 OR unitePurgeeUniteLegale:True AND codeCommuneEtablissement:92046'
    )

    execute_request(request)
コード例 #9
0
ファイル: test_siret.py プロジェクト: CamTosh/api_insee
def test_siret_search_with_periodic_list_and_operators_excluding(execute_request):

    request = api.siret(
        q= Criteria.Periodic(
            Criteria.Field('activitePrincipaleEtablissement','84.23Z') |
            Criteria.Field('activitePrincipaleEtablissement','86.21Z')
        ) &
        Criteria.PeriodicField('etatAdministratifEtablissement','A')
    )

    assert request.url == base_siret_url + '?q=periode(activitePrincipaleEtablissement:84.23Z OR activitePrincipaleEtablissement:86.21Z) AND periode(etatAdministratifEtablissement:A)'

    execute_request(request)
コード例 #10
0
ファイル: test_siret.py プロジェクト: CamTosh/api_insee
def test_siret_search_with_periodic_list_with_or(execute_request):

    request = api.siret(
        q=Criteria.Periodic(
            Criteria.Field('activitePrincipaleEtablissement','84.23Z'),
            Criteria.Field('activitePrincipaleEtablissement','86.21Z'),
            Criteria.Field('activitePrincipaleEtablissement','87.21Z'),
            operator = 'OR'
        )
    )

    assert request.url == base_siret_url + '?q=periode(activitePrincipaleEtablissement:84.23Z OR activitePrincipaleEtablissement:86.21Z OR activitePrincipaleEtablissement:87.21Z)'

    execute_request(request)
コード例 #11
0
ファイル: test_csv.py プロジェクト: CamTosh/api_insee
def test_request_format_csv_in_get_parameters(execute_request):

    request = api.siret(q=(Criteria.Field('codeCommuneEtablissement', 92046),
                           Criteria.Field('unitePurgeeUniteLegale', True)))
    data = request.get(format='csv')
    reader = csv.reader(data.split('\n'), delimiter=',')

    assert request.header['Accept'] == 'text/csv'

    lcount = 0
    for row in reader:
        assert 'siren' in row
        lcount += 1
        break
    assert lcount == 1
コード例 #12
0
def test_siren_search_by_field():

    criteria = Criteria.Field('unitePurgeeUniteLegale', True)
    request = api.siren(q=criteria)
    results = request.get()

    assert results['header']['statut'] == 200
    assert request.url == base_siren_url + '/?q=unitePurgeeUniteLegale:True'
コード例 #13
0
ファイル: request.py プロジェクト: yperteam/api_insee
    def set_url_params(self, name, value):

        if isinstance(value, dict):
            criteria = Criteria.List(
                *
                [Criteria.Field(key, value)
                 for (key, value) in value.items()]).toURLParams()

        elif isinstance(value, list) or \
             isinstance(value, tuple):
            criteria = Criteria.List(*value).toURLParams()

        elif isinstance(value, str) or \
             isinstance(value, int) or \
             isinstance(value, float):
            criteria = Criteria.Raw(str(value)).toURLParams()

        elif isinstance(value, Criteria.Base):
            criteria = value.toURLParams()

        else:
            raise Exception

        self._url_params[name] = criteria
コード例 #14
0
ファイル: request.py プロジェクト: yperteam/api_insee
 def init_criteria_from_dictionnary(self, dictionnary):
     self.criteria = Criteria.List(*[
         Criteria.Field(key, value) for (key, value) in dictionnary.items()
     ])