API-INSEE-Sirene
view release on metacpan or search on metacpan
t/API-INSEE-Sirene.t view on Meta::CPAN
$sirene->setDebugMode(1);
my @oks_request_GET = (
[ 'getLegalUnitBySIREN', '123456789' ],
[ 'getEstablishmentBySIRET', '12345678901234' ],
);
foreach (@oks_request_GET) {
my ($method, @args) = @{$_};
can_ok($sirene, $method);
my ($err, $request) = $sirene->$method(@args);
ok(0 == $err);
$request =~ s/^Sent request:\n//m;
my $r = HTTP::Request->parse($request);
ok($r->method eq 'GET');
ok($r->uri =~ qr{/sire[nt]/\d{9,14}\?});
}
my @oks_request_POST = (
[ 'getEstablishmentsByUsualName', 'foo' ],
[ 'getEstablishmentsByName', 'foo' ],
);
=for doc
# q=((denominationUsuelle1UniteLegale%3A%22foo%22~+OR+denominationUsuelle1UniteLegale%3A*foo*))&date=2021-02-02&nombre=20
# q=((denominationUniteLegale%3A%22foo%22~+OR+denominationUniteLegale%3A*foo*))&date=2021-02-02&nombre=20
=cut
foreach (@oks_request_POST) {
my ($method, @args) = @{$_};
can_ok($sirene, $method);
my ($err, $request) = $sirene->$method(@args);
ok(0 == $err);
$request =~ s/^Sent request:\n//m;
my $r = HTTP::Request->parse($request);
ok($r->method eq 'POST');
ok($r->uri =~ qr{/siret$});
my %param = ();
foreach my $param (split '&', $r->content) {
my ($key, $value) = split '=', $param;
$param{$key} = $value;
}
ok(exists $param{'q'} && exists $param{'date'} && exists $param{'nombre'});
}
plan tests => 1 + (scalar @oks_custom_criteria) + (4 * scalar @oks_request_GET) + (5 * scalar @oks_request_POST);
( run in 0.684 second using v1.01-cache-2.11-cpan-39bf76dae61 )