Skip to content

Conversation

@agorthi-akamai
Copy link
Contributor

@agorthi-akamai agorthi-akamai commented Jul 24, 2025

Description 📝

This commit introduces a comprehensive integration test suite for validating the CloudPulse Nodebalancer Dashboard UI and its interaction with backend APIs. The tests ensure the accuracy, functionality, and responsiveness of the metrics widgets under various user interactions.

Test cases include:

  • Verifying widget titles, data labels, and region/resource filters
  • Validating granularity and aggregation selections per widget
  • Ensuring correct API payloads when optional filters (like port) are applied
  • Checking behavior of global dashboard refresh
  • Testing widget-level zoom in/out functionality
  • Confirming legend values (Avg, Max, Last) are rendered accurately from mocked data

Mocks added:

  • CloudPulse dashboard, widgets, metrics, services, and token intercepts
  • Regions, Nodebalancers, Linodes, and account/user preferences
  • Feature flag setup for ACLP and Nodebalancer metrics

These tests ensure that future changes to the CloudPulse Nodebalancer integration do not break core functionality or visual consistency.

Changes 🔄

List any change(s) relevant to the reviewer.

  • ...
  • ...

Target release date 🗓️: 26/07/2025

Please specify a release date (and environment, if applicable) to guarantee timely review of this PR. If exact date is not known, please approximate and update it as needed.

Preview 📷

Include a screenshot or screen recording of the change.

Uploading nodebalancer-widget-verification.spec.ts.mp4…

🔒 Use the Mask Sensitive Data setting for security.

💡 Use <video src="" /> tag when including recordings in table.

Before After
📷 📷

How to test 🧪

pnpm cypress run --spec cypress/e2e/core/cloudpulse/nodebalancer-widget-verification.spec.ts

As an Author, to speed up the review process, I considered 🤔

👀 Doing a self review
❔ Our contribution guidelines
🤏 Splitting feature into small PRs
➕ Adding a changeset
🧪 Providing/improving test coverage
🔐 Removing all sensitive information from the code and PR description
🚩 Using a feature flag to protect the release
👣 Providing comprehensive reproduction steps
📑 Providing or updating our documentation
🕛 Scheduling a pair reviewing session
📱 Providing mobile support
♿ Providing accessibility support


  • I have read and considered all applicable items listed above.

As an Author, before moving this PR from Draft to Open, I confirmed ✅

  • All tests and CI checks are passing
  • TypeScript compilation succeeded without errors
  • Code passes all linting rules

@agorthi-akamai agorthi-akamai marked this pull request as ready for review July 24, 2025 05:22
@agorthi-akamai agorthi-akamai requested a review from a team as a code owner July 24, 2025 05:22
@agorthi-akamai agorthi-akamai requested review from cliu-akamai and removed request for a team July 24, 2025 05:22
@agorthi-akamai
Copy link
Contributor Author

Temporarily skipping a flaky test case in the time range picker spec due to inconsistent behavior. The test will be re-enabled once the root cause is addressed.

@mjac0bs mjac0bs changed the title test[DI-26399]: add verification tests for NodeBalancer widget test: [DI-26399]- Add Cypress verification tests for NodeBalancer widget Jul 24, 2025
@mjac0bs mjac0bs changed the title test: [DI-26399]- Add Cypress verification tests for NodeBalancer widget test: [DI-26399]- Add Cypress verification tests for CloudPulse NodeBalancer widget Jul 24, 2025
@agorthi-akamai agorthi-akamai requested a review from a team as a code owner July 25, 2025 07:28
@agorthi-akamai agorthi-akamai requested review from coliu-akamai and hana-akamai and removed request for a team July 25, 2025 07:28
@github-project-automation github-project-automation bot moved this from Review to Approved in Cloud Manager Jul 25, 2025
@jaalah-akamai jaalah-akamai removed the Add'tl Approval Needed Waiting on another approval! label Jul 25, 2025
@jaalah-akamai jaalah-akamai added the Approved Multiple approvals and ready to merge! label Jul 25, 2025
Copy link
Contributor

@coliu-akamai coliu-akamai left a comment

Choose a reason for hiding this comment

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

✅ confirmed tests pass

thank you!

Comment on lines +330 to +331
});
it('should allow users to select the desired aggregation and view the latest data from the API displayed in the graph', () => {
Copy link
Contributor

Choose a reason for hiding this comment

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

nit (non-blocking): could we add a line of space between each test/before each for better readability?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done — spacing added between tests and before each block as suggested.

});

it('should implement and validate custom date/time picker for a specific date and time range', () => {
it.skip('should implement and validate custom date/time picker for a specific date and time range', () => {
Copy link
Contributor

Choose a reason for hiding this comment

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

question: I might be out of the loop - why are we skipping this test?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Temporarily skipping a flaky test case in the time range picker spec due to inconsistent behavior. The test will be re-enabled once the root cause is addressed.

@linode-gh-bot
Copy link
Collaborator

Cloud Manager UI test results

🎉 695 passing tests on test run #10 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
0 Failing695 Passing4 Skipped139m 22s

@nikhagra-akamai nikhagra-akamai merged commit 5dd19ea into linode:develop Jul 28, 2025
35 checks passed
@github-project-automation github-project-automation bot moved this from Approved to Merged in Cloud Manager Jul 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Approved Multiple approvals and ready to merge! Cloud Pulse Cypress Component Tests

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

6 participants