提交 433a49fd 编写于 作者: F fxy060608

更新 uts插件keepAlive测试例

上级 6bf6115b
...@@ -46,19 +46,27 @@ if (process.env.UNI_PROJECT_TYPE === '2.0' && process.env.uniTestPlatformInfo.to ...@@ -46,19 +46,27 @@ if (process.env.UNI_PROJECT_TYPE === '2.0' && process.env.uniTestPlatformInfo.to
} }
if (process.env.UNI_PROJECT_TYPE === '2.0' && (process.env.uniTestPlatformInfo.toLocaleLowerCase().startsWith('ios') || process.env.uniTestPlatformInfo.startsWith('android'))) { if (process.env.UNI_PROJECT_TYPE === '2.0' && (process.env.uniTestPlatformInfo.toLocaleLowerCase().startsWith('ios') || process.env.uniTestPlatformInfo.startsWith('android'))) {
describe('testCallbackKeepAlive2.0', () => { describe('testCallbackKeepAlive', () => {
it("jest_testCallbackKeepAlive", async () => { it("jest_testCallbackKeepAlive", async () => {
const res = await page.callMethod('jest_testCallbackKeepAlive') const res = await page.callMethod('jest_testCallbackKeepAlive')
expect(res).toEqual(true) expect(res).toEqual(true)
}) })
it("jest_testCallbackNonKeepAlive", async () => {
const res = await page.callMethod('jest_testCallbackNonKeepAlive')
expect(res).toEqual(4)
})
}) })
} }
if (process.env.UNI_PROJECT_TYPE === '1.0' && (process.env.uniTestPlatformInfo.toLocaleLowerCase().startsWith('ios') || process.env.uniTestPlatformInfo.startsWith('android'))) { if (process.env.UNI_PROJECT_TYPE === '1.0' && (process.env.uniTestPlatformInfo.toLocaleLowerCase().startsWith('ios') || process.env.uniTestPlatformInfo.startsWith('android'))) {
describe('testCallbackKeepAlive1.0', () => { describe('testCallbackKeepAlive', () => {
it("jest_testCallbackKeepAlive", async () => { it("jest_testCallbackKeepAlive", async () => {
const res = await page.callMethod('jest_testCallbackKeepAlive') const res = await page.callMethod('jest_testCallbackKeepAlive')
expect(res).toEqual(20) expect(res).toEqual(20)
}) })
it("jest_testCallbackNonKeepAlive", async () => {
const res = await page.callMethod('jest_testCallbackNonKeepAlive')
expect(res).toEqual(4)
})
}) })
} }
...@@ -25,7 +25,8 @@ import { runTests, Result } from '../../uni_modules/uts-tests' ...@@ -25,7 +25,8 @@ import { runTests, Result } from '../../uni_modules/uts-tests'
import { testTypeFromAppJs, Options } from '@/uni_modules/uts-ios-tests'; import { testTypeFromAppJs, Options } from '@/uni_modules/uts-ios-tests';
// #endif // #endif
// #ifdef APP // #ifdef APP
import { onTest1, testKeepAlive, testKeepAliveOption, TestKeepAliveClass, TestKeepAliveOption, } from '@/uni_modules/uts-tests' import { onTest1, testKeepAlive, testKeepAliveOption, createTest, TestKeepAliveClass, TestKeepAliveOption, } from '@/uni_modules/uts-tests'
import { testNonKeepAlive, testNonKeepAliveOption } from '@/uni_modules/uts-tests'
// #endif // #endif
export default { export default {
data() { data() {
...@@ -34,6 +35,8 @@ export default { ...@@ -34,6 +35,8 @@ export default {
resultArray: [] as Result[], resultArray: [] as Result[],
result: {} as UTSJSONObject, result: {} as UTSJSONObject,
names: [] as string[], names: [] as string[],
keepAliveCount: 0,
nonKeepAliveCount: 0
} }
}, },
onReady() { onReady() {
...@@ -52,6 +55,11 @@ export default { ...@@ -52,6 +55,11 @@ export default {
this.names.push(key) this.names.push(key)
this.resultArray.push(resultMap[key] as Result) this.resultArray.push(resultMap[key] as Result)
} }
console.log('jest_testCallbackKeepAlive:' + this.jest_testCallbackKeepAlive())
this.jest_testCallbackNonKeepAlive().then(res=>{
console.log('jest_testCallbackNonKeepAlive:' + res)
})
}, },
// #ifdef APP-IOS // #ifdef APP-IOS
jest_testTypeFromAppJs() { jest_testTypeFromAppJs() {
...@@ -163,7 +171,41 @@ export default { ...@@ -163,7 +171,41 @@ export default {
if (count < 2) { if (count < 2) {
ret = false ret = false
} }
count = 0;
const testImpl = createTest()
testImpl.test((res) => {
count++;
console.log("TestImpl.test callback =====> ", res)
})
if (count < 2) {
ret = false
}
this.keepAliveCount = count
return ret return ret
},
jest_testCallbackNonKeepAlive(): Promise<number> {
let count = 0
const fn = (res:string) => {
count++;
console.log("testCallbackNonKeepAlive callback =====> ", res)
}
testNonKeepAlive(fn)
testNonKeepAlive(fn)
const options: TestKeepAliveOption = {
a:'a',
success(res:string){
count++;
console.log("testCallbackNonKeepAliveOption callback =====> ", res)
}
}
testNonKeepAliveOption(options)
testNonKeepAliveOption(options)
return new Promise((resolve)=>{
setTimeout(()=>{
this.nonKeepAliveCount = count
resolve(count)
},50)
})
} }
// #endif // #endif
}, },
......
...@@ -21,11 +21,14 @@ ...@@ -21,11 +21,14 @@
runTests runTests
} from '../../uni_modules/uts-tests' } from '../../uni_modules/uts-tests'
import { onTest1, testKeepAlive, testKeepAliveOption, createTest, TestKeepAliveClass } from '@/uni_modules/uts-tests' import { onTest1, testKeepAlive, testKeepAliveOption, createTest, TestKeepAliveClass } from '@/uni_modules/uts-tests'
import { testNonKeepAlive, testNonKeepAliveOption } from '@/uni_modules/uts-tests'
export default { export default {
data() { data() {
return { return {
title: 'UTS基础语法', title: 'UTS基础语法',
result: {} result: {},
keepAliveCount: 0,
nonKeepAliveCount: 0
} }
}, },
onReady() { onReady() {
...@@ -36,6 +39,7 @@ ...@@ -36,6 +39,7 @@
this.result = runTests() this.result = runTests()
console.log(this.result) console.log(this.result)
console.log('jest_testCallbackKeepAlive:' + await this.jest_testCallbackKeepAlive()) console.log('jest_testCallbackKeepAlive:' + await this.jest_testCallbackKeepAlive())
console.log('jest_testCallbackNonKeepAlive:' + await this.jest_testCallbackNonKeepAlive())
}, },
jest_testCallbackKeepAlive() { jest_testCallbackKeepAlive() {
...@@ -150,6 +154,40 @@ ...@@ -150,6 +154,40 @@
} }
return new Promise((resolve)=>{ return new Promise((resolve)=>{
setTimeout(()=>{ setTimeout(()=>{
this.keepAliveCount = count
resolve(count)
},30)
})
},
jest_testCallbackNonKeepAlive() {
let ret = true
let count = 0
// 使用相同的回调函数多次传递调用,确保每次都正常
const fn = (res) => {
count++;
console.log("testCallbackNonKeepAlive callback =====> ", res)
}
testNonKeepAlive(fn)
testNonKeepAlive(fn)
if (count < 2) {
ret = false
}
count = 0
const options = {
a:'a',
success(res){
count++;
console.log("testCallbackNonKeepAliveOption callback =====> ", res)
}
}
testNonKeepAliveOption(options)
testNonKeepAliveOption(options)
if (count < 2) {
ret = false
}
return new Promise((resolve)=>{
setTimeout(()=>{
this.nonKeepAliveCount = count
resolve(count) resolve(count)
},30) },30)
}) })
......
...@@ -158,5 +158,18 @@ class TestImpl implements ITest { ...@@ -158,5 +158,18 @@ class TestImpl implements ITest {
export function createTest() : ITest { export function createTest() : ITest {
return new TestImpl() return new TestImpl()
} }
export function testNonKeepAlive(callback: (res: string) => void){
setTimeout(()=>{
callback("1")
},10)
}
export function testNonKeepAliveOption(option: TestKeepAliveOption) {
console.log(option.a);
setTimeout(()=>{
option.success?.("1")
},10)
}
// #endif // #endif
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册