/* global cy */ import { ObjectInterface } from 'script' import InfoTransfer from './index.vue' const mount = () => { const row: ObjectInterface = { model: 'ceshi', options: () => [ { key: '1', label: 'Option 1' }, { key: '2', label: 'Option 2' } ], leftDefaultChecked: ['1'], rightDefaultChecked: [], methods: cy.spy().as('handleChange') } cy.mount(InfoTransfer, { props: { row, modelData: {} } }) } describe('', () => { it('当传输数据发生变化时应该调用handleChange', () => { mount() cy.get('.el-transfer-panel__body .el-transfer-panel__list .el-checkbox__input .el-checkbox__original').should( 'have.attr', 'value', '1' ) cy.get('.el-transfer__buttons').find('button[aria-disabled="false"]').click() cy.get('.el-transfer__buttons').find('.is-disabled').should('have.length', 2) cy.get('@handleChange').should('have.been.called') }) it('全选', () => { mount() cy.get('.el-transfer-panel').contains('List 1').click() cy.get('.el-transfer-panel__body .el-transfer-panel__list') .find('.el-checkbox.is-checked') .should('have.length', 2) cy.get('.el-transfer__buttons').find('button[aria-disabled="false"]').click() cy.get('@handleChange').should('have.been.called') }) })