astro-ghostcms/.pnpm-store/v3/files/3a/2e581d5363c99ca79815ae57f93...

82 lines
2.6 KiB
Plaintext

import expect from 'expect';
import isDisabledElement from '../../../src/util/isDisabledElement';
import JSXAttributeMock from '../../../__mocks__/JSXAttributeMock';
describe('isDisabledElement', () => {
describe('HTML5', () => {
describe('disabled', () => {
it('should identify HTML5 disabled elements', () => {
const attributes = [
JSXAttributeMock('disabled', 'disabled'),
];
expect(isDisabledElement(attributes))
.toBe(true);
});
});
describe('not disabled', () => {
it('should identify HTML5 disabled elements with null as the value', () => {
const attributes = [
JSXAttributeMock('disabled', null),
];
expect(isDisabledElement(attributes))
.toBe(true);
});
it('should not identify HTML5 disabled elements with undefined as the value', () => {
const attributes = [
JSXAttributeMock('disabled', undefined),
];
expect(isDisabledElement(attributes))
.toBe(false);
});
});
});
describe('ARIA', () => {
describe('disabled', () => {
it('should not identify ARIA disabled elements', () => {
const attributes = [
JSXAttributeMock('aria-disabled', 'true'),
];
expect(isDisabledElement(attributes))
.toBe(true);
});
it('should not identify ARIA disabled elements', () => {
const attributes = [
JSXAttributeMock('aria-disabled', true),
];
expect(isDisabledElement(attributes))
.toBe(true);
});
});
describe('not disabled', () => {
it('should not identify ARIA disabled elements', () => {
const attributes = [
JSXAttributeMock('aria-disabled', 'false'),
];
expect(isDisabledElement(attributes))
.toBe(false);
});
it('should not identify ARIA disabled elements', () => {
const attributes = [
JSXAttributeMock('aria-disabled', false),
];
expect(isDisabledElement(attributes))
.toBe(false);
});
it('should not identify ARIA disabled elements with null as the value', () => {
const attributes = [
JSXAttributeMock('aria-disabled', null),
];
expect(isDisabledElement(attributes))
.toBe(false);
});
it('should not identify ARIA disabled elements with undefined as the value', () => {
const attributes = [
JSXAttributeMock('aria-disabled', undefined),
];
expect(isDisabledElement(attributes))
.toBe(false);
});
});
});
});