popconfirm.spec.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. // popConfirm.spec.js created with Cypress
  2. //
  3. // Start writing your Cypress tests below!
  4. // If you're unfamiliar with how Cypress works,
  5. // check out the link below and learn how to write your first test:
  6. // https://on.cypress.io/writing-first-test
  7. // Start writing your Cypress tests below!
  8. // If you're unfamiliar with how Cypress works,
  9. // check out the link below and learn how to write your first test:
  10. // https://on.cypress.io/writing-first-test
  11. describe('popConfirm', () => {
  12. it('confirm focus', () => {
  13. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--keyboard-and-focus&args=&viewMode=story');
  14. cy.get('[data-cy=initial-focus-confirm]').click();
  15. cy.get('.semi-popconfirm-footer .semi-button').eq(1).should('be.focused');
  16. cy.get('.semi-popconfirm-footer .semi-button').eq(1).click();
  17. // return focus to trigger
  18. cy.get('[data-cy=initial-focus-confirm] .semi-button').should('be.focused');
  19. });
  20. it('cancel focus', () => {
  21. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--keyboard-and-focus&args=&viewMode=story');
  22. cy.get('[data-cy=initial-focus-cancel]').click();
  23. cy.get('.semi-popconfirm-footer .semi-button').eq(0).should('be.focused');
  24. cy.get('.semi-popconfirm-footer .semi-button').eq(0).click();
  25. cy.get('[data-cy=initial-focus-cancel] .semi-button').should('be.focused');
  26. });
  27. it('content focus', () => {
  28. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--keyboard-and-focus&args=&viewMode=story');
  29. cy.get('[data-cy=initial-focus-content]').click();
  30. cy.get('.semi-popconfirm-body input').eq(0).should('be.focused');
  31. cy.get('.semi-popconfirm-header .semi-button').eq(0).click();
  32. cy.get('[data-cy=initial-focus-content] .semi-button').should('be.focused');
  33. });
  34. it('content esc keydown-1', () => {
  35. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--esc-key-down&viewMode=story');
  36. cy.get('[data-cy=content]').click();
  37. cy.get('.test-ok').type('{esc}');
  38. cy.get('.test-ok').should('not.exist');
  39. });
  40. it('content esc keydown-2', () => {
  41. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--esc-key-down&viewMode=story', {
  42. onBeforeLoad(win) {
  43. cy.stub(win.console, 'log').as('consoleLog');
  44. },
  45. });
  46. cy.get('[data-cy=trigger]').click();
  47. cy.get('.test-text').click();
  48. cy.get('@consoleLog').should('be.calledWith', 'clicked');
  49. cy.get('.test-text').type('{esc}');
  50. cy.get('.test-ok').should('not.exist');
  51. });
  52. it('onConfirm promise', () => {
  53. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--promise-callback&viewMode=story');
  54. cy.get('.semi-button').click();
  55. cy.get('.semi-button').contains('确定').click();
  56. cy.get('.semi-button-loading').contains('确定');
  57. cy.wait(2000);
  58. cy.get('.semi-button-loading').should('not.exist');
  59. });
  60. it('onCancel promise', () => {
  61. cy.visit('http://localhost:6006/iframe.html?id=popconfirm--promise-callback&viewMode=story');
  62. cy.get('.semi-button').click();
  63. cy.get('.semi-button').contains('取消').click();
  64. cy.wait(2000);
  65. cy.get('.semi-button-loading').should('not.exist');;
  66. });
  67. });