1
0
mirror of https://github.com/sasjs/adapter.git synced 2026-01-04 19:20:05 +00:00

chore: cleanup, parseResponse optimization

This commit is contained in:
Mihajlo Medjedovic
2021-02-23 22:58:48 +01:00
parent 4b28ee8e73
commit f2c8e40430
3 changed files with 14 additions and 30 deletions

View File

@@ -360,6 +360,7 @@ export class RequestClient implements HttpClient {
private async parseResponse<T>(response: AxiosResponse<any>) {
const etag = response?.headers ? response.headers['etag'] : ''
let parsedResponse
let includeSAS9Log: boolean = false
try {
if (typeof response.data === 'string') {
@@ -373,12 +374,20 @@ export class RequestClient implements HttpClient {
} catch {
parsedResponse = response.data
}
includeSAS9Log = true
}
return {
let responseToReturn: {result: T, etag: any, log?: string} = {
result: parsedResponse as T,
log: response.data,
etag
}
if (includeSAS9Log) {
responseToReturn.log = response.data
}
return responseToReturn
}
}

View File

@@ -8,18 +8,6 @@ const mockedAxios = axios as jest.Mocked<typeof axios>
describe('ContextManager', () => {
dotenv.config()
const sampleLogResponse = {
items: [
{
attributes: {},
createdBy: 'fake creator',
id: 'fakeId',
name: 'Compute Context To Delete',
version: 2
}
]
}
const contextManager = new ContextManager(
process.env.SERVER_URL as string,
new RequestClient(process.env.SERVER_URL as string)
@@ -460,12 +448,10 @@ describe('ContextManager', () => {
Promise.resolve({ data: sampleResponseGetComputeContextByName })
)
sampleLogResponse.items[0].name = 'updated name'
const expectedResponse = {
etag: '',
result: sampleResponseGetComputeContextByName,
log: sampleLogResponse
log: sampleResponseGetComputeContextByName
}
await expect(
@@ -592,12 +578,10 @@ describe('ContextManager', () => {
Promise.resolve({ data: sampleResponseDeletedContext })
)
sampleLogResponse.items[0].name = 'Compute Context To Delete'
const expectedResponse = {
etag: '',
result: sampleResponseDeletedContext,
log: sampleLogResponse
log: sampleResponseDeletedContext
}
await expect(

View File

@@ -25,15 +25,6 @@ describe('SessionManager', () => {
version: 1
}
const sampleLogResponse = {
links: [],
name: 'SYSJOBID',
ok: true,
scope: 'GLOBAL',
value: '25218',
version: 1
}
mockedAxios.get.mockImplementation(() =>
Promise.resolve({ data: sampleResponse })
)
@@ -41,7 +32,7 @@ describe('SessionManager', () => {
const expectedResponse = {
etag: '',
result: sampleResponse,
log: sampleLogResponse
log: sampleResponse
}
await expect(