checkbox.test.js 2.2 KB
Newer Older
Y
yurj26 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
function getData(key = '') {
    return new Promise(async (resolve, reject) => {
        const data = await page.data()
        resolve(key ? data[key] : data)
    })
}

let page
beforeAll(async () => {
    page = await program.reLaunch('/pages/component/checkbox/checkbox')
    await page.waitFor(1000)
})

describe('Checkbox.uvue', () => {
    it('change', async () => {
        const cb = await page.$('.cb')
        const cb1 = await page.$('.cb1')
        const cb2 = await page.$('.cb2')
        expect(await getData('value')).toEqual([])
        await cb1.tap()
        expect(await getData('value')).toEqual(["cb", "cb1"])
        await cb.tap()
        expect(await getData('value')).toEqual(["cb1"])
        await cb2.tap()
        expect(await getData('value')).toEqual(["cb1"])
    })
    it('length', async () => {
        const checkboxGroupElements = await page.$$('.checkbox-group')
        expect(checkboxGroupElements.length).toBe(3)
        const checkboxElements = await page.$$('.checkbox')
        expect(checkboxElements.length).toBe(11)
    })
    it('text', async () => {
        const cb = await page.$('.cb')
        expect(await cb.text()).toEqual('选中')
        await page.setData({
            text: 'checked'
        })
        expect(await cb.text()).toEqual('checked')
    })
    it('checked', async () => {
        const cb = await page.$('.cb')
        expect(await cb.property('checked')).toBe(true)
        await page.setData({
            checked: false
        })
        await page.waitFor(500)
        expect(await cb.property('checked')).toBe(false)
    })
    it('color', async () => {
        const cb = await page.$('.cb')
        expect(await cb.property('color')).toBe('#007aff')
        await page.setData({
            color: '#63acfc'
        })
        await page.waitFor(500)
        expect(await cb.property('color')).toBe('#63acfc')
    })
    it('disabled', async () => {
        const cb = await page.$('.cb2')
        expect(await cb.property('disabled')).toBe(true)
        await page.setData({
            disabled: false
        })
        await page.waitFor(500)
        expect(await cb.property('disabled')).toBe(false)
    })
})