import React from 'react';
import { mount } from 'enzyme';
import { BASE_CLASS_PREFIX } from '../../../semi-foundation/base/constants';
import Space from '../index';
describe('Space', () => {
it('spacing', () => {
const defaultNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const looseNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const mediumNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const tightNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const numberNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const arrayNumberNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
const arrayStringNode = mount(
{Array.from(Array(5)).map((i, idx) => (
content
))}
);
expect(defaultNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-tight-horizontal')).toEqual(true);
expect(defaultNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-tight-vertical')).toEqual(true);
expect(looseNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-loose-horizontal')).toEqual(true);
expect(looseNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-loose-vertical')).toEqual(true);
expect(mediumNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-medium-horizontal')).toEqual(true);
expect(mediumNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-medium-vertical')).toEqual(true);
expect(tightNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-tight-horizontal')).toEqual(true);
expect(tightNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-tight-vertical')).toEqual(true);
expect(numberNode.find(`.${BASE_CLASS_PREFIX}-space`).getDOMNode().style['column-gap']).toEqual('20px');
expect(numberNode.find(`.${BASE_CLASS_PREFIX}-space`).getDOMNode().style['row-gap']).toEqual('20px');
expect(arrayNumberNode.find(`.${BASE_CLASS_PREFIX}-space`).getDOMNode().style['column-gap']).toEqual('10px');
expect(arrayNumberNode.find(`.${BASE_CLASS_PREFIX}-space`).getDOMNode().style['row-gap']).toEqual('20px');
expect(arrayStringNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-tight-horizontal')).toEqual(
true
);
expect(arrayStringNode.find(`.${BASE_CLASS_PREFIX}-space`).hasClass('semi-space-loose-vertical')).toEqual(true);
});
it('children render', () => {
const containNullNode = mount(
content
{null}
content
{false}
content
{undefined}
<>
content
content
>
);
const children = containNullNode.find(`.${BASE_CLASS_PREFIX}-space`).children();
expect(children.length).toEqual(5);
});
});