backend-plugin-api: add AuthService.getNoneCredentials

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2024-02-25 12:09:51 +01:00
parent 9823e313c3
commit 982fc43d68
5 changed files with 25 additions and 0 deletions
@@ -157,6 +157,12 @@ class DefaultAuthService implements AuthService {
return true;
}
async getNoneCredentials(): Promise<
BackstageCredentials<BackstageNonePrincipal>
> {
return createCredentialsWithNonePrincipal();
}
async getOwnServiceCredentials(): Promise<
BackstageCredentials<BackstageServicePrincipal>
> {
@@ -17,6 +17,7 @@
import {
AuthService,
BackstageCredentials,
BackstageNonePrincipal,
BackstagePrincipalTypes,
BackstageServicePrincipal,
BackstageUserInfo,
@@ -65,6 +66,12 @@ class AuthCompat implements AuthService {
return true;
}
async getNoneCredentials(): Promise<
BackstageCredentials<BackstageNonePrincipal>
> {
return createCredentialsWithNonePrincipal();
}
async getOwnServiceCredentials(): Promise<
BackstageCredentials<BackstageServicePrincipal>
> {
@@ -75,6 +75,8 @@ export interface AuthService {
type: TType,
): credentials is BackstageCredentials<BackstagePrincipalTypes[TType]>;
getNoneCredentials(): Promise<BackstageCredentials<BackstageNonePrincipal>>;
getOwnServiceCredentials(): Promise<
BackstageCredentials<BackstageServicePrincipal>
>;
@@ -157,6 +157,12 @@ describe('MockAuthService', () => {
).rejects.toThrow('Service token is invalid');
});
it('should return none credentials', async () => {
await expect(auth.getNoneCredentials()).resolves.toEqual(
mockCredentials.none(),
);
});
it('should return own service credentials', async () => {
await expect(auth.getOwnServiceCredentials()).resolves.toEqual(
mockCredentials.service('plugin:test'),
@@ -117,6 +117,10 @@ export class MockAuthService implements AuthService {
throw new AuthenticationError(`Unknown mock token '${token}'`);
}
async getNoneCredentials() {
return mockCredentials.none();
}
async getOwnServiceCredentials(): Promise<
BackstageCredentials<BackstageServicePrincipal>
> {