Test multiple markdown extensions (#1886)

This commit adds multiple unit jest tests for components and removes e2e tests. 

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>

Signed-off-by: Philip Molares <philip.molares@udo.edu>

Co-authored-by: Philip Molares <philip.molares@udo.edu>
This commit is contained in:
Tilman Vatteroth 2022-04-27 09:59:01 +02:00 committed by GitHub
parent dca541ea1a
commit 32c6bbb8e3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
67 changed files with 2123 additions and 553 deletions

View file

@ -0,0 +1,42 @@
/*
* SPDX-FileCopyrightText: 2022 The HedgeDoc developers (see AUTHORS file)
*
* SPDX-License-Identifier: AGPL-3.0-only
*/
import { render } from '@testing-library/react'
import { TestMarkdownRenderer } from '../../test-utils/test-markdown-renderer'
import React from 'react'
import { mockI18n } from '../../test-utils/mock-i18n'
import { GraphvizMarkdownExtension } from './graphviz-markdown-extension'
import * as GraphvizFrameModule from '../graphviz/graphviz-frame'
import type { CodeProps } from '../../replace-components/code-block-component-replacer'
describe('PlantUML markdown extensions', () => {
beforeAll(async () => {
jest.spyOn(GraphvizFrameModule, 'GraphvizFrame').mockImplementation((({ code }) => {
return (
<span>
this is a mock for graphviz frame
<code>{code}</code>
</span>
)
}) as React.FC<CodeProps>)
await mockI18n()
})
afterAll(() => {
jest.resetModules()
jest.restoreAllMocks()
})
it('renders a plantuml codeblock', () => {
const view = render(
<TestMarkdownRenderer
extensions={[new GraphvizMarkdownExtension()]}
content={'```graphviz\ngraph {\na -- b\n}\n```'}
/>
)
expect(view.container).toMatchSnapshot()
})
})