TechDocs: Update tests to reflect requestUrl change

This commit is contained in:
Himanshu Mishra
2021-01-28 19:58:26 +01:00
parent 29e269d920
commit ae893e99f9
@@ -24,23 +24,6 @@ import {
import { ConfigReader } from '@backstage/config';
import { LocalPublish } from './local';
jest.mock('fs-extra', () => {
const fsOriginal = jest.requireActual('fs-extra');
return {
...fsOriginal,
access: jest.fn().mockImplementation((path, checkType, callback) => {
if (
path.includes('http://localhost:7000/static') &&
checkType === fs.constants.F_OK
) {
callback();
} else {
callback(new Error());
}
}),
};
});
const createMockEntity = (annotations = {}) => {
return {
apiVersion: 'version',
@@ -59,40 +42,34 @@ const logger = getVoidLogger();
describe('local publisher', () => {
it('should publish generated documentation dir', async () => {
const testDiscovery: jest.Mocked<PluginEndpointDiscovery> = {
getBaseUrl: jest.fn().mockResolvedValue('http://localhost:7000'),
getBaseUrl: jest
.fn()
.mockResolvedValue('http://localhost:7000/api/techdocs'),
getExternalBaseUrl: jest.fn(),
};
const mockConfig = new ConfigReader({
techdocs: {
requestUrl: 'http://localhost:7000',
storageUrl: 'http://localhost:7000/static/docs',
},
});
const mockConfig = new ConfigReader({});
const publisher = new LocalPublish(mockConfig, logger, testDiscovery);
const mockEntity = createMockEntity();
const tempDir = fs.mkdtempSync(`${__dirname}/test-component-folder-`);
expect(tempDir).toBeTruthy();
fs.closeSync(fs.openSync(path.join(tempDir, '/mock-file'), 'w'));
fs.closeSync(fs.openSync(path.join(tempDir, '/index.html'), 'w'));
await publisher.publish({ entity: mockEntity, directory: tempDir });
const publishDir = path.resolve(
__dirname,
`../../../../../plugins/techdocs-backend/static/docs/${mockEntity.metadata.name}`,
);
fs.removeSync(tempDir);
const resultDir = path.resolve(
__dirname,
`../../../../../plugins/techdocs-backend/static/docs/default/${mockEntity.kind}/${mockEntity.metadata.name}`,
);
expect(fs.existsSync(resultDir)).toBeTruthy();
expect(fs.existsSync(path.join(resultDir, '/mock-file'))).toBeTruthy();
expect(fs.existsSync(path.join(resultDir, '/index.html'))).toBeTruthy();
expect(await publisher.hasDocsBeenGenerated(mockEntity)).toBe(true);
fs.removeSync(publishDir);
fs.removeSync(tempDir);
fs.removeSync(resultDir);
});
});