Skip to content

Commit 336decc

Browse files
committed
fix tests, add test for bulk props list
1 parent 17cf595 commit 336decc

File tree

1 file changed

+30
-2
lines changed

1 file changed

+30
-2
lines changed

src/pages/__tests__/PlayerProps.test.tsx

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
/* eslint-disable no-useless-escape */
12
import api from '../../api/api'
23
import MockAdapter from 'axios-mock-adapter'
34
import { render, screen, waitFor } from '@testing-library/react'
@@ -132,7 +133,7 @@ describe('<PlayerProps />', () => {
132133
await userEvent.click(screen.getByText('New property'))
133134

134135
await userEvent.type(screen.getByPlaceholderText('Property'), 'treasuresDiscovered')
135-
await userEvent.type(screen.getByDisplayValue(''), '5')
136+
await userEvent.type(screen.getAllByPlaceholderText('Value').at(-1)!, '5')
136137

137138
expect(screen.getByDisplayValue('treasuresDiscovered')).toBeInTheDocument()
138139
expect(screen.getByDisplayValue('5')).toBeInTheDocument()
@@ -261,7 +262,7 @@ describe('<PlayerProps />', () => {
261262
await userEvent.click(screen.getByText('New property'))
262263

263264
await userEvent.type(screen.getByPlaceholderText('Property'), 'treasuresDiscovered')
264-
await userEvent.type(screen.getByDisplayValue(''), '5')
265+
await userEvent.type(screen.getAllByPlaceholderText('Value').at(-1)!, '5')
265266

266267
await userEvent.click(screen.getByText('Save changes'))
267268

@@ -329,4 +330,31 @@ describe('<PlayerProps />', () => {
329330
expect(screen.getByText('SCREEN WIDTH')).toBeInTheDocument()
330331
expect(screen.getByText('1920')).toBeInTheDocument()
331332
})
333+
334+
it('should add props from JSON input', async () => {
335+
render(
336+
<KitchenSink
337+
states={[
338+
{ node: activeGameState, initialValue: { id: 1 } },
339+
{ node: userState, initialValue: userValue }
340+
]}
341+
routePath='/:id'
342+
initialEntries={[{ pathname: `/${basePlayer.id}`, state: { player: basePlayer } }]}
343+
>
344+
<PlayerProps />
345+
</KitchenSink>
346+
)
347+
348+
await userEvent.click(screen.getByLabelText('Import props'))
349+
await userEvent.paste(JSON.stringify({
350+
speed: '100',
351+
strength: '50'
352+
}))
353+
await userEvent.click(screen.getByText('Parse JSON'))
354+
355+
expect(screen.getByDisplayValue('speed')).toBeInTheDocument()
356+
expect(screen.getByDisplayValue('100')).toBeInTheDocument()
357+
expect(screen.getByDisplayValue('strength')).toBeInTheDocument()
358+
expect(screen.getByDisplayValue('50')).toBeInTheDocument()
359+
})
332360
})

0 commit comments

Comments
 (0)