Skip to content

Latest commit

 

History

History

README.md

Flutter Dashboard

For how to use the app, see the user guide

Set up

  • Install Flutter, or use an existing checkout if a Flutter developer
  • (Optional) Install Firebase CLI

Running locally

It is possible to run a simulation of the UI locally with fake data:

# Launches Chrome
flutter run -d chrome --web-port=8080 --dart-define=FAKE_AUTH=true

# Starts a web server, bring your own browser instance
flutter run -d web-server --web-port=8080 --dart-define=FAKE_AUTH=true

NOTE: Must run on port 8080[^8080] for authentication to work.

[8080]: Google employees: See GCP > Client ID for Web App.

Tests

Most tests can be run locally:

flutter test

Updating Goldens

Some tests take and compare UI screenshots which will change over time. For compatibility reasons, only a Linux host is supported.

flutter test --update-goldens

The GitHub workflow that checks this should upload the golden failures as annotations to review. You can also verify locally with:

gh act \
  -b \ # BIND your folder instead of copying - this is how you get failures/ out.
  --container-architecture linux/amd64 \ # required for mac
  --container-options="--tty" \
  --workflows ".github/workflows/dashboard_tests.yaml"

To just accept the changes:

gh act \
  -b \ # BIND your folder instead of copying - this is how you get updates out.
  --env UPDATE_GOLDENS=true \            # Use this to pass --update-goldens.
  --container-architecture linux/amd64 \ # required for mac
  --container-options="--tty" \
  --workflows ".github/workflows/dashboard_tests.yaml"