backend-common: make .readTree required

This commit is contained in:
Patrik Oldsberg
2020-11-12 13:59:10 +01:00
parent 6417d966bb
commit b672492e21
10 changed files with 36 additions and 30 deletions
@@ -157,14 +157,14 @@ describe('CodeOwnersProcessor', () => {
const read = jest
.fn()
.mockResolvedValue(mockReadResult({ data: ownersText }));
const reader = { read };
const reader = { read, readTree: jest.fn() };
const result = await findRawCodeOwners(mockLocation(), reader);
expect(result).toEqual(ownersText);
});
it('should raise error when no codeowner', async () => {
const read = jest.fn().mockRejectedValue(mockReadResult());
const reader = { read };
const reader = { read, readTree: jest.fn() };
await expect(
findRawCodeOwners(mockLocation(), reader),
@@ -178,7 +178,7 @@ describe('CodeOwnersProcessor', () => {
.mockImplementationOnce(() => mockReadResult({ error: 'foo' }))
.mockImplementationOnce(() => mockReadResult({ error: 'bar' }))
.mockResolvedValue(mockReadResult({ data: ownersText }));
const reader = { read };
const reader = { read, readTree: jest.fn() };
const result = await findRawCodeOwners(mockLocation(), reader);
@@ -197,7 +197,7 @@ describe('CodeOwnersProcessor', () => {
const read = jest
.fn()
.mockResolvedValue(mockReadResult({ data: mockCodeOwnersText() }));
const reader = { read };
const reader = { read, readTree: jest.fn() };
const owner = await resolveCodeOwner(mockLocation(), reader);
expect(owner).toBe('backstage-core');
@@ -207,7 +207,7 @@ describe('CodeOwnersProcessor', () => {
const read = jest
.fn()
.mockImplementation(() => mockReadResult({ error: 'error: foo' }));
const reader = { read };
const reader = { read, readTree: jest.fn() };
await expect(
resolveCodeOwner(mockLocation(), reader),
@@ -221,7 +221,7 @@ describe('CodeOwnersProcessor', () => {
const read = jest
.fn()
.mockResolvedValue(mockReadResult({ data: mockCodeOwnersText() }));
const reader = { read };
const reader = { read, readTree: jest.fn() };
const processor = new CodeOwnersProcessor({ reader });
return { entity, processor, read };
@@ -27,7 +27,7 @@ import {
describe('PlaceholderProcessor', () => {
const read: jest.MockedFunction<ResolverRead> = jest.fn();
const reader: UrlReader = { read };
const reader: UrlReader = { read, readTree: jest.fn() };
beforeEach(() => {
jest.resetAllMocks();
@@ -40,7 +40,10 @@ const dummyEntityYaml = yaml.stringify(dummyEntity);
describe('CatalogBuilder', () => {
let db: Knex<any, unknown[]>;
const reader: jest.Mocked<UrlReader> = { read: jest.fn() };
const reader: jest.Mocked<UrlReader> = {
read: jest.fn(),
readTree: jest.fn(),
};
const env: CatalogEnvironment = {
logger: getVoidLogger(),
database: { getClient: async () => db },
+2 -8
View File
@@ -179,13 +179,7 @@ export const getDocFilesFromRepository = async (
entity,
);
if (reader.readTree) {
const response = await reader.readTree(target);
const response = await reader.readTree(target);
return response.dir();
}
throw new Error(
`No readTree method available on the UrlReader for ${target}`,
);
return await response.dir();
};