Skip to content

Add frontend smoke test for Explorer page load #79

@MuttleyD

Description

@MuttleyD

Summary

Add a focused frontend smoke test that verifies the MIDAS Explorer page can load or initialise without obvious static asset or JavaScript entry-point regressions.

Background

The Explorer is one of the main entry points into MIDAS. It includes graph views, renderer selection, toolbar controls, and supporting static frontend assets.

At the moment, small frontend regressions could be introduced by changes to static files, graph initialisation code, or route wiring without being caught by a narrow automated test.

A lightweight smoke test would help protect the Explorer from accidental breakage while keeping the test simple and contributor-friendly.

Scope

Add a small test that verifies the Explorer frontend entry point and required static assets are present and internally consistent.

The test should be narrow and should not require:

  • Docker
  • Kubernetes
  • Helm
  • kubectl
  • kind
  • network access
  • a deployed MIDAS instance
  • a live browser
  • new dependencies unless clearly justified

Suggested approach

A suitable implementation could add a Go test that checks the Explorer static files expected by the server are present and that the main Explorer HTML references the required JavaScript and CSS assets.

The exact implementation is left to the contributor, but the test should remain lightweight and should fit into the existing repository test flow.

Acceptance criteria

  • A focused frontend smoke test is added.
  • The test verifies that the Explorer page or static entry point references required frontend assets.
  • The test verifies that referenced local static assets exist in the repository.
  • The test does not require Docker, Kubernetes, Helm, kubectl, kind, network access, or a deployed MIDAS instance.
  • The test does not introduce browser automation unless already supported by the repo.
  • The test does not change runtime behaviour.
  • The test does not change public APIs.
  • go test ./... passes in CI.

Non-goals

  • Do not redesign the Explorer UI.
  • Do not change graph layout behaviour.
  • Do not change renderer selection behaviour.
  • Do not introduce a full end-to-end browser testing framework.
  • Do not change production runtime code unless strictly necessary for testability.

Contributor notes

This is intended to be a small, focused frontend regression test suitable for a first-time contributor.

The goal is not to prove the full Explorer experience works in a browser. The goal is to catch simple static frontend breakages early, such as missing files or broken local asset references.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions