Skip to content

Commit

Permalink
Updated file system tests to be OS-agnostic
Browse files Browse the repository at this point in the history
- Test results for write operations are now designed to match irrespective of the system's path encoding: The previously used UNIX-style path strings do not match on Windows systems. Therefore, expected paths are now being resolved as they are in their corresponding write function.
- Unit tests should now pass on all systems.
  • Loading branch information
krokettenkoal committed Jul 28, 2023
1 parent e0596a2 commit d97edce
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 10 deletions.
13 changes: 7 additions & 6 deletions src/utils/writeClientCore.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { EOL } from 'os';
import { resolve } from 'path';

import type { Client } from '../client/interfaces/Client';
import { HttpClient } from '../HttpClient';
Expand Down Expand Up @@ -40,11 +41,11 @@ describe('writeClientCore', () => {

await writeClientCore(client, templates, '/', HttpClient.FETCH, Indent.SPACE_4);

expect(writeFile).toBeCalledWith('/OpenAPI.ts', `settings${EOL}`);
expect(writeFile).toBeCalledWith('/ApiError.ts', `apiError${EOL}`);
expect(writeFile).toBeCalledWith('/ApiRequestOptions.ts', `apiRequestOptions${EOL}`);
expect(writeFile).toBeCalledWith('/ApiResult.ts', `apiResult${EOL}`);
expect(writeFile).toBeCalledWith('/CancelablePromise.ts', `cancelablePromise${EOL}`);
expect(writeFile).toBeCalledWith('/request.ts', `request${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/OpenAPI.ts'), `settings${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/ApiError.ts'), `apiError${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/ApiRequestOptions.ts'), `apiRequestOptions${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/ApiResult.ts'), `apiResult${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/CancelablePromise.ts'), `cancelablePromise${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/request.ts'), `request${EOL}`);
});
});
4 changes: 3 additions & 1 deletion src/utils/writeClientIndex.spec.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import { resolve } from 'path';

import type { Client } from '../client/interfaces/Client';
import { writeFile } from './fileSystem';
import type { Templates } from './registerHandlebarTemplates';
Expand Down Expand Up @@ -36,6 +38,6 @@ describe('writeClientIndex', () => {

await writeClientIndex(client, templates, '/', true, true, true, true, true, 'Service', '');

expect(writeFile).toBeCalledWith('/index.ts', 'index');
expect(writeFile).toBeCalledWith(resolve('/', '/index.ts'), 'index');
});
});
3 changes: 2 additions & 1 deletion src/utils/writeClientModels.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { EOL } from 'os';
import { resolve } from 'path';

import type { Model } from '../client/interfaces/Model';
import { HttpClient } from '../HttpClient';
Expand Down Expand Up @@ -53,6 +54,6 @@ describe('writeClientModels', () => {

await writeClientModels(models, templates, '/', HttpClient.FETCH, false, Indent.SPACE_4);

expect(writeFile).toBeCalledWith('/User.ts', `model${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/User.ts'), `model${EOL}`);
});
});
3 changes: 2 additions & 1 deletion src/utils/writeClientSchemas.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { EOL } from 'os';
import { resolve } from 'path';

import type { Model } from '../client/interfaces/Model';
import { HttpClient } from '../HttpClient';
Expand Down Expand Up @@ -53,6 +54,6 @@ describe('writeClientSchemas', () => {

await writeClientSchemas(models, templates, '/', HttpClient.FETCH, false, Indent.SPACE_4);

expect(writeFile).toBeCalledWith('/$User.ts', `schema${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/$User.ts'), `schema${EOL}`);
});
});
3 changes: 2 additions & 1 deletion src/utils/writeClientServices.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { EOL } from 'os';
import { resolve } from 'path';

import type { Service } from '../client/interfaces/Service';
import { HttpClient } from '../HttpClient';
Expand Down Expand Up @@ -41,6 +42,6 @@ describe('writeClientServices', () => {

await writeClientServices(services, templates, '/', HttpClient.FETCH, false, false, Indent.SPACE_4, 'Service');

expect(writeFile).toBeCalledWith('/UserService.ts', `service${EOL}`);
expect(writeFile).toBeCalledWith(resolve('/', '/UserService.ts'), `service${EOL}`);
});
});

0 comments on commit d97edce

Please sign in to comment.