public GrantDTO create(GrantDTO grantDTO, @Nullable User currentUser) {
        return create(grantDTO, requireNonNull(currentUser, "currentUser cannot be null").getName());
    }
@Test
    public void createWithGranteeCapabilityAndTarget() {
        final GRN grantee = GRNTypes.USER.toGRN("jane");
        final GRN target = GRNTypes.DASHBOARD.toGRN("54e3deadbeefdeadbeef0000");

        final GrantDTO grant = dbService.create(grantee, Capability.MANAGE, target, "admin");

        assertThat(grant.id()).isNotBlank();
        assertThat(grant.grantee()).isEqualTo(grantee);
        assertThat(grant.capability()).isEqualTo(Capability.MANAGE);
        assertThat(grant.target()).isEqualTo(target);
        assertThat(grant.createdBy()).isEqualTo("admin");
        assertThat(grant.createdAt()).isBefore(ZonedDateTime.now(ZoneOffset.UTC));
        assertThat(grant.updatedBy()).isEqualTo("admin");
        assertThat(grant.updatedAt()).isBefore(ZonedDateTime.now(ZoneOffset.UTC));
    }