provide.test.js 4.3 KB
Newer Older
DCloud-WZF's avatar
DCloud-WZF 已提交
1
const PAGE_PATH = '/pages/composition/provide/provide'
2 3
describe('字面量方式创建 provide', () => {
	const isSafari = process.env.uniTestPlatformInfo.toLowerCase().indexOf('safari') > -1
雪洛's avatar
雪洛 已提交
4
  const isWeb = process.env.uniTestPlatformInfo.startsWith('web')
雪洛's avatar
雪洛 已提交
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
  let page
  beforeAll(async () => {
    page = await program.reLaunch(PAGE_PATH)
    await page.waitFor('view')
  })
  it('alias', async () => {
    const aliasProvidePageTitleEl = await page.$('.alias-provide-page-title')
    const aliasProvidePageTitleText = await aliasProvidePageTitleEl.text()
    expect(aliasProvidePageTitleText).toBe(
      'aliasProvidePageTitle: default alias provide page title'
    )
  })
  it('string', async () => {
    const providePageStrEl = await page.$('.provide-page-str')
    const providePageStrText = await providePageStrEl.text()
    expect(providePageStrText).toBe(
      'providePageStr: 字面量方式定义 provide page str'
    )
  })
  it('number', async () => {
    const providePageNumEl = await page.$('.provide-page-num')
    const providePageNumText = await providePageNumEl.text()
    expect(providePageNumText).toBe('providePageNum: 1')
  })
  it('boolean', async () => {
    const providePageBoolEl = await page.$('.provide-page-bool')
    const providePageBoolText = await providePageBoolEl.text()
    expect(providePageBoolText).toBe('providePageBool: true')
  })
  it('object', async () => {
    const providePageObjectTitleEl = await page.$(
      '.provide-page-object-title'
    )
    const providePageObjectTitleText = await providePageObjectTitleEl.text()
    expect(providePageObjectTitleText).toBe(
      'providePageObject.title: 字面量方式定义 provide page object title'
    )
    const providePageObjectContentEl = await page.$(
      '.provide-page-object-content'
    )
    const providePageObjectContentText =
      await providePageObjectContentEl.text()
    expect(providePageObjectContentText).toBe(
      'providePageObject.content: 字面量方式定义 provide page object content'
    )
  })
  it('array', async () => {
    const providePageArrEl = await page.$('.provide-page-arr')
53
    const providePageArrText = await providePageArrEl.text()
雪洛's avatar
雪洛 已提交
54
    expect(providePageArrText).toBe(
55
      isSafari ? 'providePageArr: [ "字面量方式定义 provide page arr"]' : 'providePageArr: ["字面量方式定义 provide page arr"]'
雪洛's avatar
雪洛 已提交
56 57 58 59 60 61
    )
  })
  it('map', async () => {
    const providePageMapEl = await page.$('.provide-page-map')
    const providePageMapText = await providePageMapEl.text()
    expect(providePageMapText).toBe(
62
      isWeb ? (isSafari ? 'providePageMap: { "key": "字面量方式定义 provide page map"}' : 'providePageMap: {"key": "字面量方式定义 provide page map"}') : 'providePageMap: {"key":"字面量方式定义 provide page map"}'
雪洛's avatar
雪洛 已提交
63 64 65 66 67 68
    )
  })
  it('set', async () => {
    const providePageSetEl = await page.$('.provide-page-set')
    const providePageSetText = await providePageSetEl.text()
    expect(providePageSetText).toBe(
69
      isSafari ? 'providePageSet: [ "字面量方式定义 provide page set"]' : 'providePageSet: ["字面量方式定义 provide page set"]'
雪洛's avatar
雪洛 已提交
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
    )
  })
  it('string default value', async () => {
    const testInjectStringDefaultValueEl = await page.$(
      '.test-inject-string-default-value'
    )
    const testInjectStringDefaultValueText =
      await testInjectStringDefaultValueEl.text()
    expect(testInjectStringDefaultValueText).toBe(
      'testInjectStringDefaultValue: test inject string default value'
    )
  })
  it('object default value', async () => {
    const testInjectObjectDefaultValueTitleEl = await page.$(
      '.test-inject-object-default-value-title'
    )
    const testInjectObjectDefaultValueTitleText =
      await testInjectObjectDefaultValueTitleEl.text()
    expect(testInjectObjectDefaultValueTitleText).toBe(
      'testInjectObjectDefaultValue.title: test inject object default value title'
    )
DCloud-WZF's avatar
DCloud-WZF 已提交
91

雪洛's avatar
雪洛 已提交
92 93 94 95 96 97 98 99 100
    const testInjectObjectDefaultValueContentEl = await page.$(
      '.test-inject-object-default-value-content'
    )
    const testInjectObjectDefaultValueContentText =
      await testInjectObjectDefaultValueContentEl.text()
    expect(testInjectObjectDefaultValueContentText).toBe(
      'testInjectObjectDefaultValue.content: test inject object default value content'
    )
  })
DCloud-WZF's avatar
DCloud-WZF 已提交
101
})