permissions: add a discriminator type to Permission

Signed-off-by: Mike Lewis <mtlewis@users.noreply.github.com>
This commit is contained in:
Mike Lewis
2022-03-04 14:51:53 +00:00
committed by Joe Porpeglia
parent ada4446733
commit 9cbb270aef
12 changed files with 181 additions and 63 deletions
@@ -18,6 +18,7 @@ import React from 'react';
import { PermissionedRoute } from '.';
import { usePermission } from '../hooks';
import { renderInTestApp } from '@backstage/test-utils';
import { createPermission } from '@backstage/plugin-permission-common';
jest.mock('../hooks', () => ({
usePermission: jest.fn(),
@@ -26,10 +27,10 @@ const mockUsePermission = usePermission as jest.MockedFunction<
typeof usePermission
>;
const permission = {
const permission = createPermission({
name: 'access.something',
attributes: { action: 'read' as const },
};
});
describe('PermissionedRoute', () => {
it('Does not render when loading', async () => {
@@ -17,15 +17,18 @@
import React, { FC } from 'react';
import { render } from '@testing-library/react';
import { usePermission } from './usePermission';
import { AuthorizeResult } from '@backstage/plugin-permission-common';
import {
AuthorizeResult,
createPermission,
} from '@backstage/plugin-permission-common';
import { TestApiProvider } from '@backstage/test-utils';
import { PermissionApi, permissionApiRef } from '../apis';
import { SWRConfig } from 'swr';
const permission = {
const permission = createPermission({
name: 'access.something',
attributes: { action: 'read' as const },
};
attributes: { action: 'read' },
});
const TestComponent: FC = () => {
const { loading, allowed, error } = usePermission(permission);