This is an automated email from the ASF dual-hosted git repository.

sbp pushed a commit to branch sbp
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git


The following commit(s) were added to refs/heads/sbp by this push:
     new fa010e35 Fix function ordering
fa010e35 is described below

commit fa010e3500940fe9e7bfd1bfcf388f72f4b0c837
Author: Sean B. Palmer <[email protected]>
AuthorDate: Thu Feb 26 20:27:42 2026 +0000

    Fix function ordering
---
 atr/paths.py                          |   8 +--
 tests/e2e/admin/test_revoke_tokens.py | 128 +++++++++++++++++-----------------
 tests/e2e/announce/test_get.py        |  26 +++----
 tests/e2e/committees/test_get.py      |  22 +++---
 tests/e2e/root/conftest.py            |  14 ++--
 tests/e2e/root/test_get.py            |   8 +--
 6 files changed, 103 insertions(+), 103 deletions(-)

diff --git a/atr/paths.py b/atr/paths.py
index 0bc556e0..4912d422 100644
--- a/atr/paths.py
+++ b/atr/paths.py
@@ -25,10 +25,6 @@ def base_path_for_revision(project_name: str, version_name: 
str, revision: str)
     return pathlib.Path(get_unfinished_dir(), project_name, version_name, 
revision)
 
 
-def revision_path_for_file(project_name: str, version_name: str, revision: 
str, file_name: str) -> pathlib.Path:
-    return base_path_for_revision(project_name, version_name, revision) / 
file_name
-
-
 def get_attestable_dir() -> pathlib.Path:
     return pathlib.Path(config.get().ATTESTABLE_STORAGE_DIR)
 
@@ -129,3 +125,7 @@ def release_directory_version(release: sql.Release) -> 
pathlib.Path:
             path = get_finished_dir() / path_project / path_version
         # Do not add "case _" here
     return path
+
+
+def revision_path_for_file(project_name: str, version_name: str, revision: 
str, file_name: str) -> pathlib.Path:
+    return base_path_for_revision(project_name, version_name, revision) / 
file_name
diff --git a/tests/e2e/admin/test_revoke_tokens.py 
b/tests/e2e/admin/test_revoke_tokens.py
index 782c958e..4ecbf151 100644
--- a/tests/e2e/admin/test_revoke_tokens.py
+++ b/tests/e2e/admin/test_revoke_tokens.py
@@ -20,18 +20,57 @@ import e2e.helpers as helpers
 from playwright.sync_api import Page, expect
 
 
-def test_revoke_tokens_page_loads(page_revoke_tokens: Page) -> None:
-    expect(page_revoke_tokens).to_have_title("Revoke user tokens ~ ATR")
+def test_revoke_deletes_tokens_and_shows_success(
+    page_revoke_tokens_with_token: Page,
+) -> None:
+    page = page_revoke_tokens_with_token
 
+    # Verify the test user has tokens before revocation
+    token_count = admin_helpers.get_token_count_for_user(page, "test")
+    assert token_count > 0
 
