/* global cy */ import { ObjectInterface } from 'script' import InputNumber from './index.vue' describe(' 组件', () => { const propsData: ObjectInterface = { row: { label: '测试', model: 'ceshi', size: 'default', disabled: () => false, placeholder: () => '请输入' }, modelData: { ceshi: 0 } } it('呈现组件', () => { cy.mount(InputNumber, { propsData }) cy.get('input[type="number"]').should('exist') }) it('单击向上箭头时增加该值', () => { cy.mount(InputNumber, { propsData }) cy.get('.el-input-number__increase').click() cy.get('input[type="number"]').should('have.value', '1') }) it('单击向下箭头时减少该值', () => { cy.mount(InputNumber, { propsData }) cy.get('.el-input-number__decrease').click() cy.get('input[type="number"]').should('have.value', '0') }) it('在最小值处单击向下箭头时,将该值设置为最小值', () => { propsData.row.min = -20 propsData.row.step = 10 cy.mount(InputNumber, { propsData }) cy.get('input[type="number"]').clear().type('-10').type('{enter}') cy.get('.el-input-number__decrease').click() cy.get('input[type="number"]').should('have.value', '-20') }) it('在最大值处单击向上箭头时,将该值设置为最大值', () => { propsData.row.max = 99 propsData.modelData.ceshi = 99 cy.mount(InputNumber, { propsData }) cy.get('.el-input-number__increase').click() cy.get('input[type="number"]').should('have.value', '99') cy.get('.el-input-number__increase').should('have.class', 'is-disabled') }) it('输入框只能输入数字', () => { propsData.row.max = 99 propsData.modelData.ceshi = 99 cy.mount(InputNumber, { propsData }) cy.get('input[type="number"]').clear().type('abc') cy.get('input[type="number"]').should('have.value', '') }) })