consta-design-system / uikit

https://consta.design/libs/uikit
MIT License
231 stars 93 forks source link

tests: Актуализировать тесты #955

Open gizeasy opened 3 years ago

gizeasy commented 3 years ago

Проверить покрытие тестами И просмотреть качество тестов

Результат : задачки по доработки

AntonS86 commented 3 years ago

Что не покрыто тестами

Компоненты

BasicSelectDeprecated

  1. Вызов дефолтной функции поиска https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/BasicSelectDeprecated/BasicSelectDeprecated.tsx#L83

  2. Передача невалидной dropdownRef https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/BasicSelectDeprecated/BasicSelectDeprecated.tsx#L71

  3. перевод фокуса на input при выборе option https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/BasicSelectDeprecated/BasicSelectDeprecated.tsx#L122

  4. отсутствует сценарий, когда в фугкции renderItemDefault нет item https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/BasicSelectDeprecated/BasicSelectDeprecated.tsx#L148

  5. Вызов SelectItem с параметром indent = 'increased' https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/BasicSelectDeprecated/BasicSelectDeprecated.tsx#L154

Breadcrumbs

  1. обработчик onClick по элементу списка https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Breadcrumbs/Breadcrumbs.tsx#L100
  2. условия отображения иконки https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Breadcrumbs/Breadcrumbs.tsx#L90
  3. условия статуса ссылки, isActive или !isActive https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Breadcrumbs/Breadcrumbs.tsx#L93

Calendar

  1. протестировать во всех режимах export const calendarPropView = ['oneMonth', 'twoMonths', 'slider'] as const; https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L26

helpers.ts

  1. Сравнение дат https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L71
  2. getStartAndEndDate https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L74
  3. isDateSelected https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L77
  4. isValueSelected https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L81
  5. isValueSelectedBackwards https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L99
  6. Проверить необходимость этого условия https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L128
  7. isWithInIntervalMinMaxDade https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L155
  8. getHandleSelectDate https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L248
  9. getCurrentVisibleDate https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/helpers.ts#L326

CalendarSlider.tsx

  1. Покрыт на 25 %

CalendarViewOneMonth

  1. Обработчики переключения месяца nextMonthHandle и prevMonthHandle https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Calendar/CalendarViewOneMonth/CalendarViewOneMonth.tsx#L54

CalendarViewSlider.tsx

  1. сценарий не вызывается в тестах

CalendarViewTwoMonths.tsx

  1. сценарий не вызывается в тестах

Card

  1. тестов нет

ChoiceGroup

ChoiceGroup-Item.tsx

  1. Установка и снятие фокуса https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ChoiceGroup/Item/ChoiceGroup-Item.tsx#L22

Collapse

CollapseIcon.tsx

  1. сценарий props.closeIcon отсутствует https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/Collapse/CollapseIcon/CollapseIcon.tsx#L52

CollapseGroup

helpers.ts

  1. Сценарий с дефолтным лэйблом https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/CollapseGroup/helpers.ts#L80

  2. Сценарий с дефолтным контетом https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/CollapseGroup/helpers.ts#L81

ComboboxDeprecated

  1. Дефолтный поиск https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L102

  2. фокус https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L132

  3. blur https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L143

  4. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L169

  5. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L174

  6. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L178

  7. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L182

  8. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ComboboxDeprecated/ComboboxDeprecated.tsx#L200

ContextMenu

  1. Добавление уровня https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenu.tsx#L52

  2. Удаление уровня https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenu.tsx#L76

  3. https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenu.tsx#L118

ContextMenuLevel.tsx

  1. Установка hover https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.tsx#L123 https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.tsx#L151

  2. Сортировка групп меню https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.tsx#L84

DragNDropField

  1. Тесты отсутствуют

    formatFileSize.ts

  2. для чего это, нет теста https://github.com/gazprom-neft/consta-uikit/blob/3393b9f3c497edda796f2e770cd08fa21a6e8172/src/components/DragNDropField/formatFileSize.ts#L14

EventInterceptor

usePropsHandler.tsx

  1. https://github.com/gazprom-neft/consta-uikit/blob/9ab034375657559c016810962280e0c9f770283f/src/components/EventInterceptor/usePropsHandler.tsx#L18

propsHandlers/useTextFieldEventsHandler.tsx

  1. https://github.com/gazprom-neft/consta-uikit/blob/9ab034375657559c016810962280e0c9f770283f/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.tsx#L65
  2. https://github.com/gazprom-neft/consta-uikit/blob/9ab034375657559c016810962280e0c9f770283f/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.tsx#L86

Grid

  1. Тестов нет

GridItem.tsx

  1. Нет тестов

Header

HeaderSearchBar.tsx

  1. Условие с лэйблом https://github.com/gazprom-neft/consta-uikit/blob/9ab034375657559c016810962280e0c9f770283f/src/components/Header/SearchBar/HeaderSearchBar.tsx#L50

Modal

  1. Обработчики клавиш https://github.com/gazprom-neft/consta-uikit/blob/9ab034375657559c016810962280e0c9f770283f/src/components/Modal/Modal.tsx#L93

MultiComboboxDeprecated

  1. поиск по умолчанию https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L119

  2. обработчики handleInputFocus, handleInputBlur, handleClear, handleClearButtonFocus, handleClearButtonBlur, handleInputChange, handleCreate, handleRemoveValue, handleRemove https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L152 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L163 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L189 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L195 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L199 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L203 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L221 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L228 https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/MultiComboboxDeprecated/MultiComboboxDeprecated.tsx#L300

Pagination

  1. handleClick https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Pagination/Pagination.tsx#L110

  2. handleChange https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Pagination/Pagination.tsx#L115

  3. keyUpListener https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Pagination/Pagination.tsx#L126

  4. keyDownListener https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Pagination/Pagination.tsx#L132

  5. Условия рендера зависящие от type === paginationDefaultType, по умолчанию default, проверить input https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Pagination/Pagination.tsx#L188

Popover

  1. Тестов на компонент нет

PortalWithTheme

  1. Проверить присвоение refs https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/PortalWithTheme/PortalWithThemeContext/PortalWithThemeContext.tsx#L30

Responses

  1. Нет тестов

Select

  1. рендер placeholder https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Select/Select.tsx#L155

SelectComponents

SelectCreateButton.tsx

  1. Нет тетстов

SelectDropdown.tsx

  1. Отсутствие элементов в дропдауне https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponents/SelectDropdown/SelectDropdown.tsx#L126

SelectValueTag.tsx

  1. Отсутствие функции handleRemove https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponents/SelectValueTag/SelectValueTag.tsx#L20

SelectComponentsDeprecated

SelectCreateButton.tsx

  1. Нет тестов

SelectCreateButton.tsx

  1. Нет тестов

SelectDropdown.tsx

  1. Группировка https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.tsx#L106
  2. условие shouldShowGroupName https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.tsx#L121
  3. условие isOptionForCreate https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.tsx#L124
  4. Отсутствие options для выбора https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.tsx#L148

SelectGroupLabel.tsx

  1. Нет тестов

SelectValueTag.tsx

  1. Условие disabled https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SelectComponentsDeprecated/SelectValueTag/SelectValueTag.tsx#L21

SkeletonBrick

  1. Нет тестов

SnackBar

SnackBar-ActionButton.tsx

  1. Отсутствие Actions https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SnackBar/ActionButton/SnackBar-ActionButton.tsx#L15

    SnackBar-Timer.tsx

  2. рендер таймера https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/SnackBar/Timer/SnackBar-Timer.tsx#L48

Steps

  1. Сценарии пропсов getCompleted, getSkipped

Table

  1. Сортировка по умолчанию https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Table/Table.tsx#L204
  2. Ресайз
  3. Удаление фильтров
  4. скролл таблицы
  5. Объединение ячеек
  6. Подстроки и их обработка (разворачивание и сворачивание)
  7. Обработчики по строке onRowHover
  8. Обработчик по ячейки handleSelectRow
  9. Сценарий отсутствия строк https://github.com/gazprom-neft/consta-uikit/blob/756fc839009932b5c37d7aadfcae6f40c1090119/src/components/Table/Table.tsx#L763
  10. Ленивая загрузка

