diff options
Diffstat (limited to 'src/components/post/post.test.js')
| -rw-r--r-- | src/components/post/post.test.js | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/src/components/post/post.test.js b/src/components/post/post.test.js deleted file mode 100644 index e158ce9..0000000 --- a/src/components/post/post.test.js +++ /dev/null @@ -1,124 +0,0 @@ -import '@testing-library/jest-dom/extend-expect'; - -import { cleanup, render } from '@testing-library/svelte'; -import '$/config/i18n'; - -import Post from './post.svelte'; - -const internals = { - basicPost: { - id: 'e5a19d53-4c9a-4be8-afa5-00942ea3afa4', - text: 'This is an example post qwerty', - created_at: Date.UTC(2021, 3, 19, 6, 6, 6, 666).valueOf(), - author: { - handle: 'very_cool_user', - id: 'b01bdb48-4b5e-46a4-97f3-6db789bcd33b' - }, - topic: { - id: '35d3c3eb-e486-42ef-994c-d8ab1f1e167a', - title: 'Parent topic, yes' - } - }, - postWithoutTopic: { - id: '9e52e38e-9007-4a20-bbf1-cea4e2f950f3', - text: 'This is a post without a topic', - created_at: Date.UTC(2022, 8, 21, 4, 3, 1, 340).valueOf(), - author: { - handle: 'my_normal_user', - id: '121f8f97-de02-4102-b25d-f34fd619009b' - } - }, - - results: null -}; - -describe('Post component', () => { - - beforeEach(() => { - - internals.results = render(Post, { props: { - post: internals.basicPost - } }); - }); - - test('Should display the text of the post', () => { - - expect(internals.results.getByText('This is an example post qwerty')).toBeVisible(); - }); - - test('Should display date of the post', () => { - - expect(internals.results.getByText('2021-04-19T06:06:06.666Z')) - .toBeVisible(); - }); - - test('Date of post should be a permalink to the post', () => { - - expect(internals.results.getByText('2021-04-19T06:06:06.666Z').closest('a')) - .toHaveAttribute('href', '/p/e5a19d53-4c9a-4be8-afa5-00942ea3afa4'); - }); - - test('Should display the glyph of the post author', () => { - - const glyphicon = internals.results.getByRole('img'); - - expect(glyphicon) - .toBeVisible(); - expect(glyphicon) - .toHaveTextContent(/^. . . .$/); - }); - - test('Should display author handle', () => { - - expect(internals.results.getByText('very_cool_user')) - .toBeVisible(); - }); - - test('Author handle should have a permalink to topic', () => { - - expect(internals.results.getByText('very_cool_user').closest('a')) - .toHaveAttribute('href', '/a/very_cool_user'); - }); - - test('Should display parent topic title', () => { - - expect(internals.results.getByText('Parent topic, yes')) - .toBeVisible(); - }); - - test('Parent topic title should have a permalink to topic', () => { - - expect(internals.results.getByText('Parent topic, yes').closest('a')) - .toHaveAttribute('href', '/t/35d3c3eb-e486-42ef-994c-d8ab1f1e167a'); - }); - - test('Parent topic title should have a permalink to topic', () => { - - cleanup(); - internals.results = render(Post, { props: { - post: internals.postWithoutTopic - } }); - - expect(internals.results.queryByText('Parent topic, yes')) - .toBe(null); - }); - - test('It should default to 1/1 when no index or count is passed', () => { - - expect(internals.results.getByTitle('Post 1 of 1 by very_cool_user')) - .toBeVisible(); - }); - - test('Parent topic title should have a permalink to topic', () => { - - cleanup(); - internals.results = render(Post, { props: { - index: 2, - count: 5, - post: internals.postWithoutTopic - } }); - - expect(internals.results.getByTitle('Post 3 of 5 by my_normal_user')) - .toBeVisible(); - }); -}); |