import { getGutters } from './defaults/gutters.styles';
import { getGutterStyles } from './getGutterStyles';

describe('getGutterStyles', () => {
  it('should return an empty object when gutters are undefined', () => {
    expect(getGutterStyles()).toEqual({});
  });

  it('should return empty styles when undefined', () => {
    expect(getGutterStyles(undefined)).toEqual({});
  });

  it('should return styles from getGutters(0) when gutters are 0', () => {
    expect(getGutterStyles(0)).toEqual(getGutters(0));
  });
  it('should return styles object with all properties equal to the input string', () => {
    const gutters = '10px';
    const expectedStyles = {
      margin: undefined,
      marginTop: gutters,
      marginBottom: gutters,
      marginLeft: gutters,
      marginRight: gutters,
      padding: undefined,
      paddingTop: gutters,
      paddingBottom: gutters,
      paddingLeft: gutters,
      paddingRight: gutters
    };
    expect(getGutterStyles(gutters)).toEqual(expectedStyles);
  });

  it('should return styles object from getGutters function when gutters are a positive number', () => {
    const gutters = 10;
    const expectedStyles = getGutters(gutters);

    expect(getGutterStyles(gutters)).toEqual(expectedStyles);
  });
});
