Skip to content

Conversation

@aslakihle
Copy link
Contributor

@aslakihle aslakihle commented Dec 10, 2025

Azure DevOps links


  • Needs to be tested locally by reviewer

Description

Test setup for persistent combobox

Tests for new env toggle functionality

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds loading state support for the persistent combobox component and improves test coverage. The implementation introduces skeleton loading indicators and enhances the existing test suite with comprehensive interaction tests for various scenarios.

Key Changes:

  • Added SelectItemSkeleton component for loading state visualization
  • Implemented loading state handling in persistent mode of Select component
  • Enhanced Storybook stories with extensive interaction tests using the play function
  • Improved test structure for custom value component functionality

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/molecules/Select/SelectItemSkeleton.tsx New skeleton loading component with test-id for loading indication
src/molecules/Select/Select.tsx Added loading state support to persistent mode with conditional skeleton rendering
src/molecules/Select/Select.test.tsx Added test for SingleSelect error validation in persistent mode
src/molecules/Select/PersistentComboBox/PersistentComboBox.stories.tsx Enhanced stories with deterministic fake data generation and comprehensive play functions for interaction testing
src/molecules/Select/ComboBox/ComboBox.test.tsx Restructured custom value component tests into a describe block with separate removal test cases
public/mockServiceWorker.js Updated MSW version from 2.12.1 to 2.12.4
bun.lock Updated multiple dependencies including rolldown, tiptap, tanstack, and typescript-eslint packages

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link

github-actions bot commented Dec 10, 2025

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 100% (🎯 100%) 16568 / 16568
🔵 Statements 100% (🎯 100%) 16568 / 16568
🔵 Functions 100% (🎯 100%) 1195 / 1195
🔵 Branches 100% (🎯 100%) 4122 / 4122
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
src/atoms/utils/environmentToggle.ts 100% 100% 100% 100%
src/molecules/Select/DynamicMenuItem.tsx 100% 100% 100% 100%
src/molecules/Select/GroupedSelectPersistent.tsx 100% 100% 100% 100%
src/molecules/Select/ListSelectPersistent.tsx 100% 100% 100% 100%
src/molecules/Select/SearchBar.tsx 100% 100% 100% 100%
src/molecules/Select/Select.tsx 100% 100% 100% 100%
src/molecules/Select/SelectItemSkeleton.tsx 100% 100% 100% 100%
src/molecules/Select/SelectMenuItem.utils.ts 100% 100% 100% 100%
src/organisms/TopBar/Account/AccountAvatar.tsx 100% 100% 100% 100%
src/organisms/TopBar/Account/AccountButton.tsx 100% 100% 100% 100%
src/organisms/TopBar/Account/ImpersonateMenu/Actions.tsx 100% 100% 100% 100%
Generated in workflow #2010 for commit 8746b22 by the Vitest Coverage Report Action

Copilot AI review requested due to automatic review settings December 16, 2025 09:26
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 9 out of 10 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

src/molecules/Select/SelectMenuItem.utils.ts:42

  • The removal of the early return guard for items without children could lead to incorrect behavior. When an item has no children, flattenOptions will return an array containing only the parent item. This means the function will incorrectly calculate the parent state for items without children. Consider keeping the early return or ensuring the logic properly handles items without children.
export function getParentState<T extends SelectOptionRequired>(
  item: SelectOption<T>,
  values: SelectOption<T>[]
): SelectedState {
  const isSelected = values.some((value) => value.value === item.value);
  const selectedValues = values.map(({ value }) => value);
  const allOptions = flattenOptions([item])?.map(({ value }) => value);
  if (isSelected) {
    return 'selected';
  } else if (allOptions.some((option) => selectedValues.includes(option))) {
    return 'indeterminate';
  }

  return 'none';

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 9 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 13 out of 14 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@aslakihle aslakihle marked this pull request as ready for review December 17, 2025 12:22
@aslakihle aslakihle requested a review from a team as a code owner December 17, 2025 12:22
Copilot AI review requested due to automatic review settings December 17, 2025 12:22
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 16 out of 17 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants