Bug 25327: Do not call authenticate_api_request to render the spec
authorTomas Cohen Arazi <tomascohen@theke.io>
Mon, 4 May 2020 18:43:18 +0000 (15:43 -0300)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Mon, 11 May 2020 09:02:29 +0000 (10:02 +0100)
commitd7168b02bd9373f40882f8b181e1f43cd8b6d39e
treef0afeb91e745172c9849cee21745b58dd754f713
parent20d493090ac86a41b2add16625ae8aa88c450f44
Bug 25327: Do not call authenticate_api_request to render the spec

The original code for Koha::REST::V1::Auth::under called
authenticate_api_request when requesting the API spec. This didn't make
sense, and recent changes on what conditions are tested for public
routes, broke the route.

We could add another condition, but it really doesn't make sense to call
authenticate_api_request if it should be publicly available in any
configuration, as discussed on the bug.

This patch adds a trivial check and the requested route, and lets the
request through in any case in 'under'.

To test:
1. Point your browser to:
   http://kohadev.myDNSname.org:8080/api/v1/
   http://kohadev.myDNSname.org:8080/api/v1/.html
=> FAIL: In both cases you get an authorization error.
2. Apply the regression tests patch
3. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/auth.t
=> FAIL: The tests reflect the situation, and fail
4. Apply this patch
5. Repeat 1 and 3
=> SUCCESS: All good!
6. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Koha/REST/V1/Auth.pm