David Cook
7b965718aa
Authorise based on user's UID
...
And test to make sure the wrong user is not selected.
2022-11-25 16:14:25 +11:00
David Cook
61e7b59437
Refactor spec
...
Ready to expand in the next commit.
2022-11-25 16:14:20 +11:00
David Cook
ff9544e08b
Allow AuthorizationControl to run without Warden
...
As explained in 36c44a5487 , it's not normally good to change production code to make testing easier.
But this tiny change makes it more robust, and enables much simpler specs.
2022-11-25 16:01:42 +11:00
Maikel Linke
029c0afaa9
Verify token signature for authenticated login
...
We were just logging in any user without password or other verification
before. Now we verify the Keycloak signature and know that the person is
indeed logged in.
2022-11-25 14:49:36 +11:00
Maikel Linke
33ee03388f
Add DFC product update action, not implemented
2022-11-25 14:49:36 +11:00
Maikel Linke
4d49266f0f
Allow updates just with auth token
...
Rails usually requires an additional CSRF protection token but when it's
not present we ignore the user's session and use only the OIDC auth
token.
2022-11-25 14:49:36 +11:00
Maikel Linke
aea6f864d9
Update to DFC v1.6
...
I just replaced dfc: with dfc-b: where I found this key used in the
prototype. We may need to change more.
2022-11-25 14:49:36 +11:00
Maikel Linke
4cdb224434
Add missing rdfs prefix to DFC context
2022-11-25 14:49:36 +11:00
Maikel Linke
8d6615aa6b
Start to spec DFC auth control
2022-11-25 14:49:36 +11:00
Maikel Linke
b0aa7b7b55
Use Rspec's http matcher for better fail output
...
The previous version would just say that it expected true and got false.
The specific matcher tells us which code it expected and which code it
found.
2022-11-25 14:49:36 +11:00
Maikel Linke
c90d2c7f9a
Spec DFC authorisation with real token
...
Our code doesn't actually verify the token yet but at least we are not
mocking it all anymore.
2022-11-25 14:49:36 +11:00
Maikel Linke
63c1cd7bff
Remove invalid id attribute from DFC offer
...
This one is a bit confusing. The attribute changes throughout the
different versions of the ontology and the DFC examples are not in line
with the specification. WIP I guess.
The previous nil attribute failed JSON-LD validation and DFC examples
just contain the reference as I did it now. But I think that we will
need to update it again vor DFC-v1.7.
2022-11-25 14:49:36 +11:00
Maikel Linke
ee3ec15bc4
Update URL to DFC ontology
2022-11-25 14:49:36 +11:00
Maikel Linke
b9a43df7fe
Include DFC version in API URL
...
And let the OFN app decide under which name to mount the DFC engine.
It simplifies the code and will make it more flexible to introduce other
versions in the future.
2022-11-25 14:49:36 +11:00
Maikel Linke
fd274447fe
Simplify DFC authentication code
2022-11-25 14:49:36 +11:00
Maikel Linke
52a98989e0
Allow logged in users to access DFC API
...
It makes testing in development so much easier.
2022-11-25 14:49:36 +11:00
Maikel Linke
96193a27a4
Simplify DFC authorisation control
...
I want to add other ways to authenticate for easier testing and possibly
more integrations. It will be easier to just test if we got a user or
not instead of testing pre-conditions to that as well.
2022-11-25 14:49:36 +11:00
Maikel Linke
2630fde763
Update dfc_provider for Active Storage images
2022-11-25 14:49:36 +11:00
Maikel Linke
a501bc9687
Encapsulate dfc_provider in api routing
...
Move /api/v0/dfc_provider to /api/dfc_provider. Before it got redirected
to v0 which caused some errors.
2022-11-25 14:49:36 +11:00
Maikel Linke
e6b4f462ef
Revert "Add rubocop config to allow specs to be 300 lines long"
...
This reverts commit 0b51d8b297 .
I think that this config was complicated in the setup and potentially
confusing to have different rules in different places.
It's better to fix those spec files by either making them smaller or
removing the `module` block in the spec. We can reference the modules
explicitely where needed.
2022-02-25 12:05:04 +11:00
Andy Brett
c6743d8c6b
Merge pull request #7800 from pacodelaluna/improve-dfc-logic
...
Improve DFC Provider logic to use existing business logic
2021-07-16 15:56:09 -07:00
François Turbelin
39bb25e959
Adjust supplied_products id before better data matching
2021-07-15 21:17:14 +02:00
François Turbelin
c4a7c05c05
Use check_enterprise filter in a better way
2021-07-14 14:59:19 +02:00
François Turbelin
155d05265d
Use manually generated values to test urls
2021-07-14 14:24:10 +02:00
François Turbelin
9d1b059835
Fix typo in supplied_products_controller comment
2021-07-14 14:08:09 +02:00
François Turbelin
06c19641b4
Remove return on case
2021-06-22 20:44:51 +02:00
Luis Ramos
23627c5453
Run rubocop -a (safe corrections) removing all exceptions so all possible fixes are applied
...
9290 issues fixed
2021-06-17 22:19:26 +01:00
François Turbelin
7f0c5b8a7a
Fix controller specs with be_successful
2021-06-17 09:43:17 +02:00
François Turbelin
bcd2790649
Fix failing spec
2021-06-17 09:18:05 +02:00
François Turbelin
7918c2f37c
Cosmetics
2021-06-17 08:50:52 +02:00
François Turbelin
1ef7247311
Use a service to fetch variants in the engine
2021-06-17 08:50:52 +02:00
François Turbelin
235a2574dc
Add spec for SuppliedProduct serializer
2021-06-17 08:50:52 +02:00
François Turbelin
4dc07d9872
Add spec for CatalogItem serializer
2021-06-17 08:50:52 +02:00
François Turbelin
a87c46843c
Factorize serializer code into Base inherited class
2021-06-17 08:50:52 +02:00
François Turbelin
7ff69d5e6d
Fix entreprise missing issue on Persons controller
2021-06-17 08:50:52 +02:00
François Turbelin
e86b6443f2
Add a comment to explain nesting on catalog_item
2021-04-05 20:38:19 +02:00
François Turbelin
bf4bb854b1
Change offeres_to to offers_to for method naming
2021-04-05 20:38:19 +02:00
François Turbelin
779241db7a
Improve documentation
2021-04-05 20:38:19 +02:00
François Turbelin
11f1f6cff1
Add more onliner before in specs
2021-04-05 20:38:19 +02:00
François Turbelin
7ad6e1b76a
Remove brakets for describe in specs
2021-04-05 20:38:19 +02:00
François Turbelin
d414122efd
Rename check_entreprise to set_entreprise
2021-04-05 20:38:19 +02:00
Luis Ramos
c5186c2412
Fix rubocop_specs file path
2020-10-26 17:27:38 +00:00
Luis Ramos
0b51d8b297
Add rubocop config to allow specs to be 300 lines long
2020-10-26 17:03:50 +00:00
François Turbelin
52d82d0a96
Use not found instead of 404 for spec descriptions
2020-09-03 00:59:21 +02:00
François Turbelin
d11d67561f
Remove extra delegation in serializers
2020-09-03 00:58:54 +02:00
François Turbelin
d2c147109d
Use Persons instead of People
2020-09-03 00:56:42 +02:00
François Turbelin
b60c1c9003
Dry current_enterprise emtod with enterprise_id_param_name
2020-09-03 00:50:23 +02:00
François Turbelin
59fb2abc5d
Fix inheritance issue with specs on Semaphore
2020-09-02 23:08:47 +02:00
François Turbelin
6508897e3d
Introduce current_enterprise with memoization
2020-09-02 22:28:12 +02:00
François Turbelin
1baba5b61c
Introduce current_user with memoization
2020-09-02 22:18:56 +02:00