diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index ee9ac98..0006e60 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -76,6 +76,14 @@ jobs: source venv/bin/activate pip install --upgrade pip pip install -r e2e_playwright/test-requirements.txt + # The venv is cached by a key that only changes daily, so a prior + # run's streamlit-pivot wheel is often already installed at the + # same version as the freshly-built wheel in dist/. When that + # happens, pip silently skips reinstalling ("Requirement already + # satisfied") and the test run exercises stale package code + # instead of the current checkout. Force-reinstall the local + # wheel (without deps) so the venv always reflects HEAD. + pip install --force-reinstall --no-deps dist/streamlit_pivot-*.whl python -m playwright install --with-deps - name: Run playwright tests run: | diff --git a/e2e_playwright/pivot_table_column_config_app.py b/e2e_playwright/pivot_table_column_config_app.py index ee9aa59..4924be1 100644 --- a/e2e_playwright/pivot_table_column_config_app.py +++ b/e2e_playwright/pivot_table_column_config_app.py @@ -27,12 +27,16 @@ def render_app(data): df = data["df"] + # No col dims here so the single-value measure header (`pivot-header-cell`) + # renders and can be inspected by the measure label/help assertions. The + # col-dim + single-value layout does not surface a dedicated measure header + # (values fold into the grid cells), which would render the measure-level + # label/help assertions unreachable. st.subheader("column_config.label") st_pivot_table( df, key="test_pivot_cc_label", rows=["Region"], - columns=["Year"], values=["Revenue"], aggregation="sum", column_config={ @@ -48,7 +52,6 @@ def render_app(data): df, key="test_pivot_cc_help", rows=["Region"], - columns=["Year"], values=["Revenue"], aggregation="sum", column_config={