solid-contrib / conformance-test-harness

Harness used to run Solid conformance tests and generate reports

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Overcome issue of refresh tokens expiring

edwardsph opened this issue · comments

The test suite has to expose credentials in one form or another and the preferred option of using refresh tokens currently suffers from the fact that they expire after 3 days.

Could we set up a Mock IdP that allows the test suite to log in and get access tokens without user intervention? It should only support the 2 users (alice & bob) needed for testing.

Could we set up a Mock IdP

It might be easy to do that with CSS: it's been designed to create custom configurations, such as indeed one where there are two mock users.

The drawback would then be that CSS would test its own tokens. (However, the software generating them versus the software validating them happen to be different stacks.)

Another option might be to fake system time though, such that we can use fixed tokens. Viable?

That might be OK in a container but I don't think it would be so good for someone working on tests locally. Currently I have to bootstrap every 3 days to get new refresh tokens and I'd like to avoid that for test developers.

The tests for ESS, CSS, NSS now all use inrupt.net as the IdP instead of using refresh tokens. We may look again at this but this change moves us closer to being able to run in a CI environment where we can pass in the username/password as secrets to that process.