Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/ci-config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ jobs:
env:
INRUPT_TEST_WEBID: ${{ secrets.INRUPT_PROD_WEBID }}
INRUPT_TEST_PUBLIC_RESOURCE_PATH: ${{ secrets.INRUPT_PROD_PUBLIC_RESOURCE_PATH }}
INRUPT_ACCESS_ACCESS_GRANT_PROVIDER: ${{ secrets.INRUPT_PROD_ACCESS_GRANT_PROVIDER }}
INRUPT_TEST_CLIENT_ID: ${{ secrets.INRUPT_PROD_CLIENT_ID }}
INRUPT_TEST_CLIENT_SECRET: ${{ secrets.INRUPT_PROD_CLIENT_SECRET }}

Expand All @@ -41,6 +42,7 @@ jobs:
env:
INRUPT_TEST_WEBID: ${{ secrets.INRUPT_DEV_WEBID }}
INRUPT_TEST_PUBLIC_RESOURCE_PATH: ${{ secrets.INRUPT_DEV_PUBLIC_RESOURCE_PATH }}
INRUPT_ACCESS_ACCESS_GRANT_PROVIDER: ${{ secrets.INRUPT_DEV_ACCESS_GRANT_PROVIDER }}
INRUPT_TEST_CLIENT_ID: ${{ secrets.INRUPT_DEV_CLIENT_ID }}
INRUPT_TEST_CLIENT_SECRET: ${{ secrets.INRUPT_DEV_CLIENT_SECRET }}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ public class AccessGrantScenarios {
private static final String AUTH_METHOD = config
.getOptionalValue("inrupt.test.auth-method", String.class)
.orElse("client_secret_basic");
protected static String VC_PROVIDER;
protected static String ACCESS_GRANT_PROVIDER;
private static final String PRIVATE_RESOURCE_PATH = config
.getOptionalValue("inrupt.test.private-resource-path", String.class)
.orElse("private");
Expand Down Expand Up @@ -190,11 +190,13 @@ static void setup() throws IOException {
);
accessGrantServer.start();

VC_PROVIDER = config
.getOptionalValue("inrupt.test.vc.provider", String.class)
ACCESS_GRANT_PROVIDER = config
.getOptionalValue("inrupt.test.access-grant.provider", String.class)
.orElse(accessGrantServer.getMockServerUrl());

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);
final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_APPEND));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);

Expand All @@ -206,7 +208,7 @@ static void setup() throws IOException {

LOGGER.info("Integration Test Issuer: [{}]", issuer);
LOGGER.info("Integration Test Pod Host: [{}]", podUrl);
LOGGER.info("Integration Test Access Grant server: [{}]", VC_PROVIDER);
LOGGER.info("Integration Test Access Grant server: [{}]", ACCESS_GRANT_PROVIDER);
}

