Browse Source

bug: remove clearValidation from onTryoutClick (#5955)

bubble
Tim Lai 4 years ago
committed by GitHub
parent
commit
4542806af6
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 38 additions and 2 deletions
  1. +6
    -0
      src/core/components/execute.jsx
  2. +0
    -2
      src/core/containers/OperationContainer.jsx
  3. +32
    -0
      test/e2e-cypress/tests/bugs/5070.js

+ 6
- 0
src/core/components/execute.jsx View File

@@ -22,6 +22,12 @@ export default class Execute extends Component {
this.props.onExecute()
}
specActions.execute( { operation, path, method } )
} else {
// deferred by 40ms, to give element class change time to settle.
specActions.clearValidateParams( [path, method] )
setTimeout(() => {
specActions.validateParams([path, method])
}, 40)
}
}



+ 0
- 2
src/core/containers/OperationContainer.jsx View File

@@ -118,9 +118,7 @@ export default class OperationContainer extends PureComponent {
}

onTryoutClick =() => {
let { specActions, path, method } = this.props
this.setState({tryItOutEnabled: !this.state.tryItOutEnabled})
specActions.clearValidateParams([path, method])
}

onExecute = () => {


+ 32
- 0
test/e2e-cypress/tests/bugs/5070.js View File

@@ -0,0 +1,32 @@
describe("#5070: Required field not highlighted on click of Execute button (second time)", () => {
it("should not clear error class=invalid on input field (Swagger)", () => {
cy
.visit("/?url=/documents/petstore.swagger.yaml")
.get("#operations-pet-getPetById")
.click()
// Expand Try It Out
.get(".try-out__btn")
.click()
// Execute without user input
.get(".execute.opblock-control__btn")
.click()
.get(".parameters-col_description input")
.should($el => {
expect($el).to.have.length(1)
const className = $el[0].className
expect(className).to.match(/invalid/i)
})
// Cancel Try It Out
.get(".cancel")
.click()
// Expand Try It Out (Again)
.get(".try-out__btn")
.click()
.get(".parameters-col_description input")
.should($el => {
expect($el).to.have.length(1)
const className = $el[0].className
expect(className).to.match(/invalid/i)
})
})
})

Loading…
Cancel
Save