vant/src-next/utils/test/bem.spec.js
2020-07-05 08:32:49 +08:00

40 lines
1.0 KiB
JavaScript

import { createBEM } from '../create/bem';
test('bem', () => {
const bem = createBEM('button');
expect(bem()).toEqual('button');
expect(bem('text')).toEqual('button__text');
expect(bem({ disabled: false })).toEqual('button');
expect(bem({ disabled: true })).toEqual('button button--disabled');
expect(bem('text', { disabled: true })).toEqual(
'button__text button__text--disabled'
);
expect(bem(['disabled', 'primary'])).toEqual(
'button button--disabled button--primary'
);
expect(bem([])).toEqual('button');
expect(bem(null)).toEqual('button');
expect(bem([null])).toEqual('button');
expect(bem(['disabled', ''])).toEqual('button button--disabled');
expect(bem(['disabled', undefined])).toEqual('button button--disabled');
expect(bem('text', ['disabled', 'primary'])).toEqual(
'button__text button__text--disabled button__text--primary'
);
expect(bem('text', [{ disabled: true }, 'primary'])).toEqual(
'button__text button__text--disabled button__text--primary'
);
});