@AfterAll
Expand Down Expand Up @@ -237,7 +239,9 @@ static void teardown() {
void accessGrantIssuanceLifecycleTest(final Session session) {
LOGGER.info("Integration Test - Access Grant issuance lifecycle");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand Down Expand Up @@ -286,7 +290,9 @@ void accessGrantIssuanceLifecycleTest(final Session session) {
void accessGrantWithRequestOverridesTest(final Session session) {
LOGGER.info("Integration Test - Access Grant with request overrides");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_APPEND));
final Instant expiration = Instant.now().plus(90, ChronoUnit.DAYS);
Expand All @@ -305,7 +311,9 @@ void accessGrantWithRequestOverridesTest(final Session session) {
void accessGrantNonRecursiveTest(final Session session) {
LOGGER.info("Integration Test - Issue a non-recursive access grant");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand All @@ -325,7 +333,9 @@ void accessGrantNonRecursiveTest(final Session session) {
void accessGrantQueryByRequestorTest(final Session session) {
LOGGER.info("Integration Test - Lookup Access Grants by requestor");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

//query for all grants issued by the user
final List<AccessRequest> grants = accessGrantClient.query(sharedResource, null, URI.create(webidUrl),
Expand All @@ -349,7 +359,9 @@ void accessGrantQueryByRequestorTest(final Session session) {
void accessGrantQueryByResourceTest(final Session session) {
LOGGER.info("Integration Test - Lookup Access Grants by resource");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

//query for all grants of a dedicated resource
final List<AccessRequest> requests = accessGrantClient.query(sharedResource, null, URI.create(webidUrl),
Expand All @@ -370,7 +382,9 @@ void accessGrantQueryByResourceTest(final Session session) {
void accessGrantQueryByPurposeTest(final Session session) {
LOGGER.info("Integration Test - Lookup Access Grants by purpose");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

//query for all grants with a dedicated purpose
final List<AccessRequest> requests = accessGrantClient.query(sharedResource, null, URI.create(webidUrl),
Expand Down Expand Up @@ -399,7 +413,9 @@ void accessGrantGetRdfTest(final Session session) {
assertDoesNotThrow(() -> client.create(resource));
}

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_WRITE, GRANT_MODE_APPEND));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand Down Expand Up @@ -432,7 +448,9 @@ void accessGrantSetRdfTest(final Session session) {
try (final SolidRDFSource resource = new SolidRDFSource(testRDFresourceURI)) {
assertDoesNotThrow(() -> client.create(resource));

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(
GRANT_MODE_READ, GRANT_MODE_WRITE, GRANT_MODE_APPEND));
Expand Down Expand Up @@ -470,7 +488,9 @@ void accessGrantSetRdfTest(final Session session) {
void accessGrantCreateRdfTest(final Session session) {
LOGGER.info("Integration Test - Creating RDF using Access Grant");

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final URI newTestFileURI = URIBuilder.newBuilder(testContainerURI)
.path("newRdf.ttl")
Expand Down Expand Up @@ -515,7 +535,9 @@ void accessGrantGetNonRdfTest(final Session session) throws IOException {
assertDoesNotThrow(() -> client.create(testResource));
}

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_WRITE, GRANT_MODE_APPEND));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand Down Expand Up @@ -560,7 +582,9 @@ void accessGrantSetNonRdfTest(final Session session) throws IOException {
assertDoesNotThrow(() -> client.create(testResource));
}

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_WRITE, GRANT_MODE_APPEND));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand Down Expand Up @@ -604,7 +628,9 @@ void accessGrantCreateNonRdfTest(final Session session) throws IOException {
.path("newFile.txt")
.build();

final AccessGrantClient accessGrantClient = new AccessGrantClient(URI.create(VC_PROVIDER)).session(session);
final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(ACCESS_GRANT_PROVIDER)
).session(session);

final Set<String> modes = new HashSet<>(Arrays.asList(GRANT_MODE_READ, GRANT_MODE_WRITE, GRANT_MODE_APPEND));
final Instant expiration = Instant.parse(GRANT_EXPIRATION);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ void accessGrantUmaAuthentication(final Session session) {
LOGGER.info("Integration Test - UMA Authentication to VC endpoint");

final AccessGrantClient accessGrantClient = new AccessGrantClient(
URI.create(AccessGrantScenarios.VC_PROVIDER)
URI.create(AccessGrantScenarios.ACCESS_GRANT_PROVIDER)
).session(session);

// Make an authenticated request to the VC provider /issue endpoint to enforce a token is cached by the session.
Expand All @@ -59,7 +59,7 @@ void accessGrantUmaAuthentication(final Session session) {
.toCompletableFuture().join();
// Lookup the session cache.
final Request dummyRequest = Request.newBuilder(
URI.create(AccessGrantScenarios.VC_PROVIDER).resolve("/issue")
URI.create(AccessGrantScenarios.ACCESS_GRANT_PROVIDER).resolve("/issue")
).POST(Request.BodyPublishers.ofString("Not relevant")).build();
final var token = session.fromCache(dummyRequest);
final var credential = session.getCredential(
Expand Down