提交 93ed0963 编写于 作者: DCloud-WZF's avatar DCloud-WZF 💬

test(list-view): 补充边界测试

上级 ae26661a
<template> <template>
<list-view> <list-view>
<slot></slot> <list-item>start</list-item>
<slot name="default"></slot>
<list-item>middle</list-item>
<slot name="second"></slot>
<list-item>end</list-item>
</list-view> </list-view>
</template> </template>
describe('list-view-children-in-slot', () => { describe('list-view-children-in-slot', () => {
if (process.env.uniTestPlatformInfo.startsWith('web')) { if (process.env.uniTestPlatformInfo.startsWith('web')) {
it('dummyTest', async () => { it('dummyTest', async () => {
expect(1).toBe(1) expect(1).toBe(1)
}) })
return return
} }
let page let page
beforeAll(async () => { beforeAll(async () => {
...@@ -12,39 +12,39 @@ describe('list-view-children-in-slot', () => { ...@@ -12,39 +12,39 @@ describe('list-view-children-in-slot', () => {
}) })
it('basic', async () => { it('basic', async () => {
let listItems = await page.$$('list-item') let listItems = await page.$$('list-item')
expect(listItems.length).toBe(3) expect(listItems.length).toBe(9)
let texts = await page.$$('.text-in-list-item') let texts = await page.$$('.text-in-list-item')
for(let i = 0;i<texts.length;i++){ for (let i = 0; i < texts.length; i++) {
expect(await texts[i].text()).toBe(`${i}`) expect(await texts[i].text()).toBe(`${i > (texts.length / 2 - 1)? i - texts.length / 2 : i}`)
} }
const addBtn = await page.$('#add-btn') const addBtn = await page.$('#add-btn')
await addBtn.tap() await addBtn.tap()
listItems = await page.$$('list-item') listItems = await page.$$('list-item')
expect(listItems.length).toBe(4) expect(listItems.length).toBe(11)
texts = await page.$$('.text-in-list-item') texts = await page.$$('.text-in-list-item')
for(let i = 0;i<texts.length;i++){ for (let i = 0; i < texts.length; i++) {
expect(await texts[i].text()).toBe(`${i}`) expect(await texts[i].text()).toBe(`${i > (texts.length / 2 - 1)? i - texts.length / 2 : i}`)
} }
const emptyBtn = await page.$('#empty-btn') const emptyBtn = await page.$('#empty-btn')
await emptyBtn.tap() await emptyBtn.tap()
listItems = await page.$$('list-item') listItems = await page.$$('list-item')
expect(listItems.length).toBe(0) expect(listItems.length).toBe(3)
await addBtn.tap() await addBtn.tap()
listItems = await page.$$('list-item') listItems = await page.$$('list-item')
expect(listItems.length).toBe(1) expect(listItems.length).toBe(5)
texts = await page.$$('.text-in-list-item') texts = await page.$$('.text-in-list-item')
for(let i = 0;i<texts.length;i++){ for (let i = 0; i < texts.length; i++) {
expect(await texts[i].text()).toBe(`${i}`) expect(await texts[i].text()).toBe(`0`)
} }
}) })
}) })
...@@ -6,11 +6,18 @@ ...@@ -6,11 +6,18 @@
<page-head title="getApp"></page-head> <page-head title="getApp"></page-head>
<view class="uni-padding-wrap"> <view class="uni-padding-wrap">
<list-view-wrapper> <list-view-wrapper>
<list-item v-for="item in list" :key="item"> <template #default>
<text class="text-in-list-item">{{item}}</text> <list-item v-for="item in list" :key="item">
</list-item> <text class="text-in-list-item">{{item}}</text>
</list-view-wrapper> </list-item>
<button id="add-btn" class="uni-common-mt" @click="addItem">add item</button> </template>
<template #second>
<list-item v-for="item in list" :key="item">
<text class="text-in-list-item">{{item}}</text>
</list-item>
</template>
</list-view-wrapper>
<button id="add-btn" class="uni-common-mt" @click="addItem">add item</button>
<button id="empty-btn" class="uni-common-mt" @click="emptyList">empty list</button> <button id="empty-btn" class="uni-common-mt" @click="emptyList">empty list</button>
</view> </view>
</view> </view>
...@@ -29,13 +36,13 @@ ...@@ -29,13 +36,13 @@
list: [0, 1, 2] list: [0, 1, 2]
} }
}, },
methods: { methods: {
addItem(){ addItem() {
this.list.push(this.list.length) this.list.push(this.list.length)
}, },
emptyList(){ emptyList() {
this.list = [] this.list = []
} }
} }
} }
</script> </script>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册