Skip to content

Commit

Permalink
fix: adjust service and tests list digital certificates
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasmendes21 committed Jan 29, 2025
1 parent 9c8a7ca commit 947e80a
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,17 @@ const parseStatusData = (status) => {
const isActive = status.toUpperCase() === 'ACTIVE'
const parsedStatus = isActive
? {
content: capitalizeFirstLetter(status),
severity: 'success'
}
content: capitalizeFirstLetter(status),
severity: 'success'
}
: {
content: capitalizeFirstLetter(status),
severity: 'danger'
}
content: capitalizeFirstLetter(status),
severity: 'danger'
}

return parsedStatus
}

const parseValidityDate = (validity) => {
const formatOptions = {
month: 'short',
Expand All @@ -56,7 +57,9 @@ const parseValidityDate = (validity) => {
const checkIfFieldExist = (field, defaultValue = '-') => field ?? defaultValue

const adapt = (httpResponse) => {
const parsedDomains = httpResponse.body.results?.map((item) => {
const isArray = Array.isArray(httpResponse.body?.results)

const parsedDigitalCertificates = isArray ? httpResponse.body.results?.map((item) => {
const subjectNames = checkIfFieldExist(item?.subject_name?.map((subject) => subject)?.join(','))
const typeMap = {
edge_certificate: EDGE_CERTIFICATE,
Expand All @@ -72,13 +75,13 @@ const adapt = (httpResponse) => {
validity: item?.validity ? parseValidityDate(item.validity) : '-',
status: item?.status ? parseStatusData(item.status) : '-'
}
})
}) : []

const count = httpResponse.body?.count ?? 0

return {
count,
body: parsedDomains,
body: parsedDigitalCertificates,
statusCode: httpResponse.statusCode
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ const fixtures = {
certificateWithMissingData: {
id: 2,
name: 'Certificate 2',
subject_name: [],
subject_name: null,
type: null,
validity: null,
status: 'pending'
Expand Down Expand Up @@ -102,7 +102,7 @@ describe('DigitalCertificatesServices', () => {
content: 'Pending',
severity: 'danger'
},
subjectName: '',
subjectName: '-',
type: '-',
validity: '-'
})
Expand Down Expand Up @@ -144,7 +144,7 @@ describe('DigitalCertificatesServices', () => {
content: 'Inactive',
severity: 'danger'
},
subjectName: '',
subjectName: '-',
type: '-',
validity: '-'
})
Expand All @@ -163,6 +163,62 @@ describe('DigitalCertificatesServices', () => {
})
})

it('should return correct certificates when search parameters are provided', async () => {
const requestSpy = vi.spyOn(AxiosHttpClientAdapter, 'request').mockResolvedValueOnce({
statusCode: 200,
body: {
results: [fixtures.certificateMock]
}
})
const { sut } = makeSut()
const result = await sut({ search: 'Certificate1' })

expect(requestSpy).toHaveBeenCalledWith({
url: `v4/digital_certificates/certificates?ordering=name&page=1&page_size=10&fields=&search=Certificate1`,
method: 'GET'
})
expect(result).toEqual([{
id: fixtures.certificateMock.id,
name: fixtures.certificateMock.name,
issuer: fixtures.certificateMock.issuer,
type: 'TLS Certificate',
subjectName: "Subject 1,Subject 2",
validity: "Nov 10, 2023, 12:00 AM",
status: {
content: "Active",
severity: "success",
},
}])
})

it('should return correct certificates when ordering parameters are provided', async () => {
const requestSpy = vi.spyOn(AxiosHttpClientAdapter, 'request').mockResolvedValueOnce({
statusCode: 200,
body: {
results: [fixtures.certificateMock]
}
})
const { sut } = makeSut()
const result = await sut({ ordering: 'issuer' })

expect(requestSpy).toHaveBeenCalledWith({
url: `v4/digital_certificates/certificates?ordering=issuer&page=1&page_size=10&fields=&search=`,
method: 'GET'
})
expect(result).toEqual([{
id: fixtures.certificateMock.id,
name: fixtures.certificateMock.name,
issuer: fixtures.certificateMock.issuer,
type: 'TLS Certificate',
subjectName: "Subject 1,Subject 2",
validity: "Nov 10, 2023, 12:00 AM",
status: {
content: "Active",
severity: "success",
},
}])
})

it.each([
{
statusCode: 400,
Expand Down

0 comments on commit 947e80a

Please sign in to comment.