Skip to content

Commit

Permalink
chore: update tests
Browse files Browse the repository at this point in the history
  • Loading branch information
rpidanny committed Jul 5, 2024
1 parent d8735d8 commit 8c437cc
Showing 1 changed file with 16 additions and 16 deletions.
32 changes: 16 additions & 16 deletions src/services/paper/paper.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,13 @@ describe('PaperService', () => {
downloadService,
)

odysseusMock.getTextContent.mockResolvedValueOnce('some-text')
odysseusMock.getMarkdownContent.mockResolvedValueOnce('some-text')

const content = await service.getTextContent(htmlPaperMetadata)

expect(content).toBe('some-text')
expect(odysseusMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getTextContent).toHaveBeenCalledWith(htmlPaperMetadata.url, {
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledWith(htmlPaperMetadata.url, {
waitOnCaptcha: !config.skipCaptcha,
throwOnCaptcha: true,
})
Expand All @@ -66,17 +66,17 @@ describe('PaperService', () => {
expect(content).toBe('some-text')
expect(pdfServiceMock.getTextContent).toHaveBeenCalledTimes(1)
expect(pdfServiceMock.getTextContent).toHaveBeenCalledWith(pdfPaperMetadata.source.url)
expect(odysseusMock.getTextContent).not.toHaveBeenCalled()
expect(odysseusMock.getMarkdownContent).not.toHaveBeenCalled()
})

it('should get text content from paper url when paper is not a pdf', async () => {
odysseusMock.getTextContent.mockResolvedValueOnce('some-text')
odysseusMock.getMarkdownContent.mockResolvedValueOnce('some-text')

const content = await service.getTextContent(htmlPaperMetadata)

expect(content).toBe('some-text')
expect(odysseusMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getTextContent).toHaveBeenCalledWith(htmlPaperMetadata.source.url, {
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledWith(htmlPaperMetadata.source.url, {
waitOnCaptcha: !config.skipCaptcha,
throwOnCaptcha: true,
})
Expand All @@ -85,28 +85,28 @@ describe('PaperService', () => {

it('should fallback to main url when pdf processing fails', async () => {
pdfServiceMock.getTextContent.mockRejectedValueOnce(new Error('Failed to process PDF'))
odysseusMock.getTextContent.mockResolvedValueOnce('some-text')
odysseusMock.getMarkdownContent.mockResolvedValueOnce('some-text')

const content = await service.getTextContent(pdfPaperMetadata)

expect(content).toBe('some-text')
expect(pdfServiceMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getTextContent).toHaveBeenCalledWith(pdfPaperMetadata.url, {
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledWith(pdfPaperMetadata.url, {
waitOnCaptcha: !config.skipCaptcha,
throwOnCaptcha: true,
})
})

it('should fallback to main url when paper url is empty', async () => {
const metadata = getMockPaperMetadata({ source: { ...htmlPaperMetadata.source, url: '' } })
odysseusMock.getTextContent.mockResolvedValueOnce('some-text')
odysseusMock.getMarkdownContent.mockResolvedValueOnce('some-text')

const content = await service.getTextContent(metadata)

expect(content).toBe('some-text')
expect(odysseusMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getTextContent).toHaveBeenCalledWith(metadata.url, {
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledWith(metadata.url, {
waitOnCaptcha: !config.skipCaptcha,
throwOnCaptcha: true,
})
Expand All @@ -125,18 +125,18 @@ describe('PaperService', () => {
const content = await service.getTextContent(metadata)

expect(content).toBe('')
expect(odysseusMock.getTextContent).not.toHaveBeenCalled()
expect(odysseusMock.getMarkdownContent).not.toHaveBeenCalled()
expect(pdfServiceMock.getTextContent).not.toHaveBeenCalled()
})

it('should return empty string when falling back to main url and url is empty', async () => {
const metadata = getMockPaperMetadata({ url: '' })
odysseusMock.getTextContent.mockRejectedValueOnce(new Error('Failed to process PDF'))
odysseusMock.getMarkdownContent.mockRejectedValueOnce(new Error('Failed to process PDF'))

const content = await service.getTextContent(metadata)

expect(content).toBe('')
expect(odysseusMock.getTextContent).toHaveBeenCalledTimes(1)
expect(odysseusMock.getMarkdownContent).toHaveBeenCalledTimes(1)
expect(pdfServiceMock.getTextContent).not.toHaveBeenCalled()
})
})
Expand Down

0 comments on commit 8c437cc

Please sign in to comment.