import React from 'react'
import { render } from '@testing-library/react'
let idCounter = 1
class NumberDisplay extends React.Component {
id = idCounter++
render() {
return (
<div>
<span data-testid="number-display">{this.props.number}</span>
<span data-testid="instance-id">{this.id}</span>
</div>
)
}
}
test('calling render with the same component on the same container does not remount', () => {
const { getByTestId, rerender } = render(<NumberDisplay number={1} />)
expect(getByTestId('number-display').textContent).toBe('1')
rerender(<NumberDisplay number={2} />)
expect(getByTestId('number-display').textContent).toBe('2')
expect(getByTestId('instance-id').textContent).toBe('1')
})