-def test_revoke_tokens_page_has_heading(page_revoke_tokens: Page) -> None:
-    heading = page_revoke_tokens.get_by_role("heading", name="Revoke user 
tokens")
-    expect(heading).to_be_visible()
+    # Revoke all tokens for the test user
+    page.locator('input[name="asf_uid"]').fill("test")
+    page.locator('input[name="confirm_revoke"]').fill("REVOKE")
+    page.get_by_role("button", name="Revoke all tokens").click()
+    page.wait_for_load_state()
 
+    # Should see success message
+    success_message = 
page.locator('.flash-message.flash-success:has-text("Revoked")')
+    expect(success_message).to_be_visible()
 
-def test_revoke_tokens_page_has_uid_input(page_revoke_tokens: Page) -> None:
-    uid_input = page_revoke_tokens.locator('input[name="asf_uid"]')
-    expect(uid_input).to_be_visible()
+    # The test user should no longer appear in the table (or have 0 tokens)
+    test_user_row = page.locator('tr:has(td code:text-is("test"))')
+    expect(test_user_row).to_have_count(0)
+
+
+def test_revoke_nonexistent_user_shows_info(page_revoke_tokens: Page) -> None:
+    page = page_revoke_tokens
+    page.locator('input[name="asf_uid"]').fill("nonexistent_user_abc123")
+    page.locator('input[name="confirm_revoke"]').fill("REVOKE")
+    page.get_by_role("button", name="Revoke all tokens").click()
+    page.wait_for_load_state()
+
+    info_message = page.locator('.flash-message:has-text("No tokens found")')
+    expect(info_message).to_be_visible()
+
+
+def test_revoke_shows_error_for_wrong_confirmation(page_revoke_tokens: Page) 
-> None:
+    page = page_revoke_tokens
+    page.locator('input[name="asf_uid"]').fill("test")
+    page.locator('input[name="confirm_revoke"]').fill("WRONG")
+    page.get_by_role("button", name="Revoke all tokens").click()
+    page.wait_for_load_state()
+
+    error_message = page.locator(".flash-message.flash-error")
+    expect(error_message).to_be_visible()
+
+
+def test_revoke_tokens_nav_link_exists(page_revoke_tokens: Page) -> None:
+    """The admin dropdown should contain a 'Revoke user tokens' link."""
+    page = page_revoke_tokens
+    nav_link = page.locator('a.dropdown-item:has-text("Revoke user tokens")')
+    expect(nav_link).to_have_count(1)
 
 
 def test_revoke_tokens_page_has_confirmation_input(page_revoke_tokens: Page) 
-> None:
@@ -39,20 +78,23 @@ def 
test_revoke_tokens_page_has_confirmation_input(page_revoke_tokens: Page) ->
     expect(confirm_input).to_be_visible()
 
 
+def test_revoke_tokens_page_has_heading(page_revoke_tokens: Page) -> None:
+    heading = page_revoke_tokens.get_by_role("heading", name="Revoke user 
tokens")
+    expect(heading).to_be_visible()
+
+
 def test_revoke_tokens_page_has_submit_button(page_revoke_tokens: Page) -> 
None:
     button = page_revoke_tokens.get_by_role("button", name="Revoke all tokens")
     expect(button).to_be_visible()
 
 
-def test_revoke_tokens_page_shows_token_counts_table(
-    page_revoke_tokens_with_token: Page,
-) -> None:
-    page = page_revoke_tokens_with_token
-    table = page.locator("table")
-    expect(table).to_be_visible()
-    # The test user should appear in the table
-    test_user_row = page.locator('tr:has(td code:text-is("test"))')
-    expect(test_user_row).to_be_visible()
+def test_revoke_tokens_page_has_uid_input(page_revoke_tokens: Page) -> None:
+    uid_input = page_revoke_tokens.locator('input[name="asf_uid"]')
+    expect(uid_input).to_be_visible()
+
+
+def test_revoke_tokens_page_loads(page_revoke_tokens: Page) -> None:
+    expect(page_revoke_tokens).to_have_title("Revoke user tokens ~ ATR")
 
 
 def test_revoke_tokens_page_shows_no_tokens_message_when_empty(
@@ -67,50 +109,15 @@ def 
test_revoke_tokens_page_shows_no_tokens_message_when_empty(
     expect(table.or_(info_alert)).to_be_visible()
 
 
-def test_revoke_shows_error_for_wrong_confirmation(page_revoke_tokens: Page) 
-> None:
-    page = page_revoke_tokens
-    page.locator('input[name="asf_uid"]').fill("test")
-    page.locator('input[name="confirm_revoke"]').fill("WRONG")
-    page.get_by_role("button", name="Revoke all tokens").click()
-    page.wait_for_load_state()
-
-    error_message = page.locator(".flash-message.flash-error")
-    expect(error_message).to_be_visible()
-
-
-def test_revoke_nonexistent_user_shows_info(page_revoke_tokens: Page) -> None:
-    page = page_revoke_tokens
-    page.locator('input[name="asf_uid"]').fill("nonexistent_user_abc123")
-    page.locator('input[name="confirm_revoke"]').fill("REVOKE")
-    page.get_by_role("button", name="Revoke all tokens").click()
-    page.wait_for_load_state()
-
-    info_message = page.locator('.flash-message:has-text("No tokens found")')
-    expect(info_message).to_be_visible()
-
-
-def test_revoke_deletes_tokens_and_shows_success(
+def test_revoke_tokens_page_shows_token_counts_table(
     page_revoke_tokens_with_token: Page,
 ) -> None:
     page = page_revoke_tokens_with_token
-
-    # Verify the test user has tokens before revocation
-    token_count = admin_helpers.get_token_count_for_user(page, "test")
-    assert token_count > 0
-
-    # Revoke all tokens for the test user
-    page.locator('input[name="asf_uid"]').fill("test")
-    page.locator('input[name="confirm_revoke"]').fill("REVOKE")
-    page.get_by_role("button", name="Revoke all tokens").click()
-    page.wait_for_load_state()
-
-    # Should see success message
-    success_message = 
page.locator('.flash-message.flash-success:has-text("Revoked")')
-    expect(success_message).to_be_visible()
-
-    # The test user should no longer appear in the table (or have 0 tokens)
+    table = page.locator("table")
+    expect(table).to_be_visible()
+    # The test user should appear in the table
     test_user_row = page.locator('tr:has(td code:text-is("test"))')
-    expect(test_user_row).to_have_count(0)
+    expect(test_user_row).to_be_visible()
 
 
 def test_revoke_tokens_removes_tokens_from_user_view(
@@ -128,10 +135,3 @@ def test_revoke_tokens_removes_tokens_from_user_view(
     helpers.visit(page, admin_helpers.TOKENS_PATH)
     token_row = 
page.locator(f'tr:has(td:text-is("{admin_helpers.TOKEN_LABEL_FOR_TESTING}"))')
     expect(token_row).to_have_count(0)
-
-
-def test_revoke_tokens_nav_link_exists(page_revoke_tokens: Page) -> None:
-    """The admin dropdown should contain a 'Revoke user tokens' link."""
-    page = page_revoke_tokens
-    nav_link = page.locator('a.dropdown-item:has-text("Revoke user tokens")')
-    expect(nav_link).to_have_count(1)
diff --git a/tests/e2e/announce/test_get.py b/tests/e2e/announce/test_get.py
index 3390fa5b..72872f86 100644
--- a/tests/e2e/announce/test_get.py
+++ b/tests/e2e/announce/test_get.py
@@ -19,6 +19,19 @@ import e2e.announce.helpers as helpers  # type: 
ignore[reportMissingImports]
 from playwright.sync_api import Page, expect
 
 
+def test_finish_move_form_populates_from_json(page_finish: Page) -> None:
+    """The finish move form should populate rows from script JSON data."""
+    file_option = page_finish.locator("#file-list-table-body 
input[type='checkbox'][data-item-path]").first
+    dir_option = page_finish.locator("#dir-list-table-body 
input[type='radio'][name='target-directory-radio']").first
+    expect(file_option).to_be_visible()
+    expect(dir_option).to_be_visible()
+
+    toggle_button = page_finish.locator("#select-files-toggle-button")
+    expect(toggle_button).to_have_text("Select these files")
+    toggle_button.click()
+    expect(toggle_button).to_have_text("Unselect all")
+
+
 def test_path_adds_leading_slash(page_announce: Page) -> None:
     """Paths without a leading '/' should have one added."""
     help_text = helpers.fill_path_suffix(page_announce, "apple/banana")
@@ -82,16 +95,3 @@ def 
test_submit_button_disabled_until_confirm_typed(page_announce: Page) -> None
 
     confirm_input.fill("CONFIRM")
     expect(submit_button).to_be_enabled()
-
-
-def test_finish_move_form_populates_from_json(page_finish: Page) -> None:
-    """The finish move form should populate rows from script JSON data."""
-    file_option = page_finish.locator("#file-list-table-body 
input[type='checkbox'][data-item-path]").first
-    dir_option = page_finish.locator("#dir-list-table-body 
input[type='radio'][name='target-directory-radio']").first
-    expect(file_option).to_be_visible()
-    expect(dir_option).to_be_visible()
-
-    toggle_button = page_finish.locator("#select-files-toggle-button")
-    expect(toggle_button).to_have_text("Select these files")
-    toggle_button.click()
-    expect(toggle_button).to_have_text("Unselect all")
diff --git a/tests/e2e/committees/test_get.py b/tests/e2e/committees/test_get.py
index 2ab80ed4..a30ecaee 100644
--- a/tests/e2e/committees/test_get.py
+++ b/tests/e2e/committees/test_get.py
@@ -71,17 +71,6 @@ def test_filter_updates_committee_count(page_committees: 
Page) -> None:
     expect(count_span).not_to_have_text(initial_count or "")
 
 
-def test_participant_button_toggles_text(page_committees: Page) -> None:
-    """Clicking participant button should toggle the button text."""
-    participant_button = page_committees.locator("#filter-participant-button")
-
-    expect(participant_button).to_have_text("Show all committees")
-
-    participant_button.click()
-
-    expect(participant_button).to_have_text("Show my committees")
-
-
 def test_participant_button_toggles_aria_pressed(page_committees: Page) -> 
None:
     """Clicking participant button should toggle aria pressed state."""
     participant_button = page_committees.locator("#filter-participant-button")
@@ -95,3 +84,14 @@ def 
test_participant_button_toggles_aria_pressed(page_committees: Page) -> None:
     participant_button.click()
 
     expect(participant_button).to_have_attribute("aria-pressed", "true")
+
+
+def test_participant_button_toggles_text(page_committees: Page) -> None:
+    """Clicking participant button should toggle the button text."""
+    participant_button = page_committees.locator("#filter-participant-button")
+
+    expect(participant_button).to_have_text("Show all committees")
+
+    participant_button.click()
+
+    expect(participant_button).to_have_text("Show my committees")
diff --git a/tests/e2e/root/conftest.py b/tests/e2e/root/conftest.py
index 3b9127f9..507a3715 100644
--- a/tests/e2e/root/conftest.py
+++ b/tests/e2e/root/conftest.py
@@ -29,19 +29,19 @@ if TYPE_CHECKING:
 
 
 @pytest.fixture
-def page_index(page: Page) -> Generator[Page]:
-    helpers.visit(page, "/")
+def page_about(page: Page) -> Generator[Page]:
+    helpers.log_in(page)
+    helpers.visit(page, "/about")
     yield page
 
 
 @pytest.fixture
-def page_policies(page: Page) -> Generator[Page]:
-    helpers.visit(page, "/policies")
+def page_index(page: Page) -> Generator[Page]:
+    helpers.visit(page, "/")
     yield page
 
 
 @pytest.fixture
-def page_about(page: Page) -> Generator[Page]:
-    helpers.log_in(page)
-    helpers.visit(page, "/about")
+def page_policies(page: Page) -> Generator[Page]:
+    helpers.visit(page, "/policies")
     yield page
diff --git a/tests/e2e/root/test_get.py b/tests/e2e/root/test_get.py
index 928b3699..75e925db 100644
--- a/tests/e2e/root/test_get.py
+++ b/tests/e2e/root/test_get.py
@@ -18,6 +18,10 @@
 from playwright.sync_api import Page, expect
 
 
+def test_about_loads(page_about: Page) -> None:
+    expect(page_about).to_have_title("About ATR ~ ATR")
+
+
 def test_index_has_login_button(page_index: Page) -> None:
     login_button = page_index.get_by_role("link", name="Log in")
     expect(login_button).to_be_visible()
@@ -34,7 +38,3 @@ def test_policies_has_heading(page_policies: Page) -> None:
 
 def test_policies_loads(page_policies: Page) -> None:
     expect(page_policies).to_have_title("Policies ~ ATR")
-
-
-def test_about_loads(page_about: Page) -> None:
-    expect(page_about).to_have_title("About ATR ~ ATR")


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to