TableChoiceGroupFilter.tsx

  1. Нет тестов TableFilterContainer.tsx
  2. Нет тестов TableNumberFilter.tsx
  3. Нет тестов

TableResizer.tsx

  1. Нет тестов

TableRowsCollapse.tsx

  1. нет тестов

TableSelectedOptionsList.tsx

  1. Label https://github.com/gazprom-neft/consta-uikit/blob/4037e2a9204988da215f7a8c65823bf051c84c64/src/components/Table/SelectedOptionsList/TableSelectedOptionsList.tsx#L33

TableTextFilter.tsx

  1. Нет тестов

Tabs

  1. props.linePosition

TabsFitModeScrollWrapper.tsx

  1. нет тестов

TabsMoreItems.tsx

  1. Нет тестов

TabsFitModeDropdownWrapper.tsx

  1. условие hiddenItems.length > 0 https://github.com/gazprom-neft/consta-uikit/blob/4037e2a9204988da215f7a8c65823bf051c84c64/src/components/Tabs/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.tsx#L45

Tag

  1. mode === 'check' обработчик onChange https://github.com/gazprom-neft/consta-uikit/blob/4037e2a9204988da215f7a8c65823bf051c84c64/src/components/Tag/Tag.tsx#L118

TextField

  1. onBlur
  2. onFocus

ThemeToggler

  1. Проброс ref

User

  1. https://github.com/gazprom-neft/consta-uikit/blob/4037e2a9204988da215f7a8c65823bf051c84c64/src/components/User/User.tsx#L134

UserSelect

  1. https://github.com/gazprom-neft/consta-uikit/blob/4037e2a9204988da215f7a8c65823bf051c84c64/src/components/UserSelect/UserSelect.tsx#L82

UserSelectItem.tsx

  1. !subLabel https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/components/UserSelect/UserSelectItem/UserSelectItem.tsx#L67

UserSelectDeprecated

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/components/UserSelectDeprecated/UserSelectDeprecated.tsx#L133
  2. обработчики handleInputFocus, handleInputBlur, handleClear, handleClearButtonFocus, handleClearButtonBlur, handleInputChange, handleRemoveValue

fileIcons

createFileIcon

  1. нет тестов

hocs

withTooltip

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L48
  2. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L117
  3. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L126
  4. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L132
  5. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L143
  6. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L151
  7. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hocs/withTooltip/withTooltip.tsx#L158

hooks

  1. отдельных тестов нет, тестировать места, где использовался в компонентах

useChoiceGroupIndexed

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useChoiceGroupIndexed/useChoiceGroupIndexed.ts#L26

  2. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useChoiceGroupIndexed/useChoiceGroupIndexed.ts#L51

useDebounce

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useDebounce/useDebounce.tsx#L28

useGlobalKey

  1. Условие e.key https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useGlobalKeys/useGlobalKeys.ts#L22

useKeys

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useKeys/useKeys.tsx#L22

useResizeObserved

  1. https://github.com/gazprom-neft/consta-uikit/blob/2b842b2de2b9814bd00c4cfac66e52a05262d695/src/hooks/useResizeObserved/useResizeObserved.ts#L19

useScrollPosition

  1. нет тестов

useSelect

  1. https://github.com/gazprom-neft/consta-uikit/blob/4e08a785abe0eefee05228d336c92f7f422fdb6f/src/hooks/useSelect/useSelect.ts#L99

useSelectDeprecated

  1. https://github.com/gazprom-neft/consta-uikit/blob/4e08a785abe0eefee05228d336c92f7f422fdb6f/src/hooks/useSelectDeprecated/useSelect.tsx#L123

useThemeVars

  1. Нет тестов

useTimer

  1. функции pause, resetTime, reset, start

utils

array.ts

  1. chunk
  2. groupBy

date.ts

  1. getMonthTitle
  2. isDateRange
  3. isOnlyOneDateInRange

storybook.tsx

  1. нет тестов
Lyubavskaya commented 2 years ago

Тесты для всех новых компонентов: DateTime, DatePicker, ProgressStepBar, Slider, FeedbackForm.