Как проверить, реагирует ли материал на значение стиля интерфейса? - PullRequest
0 голосов
/ 09 апреля 2019

У меня есть компонент, который может иметь различные значения margin-right и margin-left в зависимости от реквизита.Тестирование с помощью моментальных снимков шуток - это нормально, но не идеально, поскольку при изменении самого кода он показывает только разные хэши классов.* jest-styled-components ?

Вот соответствующий код:

export interface CustomSwitchProps {
  align?: 'left' | 'right';
}

const useStyles = makeStyles((theme: Theme) => createStyles({
  root: {
    marginLeft: (({ align }: CustomSwitchProps) => align === 'left' ? -theme.spacing(3/2) : 0) as unknown as number,
    marginRight: (({ align }: CustomSwitchProps) => align === 'right' ? -theme.spacing(3/2) : 0)  as unknown as number
  }
}));

export default function AccentedSwitch({ align = 'left', ...props }: SwitchProps & CustomSwitchProps) {
  const classes = useStyles({ align });

  return <Switch {...props} classes={classes}/>;
};
...