Skip to content

Mcdev10011/cypress #163

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 562 commits into from

Conversation

Mcdev10011
Copy link
Contributor

feat(cypress): enhance assertion block and modernize styling

🔗 Linked issue

Description

This PR introduces the following improvements to the Cypress feature:

  • CypressAssertion.tsx enhancements

    • Added a “Select By” dropdown (selectorMethod) and corresponding input (selectorValue).
    • Introduced dynamic placeholder text for the “Expected Value” field based on the chosen matcher.
    • Added useEffect hooks to reset invalid selectorMethod or matcherType values.
    • Removed conditional disabled logic on the matcher dropdown once a selector is chosen.
  • Styling updates for action/assertion cards

    • Reworked the layout for Cypress “CommandStep” fields so that Selector, Value, Action, and Argument appear inline.
    • Styled dropdown arrows, focus/hover states, and added responsive behavior.
    • Updated the “Delete Step” button to center its text/icon, apply a gradient background, and use the AiOutlineClose icon.

Demo test generation & known issues

Below is the demo test generated by the GUI. It contains multiple syntax errors—each is marked as Pending or Bug. These will be addressed in follow-up commits.

describe('Demo: Cypress Feature Showcase', () => {
  it('', () => {
    before(() => {
      cy.visit('http://localhost:3000');
    });
  });

  it('should load the home page and display the main header', () => {
    cy.get('h1').should.have.text('Welcome to MyApp');
  });

  it('should navigate to the Dashboard and check elements', () => {
    cy.get(#go - to - dashboard).click();
    .should.include('/dashboard');
    cy.contains(/^Dashboard$/i).should.be.visible();
  });
});

Cartlong7 and others added 30 commits May 3, 2023 11:44
…Input

updated interface for SearchInput props
…ooks

Conversion of modalHooks to TS. Updated DispatchMock interface, chang…
…-TS-Convert

Convert components/FileDirectory to TS
…ript

converted Thunk Redux to typescript and resolved types in redux types…
…tCaseStatements-ts

Luke/react-test-case-statements-ts
…Test

UploadTest is not currently used. Commented out.
Mcdev10011 and others added 28 commits April 27, 2025 17:48
- Defined  to standardize the shape of Cypress-based React test cases
- Set up initial architecture for Cypress-specific UI interactions and test generation
- Created foundational files: , , , and
build: added new assertion starters for sinon.spy. framework created …
- Converted inputsGrid to flex layout for single‐row alignment
- Restyled native <select> elements with custom SVG arrow, rounded corners, and hover/focus effects
- Centered “Delete Step” button text/icon using flex centering
- Expanded selectorMethods and actionMethods for richer Cypress commands
- Updated SCSS variables and classes to ensure consistent theming across light/dark modes
…to visit app before tests run. must live inside describe block
…ide it and any endpoint is inside each it statement.
- Split monolithic ReactTestCase types into 4 modules: state, ui, cypress, and matchers
- Introduce matchers.ts with  arrays and inferred unions for Jest, Mocha, Sinon, and Cypress
- Replace broad / in matcherType, selectorType, actionType, etc. with literal unions
- Update ReactTestComponentAssertion to use  and tighten
- Cast  to specific matcher unions in handlers to satisfy TS
- Narrow includes() checks by framework, casting to the appropriate union
- Swap  →  and  →  for better typing
- create explicit barrel export in index.ts
- Overall increase strictness and maintainability of test-case typings
@jdvplus jdvplus closed this Jun 7, 2025
@jdvplus jdvplus deleted the mcdev10011/cypress branch June 7, 2025 21:02
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.