-
Notifications
You must be signed in to change notification settings - Fork 10
Description
I have been grappling with that the IDP for testing the other parts of the server should be on a different server than the host under test. Also, since we should be able to point the test suite at a server out there and run the test, it is important to not hardcode anything that ties the text fixtures to the test environment.
For the host under test, I solve this problem by using only relative URIs, since the base URI can be passed to the parser, this works very well. However, this can only be done for one host, and so I don't have a concrete mechanism to use for the host running the tests, which is problematic, because you want to point at e.g. the IDP in the ACLs. This was discussed in #35 , but for these reasons, I didn't adopt @michielbdejong 's suggestion there.
Now, I think I have a solution, but I could use some help in implementing it. I figured that when not testing the IDP, and when the IDP lives on a different host, the server under test has no business in how the IDP authenticates the user, it just gets the bearer token. So, in principle, we could have an IDP that doesn't authenticate the user for the purpose of these tests. Obviously, we will need tests for the IDP as well, but then, the IDP server is the server under test, so that it strictly a different matter.
If this IDP server was public, then we could also just use them in the ACL without concern for the specifics of the test environment.
I would therefore like IDP servers to three users, for example
- https://alice.idp-test.solidproject.org/
- https://bob.idp-test.solidproject.org/
- https://mallory.idp-test.solidproject.org/
That doesn't interact with a user, it just goes "sure, here's your bearer token" :-)
@jaxoncreed, do you think you would be able to help me with that?