tests.test_binaries_page moduleΒΆ

Tests for the binaries catalog generator.

tests.test_binaries_page.test_csv_header_row()[source]ΒΆ

An empty catalog still carries the header row.

tests.test_binaries_page.test_csv_skips_drafts_and_foreign_tags()[source]ΒΆ

Draft releases and non-version tags stay out of the catalog.

tests.test_binaries_page.test_csv_skips_non_binary_assets()[source]ΒΆ

Only .bin and .exe assets become rows.

tests.test_binaries_page.test_csv_collapses_versionless_aliases()[source]ΒΆ

A versionless alias collapses onto its versioned digest sibling.

Assets without a recorded digest predate the aliases and are kept even when byte-identical.

tests.test_binaries_page.test_csv_rows_newest_version_first()[source]ΒΆ

Rows are ordered by descending version, not API order.

tests.test_binaries_page.test_csv_row_cells()[source]ΒΆ

Cells link the release, the download, and the VirusTotal analysis.

tests.test_binaries_page.test_csv_shield_tiers()[source]ΒΆ

Clean rows get a green check; low flagged shares a warning tint.

A digest with no scan record gets no link: that page does not exist.

A VirusTotal file URL only resolves for a file that was submitted, so deriving one from the GitHub asset digest alone pointed every unscanned binary at a blank page.

A record whose verdict counts are all zero is no evidence of a page.

tests.test_binaries_page.test_csv_platform_fallback_to_filename()[source]ΒΆ

A filename without a known target keeps the full name as label.

tests.test_binaries_page.test_chart_requires_two_releases()[source]ΒΆ

A single release with records renders no trend chart.

tests.test_binaries_page.test_chart_content()[source]ΒΆ

The chart embeds per-release timeline points, oldest first.

tests.test_binaries_page.test_chart_uses_earliest_snapshot()[source]ΒΆ

Later re-scans of the same file don’t alter the at-release trend.

tests.test_binaries_page.test_update_binaries_csv_creates_file(tmp_path)[source]ΒΆ

The CSV and its parent directories are created on demand.

tests.test_binaries_page.test_update_binaries_csv_idempotent(tmp_path)[source]ΒΆ

Rewriting identical content reports no change.

tests.test_binaries_page.test_update_binaries_page_creates_from_template(tmp_path)[source]ΒΆ

A missing page is created with frontmatter, prose, and directives.

tests.test_binaries_page.test_update_binaries_page_empty_chart(tmp_path)[source]ΒΆ

An empty chart leaves a bare marker pair.

tests.test_binaries_page.test_update_binaries_page_preserves_prose(tmp_path)[source]ΒΆ

Hand-edited prose around the markers survives regeneration.

tests.test_binaries_page.test_update_binaries_page_migrates_legacy_markers(tmp_path, legacy_open, close_marker)[source]ΒΆ

Pages carrying any superseded open marker are migrated in place.

tests.test_binaries_page.test_update_binaries_page_idempotent(tmp_path)[source]ΒΆ

Rewriting identical content reports no change.

tests.test_binaries_page.test_update_binaries_page_refuses_markerless_file(tmp_path)[source]ΒΆ

An existing page without markers is never overwritten.

tests.test_binaries_page.test_docs_floor_table_matches_build_targets()[source]ΒΆ

The Minimum OS requirements table in docs/binaries.md reflects the floors declared in NUITKA_BUILD_TARGETS, which verify-binary enforces.