import { assert } from './testUtils'
import { customElements } from '../src/compiler/options'
describe('mp-weixin: transform component', () => {
test(`component with v-show`, () => {
assert(
``,
``,
`(_ctx, _cache) => {
return { a: _ctx.ok }
}`
)
})
test(`built-in component`, () => {
const code = customElements.map((tag) => `<${tag}/>`).join('')
assert(
code,
code,
`(_ctx, _cache) => {
return {}
}`
)
})
test('lazy element: editor', () => {
assert(
``,
``,
`(_ctx, _cache) => {
return {}
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return { a: _o(_ctx.ready) }
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return _e({ a: _ctx.ok1 }, _ctx.ok1 ? { b: _o(_ctx.ready) } : _ctx.ok2 ? {} : {}, { c: _ctx.ok2 })
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return _e({ a: _ctx.ok1 }, _ctx.ok1 ? { b: _o(_ctx.ready) } : _ctx.ok2 ? {} : { d: _o(_ctx.ready) }, { c: _ctx.ok2 })
}`
)
})
test('lazy element: canvas', () => {
assert(
``,
``,
`(_ctx, _cache) => {
return {}
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return {}
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return { a: _ctx.id }
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return { a: _ctx.id }
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return { a: _ctx.id, b: _ctx.id }
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return _e({ a: _ctx.ok1 }, _ctx.ok1 ? { b: _ctx.id } : _ctx.ok2 ? {} : {}, { c: _ctx.ok2 })
}`
)
assert(
``,
``,
`(_ctx, _cache) => {
return _e({ a: _ctx.ok1 }, _ctx.ok1 ? { b: _ctx.id } : _ctx.ok2 ? {} : { d: _ctx.id }, { c: _ctx.ok2 })
}`
)
})
})