123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
- const isMP = platformInfo.startsWith('mp')
- describe('Radio.uvue', () => {
- let page
- beforeAll(async () => {
- page = await program.reLaunch('/pages/component/radio/radio')
- await page.waitFor(2000)
- })
- it('change', async () => {
- expect(await page.data('value')).toEqual('')
- const radio1 = await page.$('.r1')
- await radio1.tap()
- await page.waitFor(100)
- expect(await page.data('value')).toEqual('r1')
- const radio = await page.$('.r')
- await radio.tap()
- await page.waitFor(100)
- expect(await page.data('value')).toEqual('r')
- const radio2 = await page.$('.r2')
- await radio2.tap()
- await page.waitFor(100)
- expect(await page.data('value')).toEqual('r')
- })
- it('length', async () => {
- const radioGroupElements = await page.$$('.radio-group')
- expect(radioGroupElements.length).toBe(4)
- const radioElements = await page.$$('.radio')
- expect(radioElements.length).toBe(12)
- })
- it('text', async () => {
- const radio = await page.$('.r1')
- expect(await radio.text()).toEqual('未选中')
- await page.setData({
- text: 'not selected',
- })
- expect(await radio.text()).toEqual('not selected')
- })
- if(!isMP) {
- // TODO property('checked')应取到实际显示的值(微信小程序)还是绑定的值(web、app)
- it('checked', async () => {
- const radio = await page.$('.r')
- // TODO
- const newValue1 = await radio.property('checked')
- expect(newValue1.toString()).toBe(true + '')
- await page.setData({
- checked: false,
- })
- const newValue2 = await radio.property('checked')
- expect(newValue2.toString()).toBe(false + '')
- })
- }
- it('color', async () => {
- const radio = await page.$('.r')
- expect(await radio.attribute('color')).toBe('#007aff')
- await page.setData({
- color: '#63acfc',
- })
- expect(await radio.attribute('color')).toBe('#63acfc')
- })
- if(isMP) {
- it('disabled', async () => {
- const radio = await page.$('.r2')
- expect(await radio.property('disabled')).toBe(true)
- await page.setData({
- disabled: false,
- })
- expect(await radio.property('disabled')).toBe(false)
- })
- } else {
- it('disabled', async () => {
- const radio = await page.$('.r2')
- expect(await radio.attribute('disabled')).toBe(true + '')
- await page.setData({
- disabled: false,
- })
- expect(await radio.attribute('disabled')).toBe(false + '')
- })
- }
- if(!isMP) {
- it('trigger UniRadioGroupChangeEvent', async () => {
- const { current } = await page.data()
- const nextCurrent = current == 0 ? 1 : 0
- const elements = await page.$$('.recommand')
- await elements[nextCurrent].tap()
- await page.waitFor(500)
- const { eventTest } = await page.data()
- expect(eventTest).toEqual(true)
- })
- }
- })
|