Skip to content

Commit 823ce06

Browse files
mraiguoafc163
authored andcommitted
add test cases
1 parent abd5132 commit 823ce06

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed

tests/index.js

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -679,6 +679,84 @@ describe('InputNumber', () => {
679679
inputElement = ReactDOM.findDOMNode(inputNumber.input);
680680
expect(inputNumber.state.value).to.be(-3.637978807091713e-12);
681681
});
682+
683+
it('value can be changed when dynamic setting max', () => {
684+
const Demo = createReactClass({
685+
getInitialState() {
686+
return {
687+
max: 10,
688+
value: 11,
689+
};
690+
},
691+
onChange(value) {
692+
this.setState({ value });
693+
},
694+
changeMax() {
695+
this.setState({
696+
value: 11,
697+
max: 20,
698+
});
699+
},
700+
render() {
701+
return (
702+
<div>
703+
<InputNumber
704+
ref="inputNum"
705+
max={this.state.max}
706+
onChange={this.onChange}
707+
value={this.state.value}
708+
/>
709+
<button onClick={this.changeMax}>change max</button>
710+
</div>
711+
);
712+
},
713+
});
714+
example = ReactDOM.render(<Demo />, container);
715+
inputNumber = example.refs.inputNum;
716+
inputElement = ReactDOM.findDOMNode(inputNumber.input);
717+
expect(inputNumber.state.value).to.be(10);
718+
Simulate.click(findRenderedDOMComponentWithTag(example, 'button'));
719+
expect(inputNumber.state.value).to.be(11);
720+
});
721+
722+
it('value can be changed when dynamic setting min', () => {
723+
const Demo = createReactClass({
724+
getInitialState() {
725+
return {
726+
min: 10,
727+
value: 9,
728+
};
729+
},
730+
onChange(value) {
731+
this.setState({ value });
732+
},
733+
changeMax() {
734+
this.setState({
735+
value: 9,
736+
min: 0,
737+
});
738+
},
739+
render() {
740+
return (
741+
<div>
742+
<InputNumber
743+
ref="inputNum"
744+
min={this.state.min}
745+
onChange={this.onChange}
746+
value={this.state.value}
747+
/>
748+
<button onClick={this.changeMax}>change min</button>
749+
</div>
750+
);
751+
},
752+
});
753+
example = ReactDOM.render(<Demo />, container);
754+
inputNumber = example.refs.inputNum;
755+
inputElement = ReactDOM.findDOMNode(inputNumber.input);
756+
expect(inputNumber.state.value).to.be(10);
757+
Simulate.click(findRenderedDOMComponentWithTag(example, 'button'));
758+
expect(inputNumber.state.value).to.be(9);
759+
});
682760
});
683761

684762
describe('decimal', () => {

0 commit comments

Comments
 (0)