Files
NapCatQQ/.pnpm-store/v3/files/de/94ad5f7d82961f6e8cef37b2681d4b44fdb2509b07e22ad1d78665b8745e33650c2bd2284568b5d7017829eeae1e09e4f4655f971f778ada9b65f13ffb7ceb
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

63 lines
1.8 KiB
Plaintext

import { camelCase } from './utilities';
describe('camelCase', () => {
it('returns "" for empty string', () => {
expect(camelCase('')).toBe('');
});
// no hyphen
it.each([
['foo', 'foo'],
['fooBar', 'fooBar'],
])('does not transform "%s"', (property, expected) => {
expect(camelCase(property)).toBe(expected);
});
// custom property
it.each([
['--fooBar', '--fooBar'],
['--foo-bar', '--foo-bar'],
['--foo-100', '--foo-100'],
['--test_ing', '--test_ing'],
])('does not transform custom property "%s"', (property, expected) => {
expect(camelCase(property)).toBe(expected);
});
// vendor prefix
it.each([
['-khtml-transition', 'khtmlTransition'],
['-moz-user-select', 'mozUserSelect'],
['-ms-transform', 'msTransform'],
['-ms-user-select', 'msUserSelect'],
['-o-transition', 'oTransition'],
['-webkit-transition', 'webkitTransition'],
['-webkit-user-select', 'webkitUserSelect'],
])('transforms vendor prefix "%s" to "%s"', (property, expected) => {
expect(camelCase(property)).toBe(expected);
});
it.each([
['foo-bar', 'fooBar'],
['foo-bar-baz', 'fooBarBaz'],
['CAMEL-CASE', 'camelCase'],
])('transforms "%s" to "%s"', (property, expected) => {
expect(camelCase(property)).toBe(expected);
});
describe('option reactCompat is true', () => {
const options = { reactCompat: true };
it.each([
['-khtml-transition', 'KhtmlTransition'],
['-o-transition', 'OTransition'],
['-moz-user-select', 'MozUserSelect'],
['-ms-transform', 'msTransform'],
['-ms-user-select', 'msUserSelect'],
['-webkit-transition', 'WebkitTransition'],
['-webkit-user-select', 'WebkitUserSelect'],
])('capitalizes vendor prefix "%s" to "%s"', (property, expected) => {
expect(camelCase(property, options)).toBe(expected);
});
});
});