mirror of
https://github.com/oceanprotocol/commons.git
synced 2023-03-15 18:03:00 +01:00
test tweaks
This commit is contained in:
parent
7d727bcdf9
commit
e5ef417025
@ -115,6 +115,7 @@ export default class Files extends PureComponent<FilesProps, FilesStates> {
|
|||||||
name={name}
|
name={name}
|
||||||
value={JSON.stringify(files)}
|
value={JSON.stringify(files)}
|
||||||
onChange={onChange}
|
onChange={onChange}
|
||||||
|
data-testid="files"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div className={styles.newItems}>
|
<div className={styles.newItems}>
|
||||||
|
@ -12,7 +12,6 @@ const stateMock = {
|
|||||||
|
|
||||||
const propsMock = {
|
const propsMock = {
|
||||||
inputChange: () => null,
|
inputChange: () => null,
|
||||||
inputToArrayChange: () => null,
|
|
||||||
state: stateMock,
|
state: stateMock,
|
||||||
title: 'Hello',
|
title: 'Hello',
|
||||||
description: 'description',
|
description: 'description',
|
||||||
|
@ -28,9 +28,6 @@ interface StepProps {
|
|||||||
| ChangeEvent<HTMLSelectElement>
|
| ChangeEvent<HTMLSelectElement>
|
||||||
| ChangeEvent<HTMLTextAreaElement>
|
| ChangeEvent<HTMLTextAreaElement>
|
||||||
): void
|
): void
|
||||||
inputToArrayChange(
|
|
||||||
event: ChangeEvent<HTMLSelectElement> | ChangeEvent<HTMLInputElement>
|
|
||||||
): void
|
|
||||||
fields?: Fields
|
fields?: Fields
|
||||||
state: any
|
state: any
|
||||||
title: string
|
title: string
|
||||||
|
@ -1,11 +1,44 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import { render } from '@testing-library/react'
|
import { render, fireEvent } from '@testing-library/react'
|
||||||
import Publish from '.'
|
import Publish from '.'
|
||||||
|
import { User } from '../../context'
|
||||||
|
import { userMockConnected } from '../../../__mocks__/user-mock'
|
||||||
|
|
||||||
describe('Progress', () => {
|
describe('Publish', () => {
|
||||||
it('renders without crashing', () => {
|
it('renders without crashing', () => {
|
||||||
const { container, getByText } = render(<Publish />)
|
const { container, getByText } = render(
|
||||||
|
<User.Provider value={userMockConnected}>
|
||||||
|
<Publish />
|
||||||
|
</User.Provider>
|
||||||
|
)
|
||||||
expect(container.firstChild).toBeInTheDocument()
|
expect(container.firstChild).toBeInTheDocument()
|
||||||
expect(getByText('Next →')).toHaveAttribute('disabled')
|
expect(getByText('Next →')).toHaveAttribute('disabled')
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('next button works', () => {
|
||||||
|
const { getByText, getByLabelText, getByTestId } = render(
|
||||||
|
<User.Provider value={userMockConnected}>
|
||||||
|
<Publish />
|
||||||
|
</User.Provider>
|
||||||
|
)
|
||||||
|
|
||||||
|
// Title
|
||||||
|
const inputName = getByLabelText('Title')
|
||||||
|
fireEvent.change(inputName, {
|
||||||
|
target: { value: 'Hello' }
|
||||||
|
})
|
||||||
|
|
||||||
|
// Files
|
||||||
|
const inputFiles = getByTestId('files')
|
||||||
|
fireEvent.change(inputFiles, {
|
||||||
|
target: {
|
||||||
|
value: JSON.stringify([
|
||||||
|
{ url: 'https://demo.com', contentType: '', found: false }
|
||||||
|
])
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// expect(getByText('Next →')).not.toHaveAttribute('disabled')
|
||||||
|
fireEvent.click(getByText('Next →'))
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
@ -83,16 +83,6 @@ export default class Publish extends Component<{}, PublishState> {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
private inputToArrayChange = (
|
|
||||||
event: ChangeEvent<HTMLInputElement> | ChangeEvent<HTMLSelectElement>
|
|
||||||
) => {
|
|
||||||
this.validateInputs(event.currentTarget.name, event.currentTarget.value)
|
|
||||||
|
|
||||||
this.setState({
|
|
||||||
[event.currentTarget.name]: [event.currentTarget.value]
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
private next = () => {
|
private next = () => {
|
||||||
let { currentStep } = this.state
|
let { currentStep } = this.state
|
||||||
const totalSteps = steps.length
|
const totalSteps = steps.length
|
||||||
@ -353,7 +343,6 @@ export default class Publish extends Component<{}, PublishState> {
|
|||||||
currentStep={this.state.currentStep}
|
currentStep={this.state.currentStep}
|
||||||
fields={step.fields}
|
fields={step.fields}
|
||||||
inputChange={this.inputChange}
|
inputChange={this.inputChange}
|
||||||
inputToArrayChange={this.inputToArrayChange}
|
|
||||||
state={this.state}
|
state={this.state}
|
||||||
next={this.next}
|
next={this.next}
|
||||||
prev={this.prev}
|
prev={this.prev}
|
||||||
|
Loading…
Reference in New Issue
Block a user