Fix for #7170 (#7486)
* Write failing test * Ensure .min and .max are set before .value * Adjusting test for false negative * Revert test adjustment (apparently it was only failing locally)
Troy DeMonbreun committed
Aug 15, 2016 at 13:38 UTC
3013afe2d566cc0f76eae39817815541bd78b67c
2 files changed
+6
-2
src/renderers/dom/client/wrappers/ReactDOMInput.js
+4
@@ -67,6 +67,10 @@ var ReactDOMInput = {
67
// Make sure we set .step before .value (setting .value before .step
68
// means .value is rounded on mount, based upon step precision)
69
step: undefined,
70
+ // Make sure we set .min & .max before .value (to ensure proper order
71
+ // in corner cases such as min or max deriving from value, e.g. Issue #7170)
72
+ min: undefined,
73
+ max: undefined,
74
}, DisabledInputUtils.getHostProps(inst, props), {
75
defaultChecked: undefined,
76
defaultValue: undefined,
src/renderers/dom/client/wrappers/__tests__/ReactDOMInput-test.js
+2
-2
@@ -742,7 +742,7 @@ describe('ReactDOMInput', function() {
742
);
743
});
744
745
- it('sets type and step before value always', function() {
745
+ it('sets type, step, min, max before value always', function() {
746
if (!ReactDOMFeatureFlags.useCreateElement) {
747
return;
748
}
@@ -769,10 +769,10 @@ describe('ReactDOMInput', function() {
769
'set data-reactroot',
770
'set type',
771
'set step',
772
- 'set value',
772
'set min',
773
'set max',
774
'set value',
775
+ 'set value',
776
'set checked',
777
'set checked',
778
]);