Skip to content

Ignore HTML test fixtures in repo stats #31

Description

@AJaccP

🧠 Context

The scraper tests run against saved HTML snapshots of real Carleton pages under tests/ingestion/fixtures/ (several of them are hundreds of lines / hundreds of KB). GitHub's language detector (Linguist) counts every tracked file toward the repo's language breakdown, so those fixtures make the repo show up as mostly HTML on the GitHub language bar — misrepresenting what is a Python project.

Those fixtures are captured third-party data, not code we author. Linguist has a standard mechanism for exactly this: mark such paths as vendored so they're excluded from the language stats (while staying in the repo — the tests still need them).

🛠 Implementation Plan

  1. Add a .gitattributes file at the repo root that marks the fixture HTML as vendored, using a Linguist override — see the GitHub docs on overriding language stats. Scope the pattern to the fixtures directory so only those files are affected, not any HTML we might write ourselves later.
  2. Confirm the pattern matches every fixture file currently under tests/ingestion/fixtures/.

📝 Notes

  • linguist-vendored excludes the files from language stats but keeps them tracked and unchanged — the offline scraper tests still read them. This is a stats-only change; no code or test behavior changes.
  • The GitHub language bar only recomputes after the change lands on the default branch and GitHub re-analyzes the repo, so the effect isn't visible from the PR branch — that's expected.
  • Keep the pattern scoped to the fixtures path. Don't blanket-vendor all *.html, in case real HTML is added elsewhere later.

✅ Acceptance Criteria

  • A root .gitattributes marks the tests/ingestion/fixtures/ HTML fixtures as linguist-vendored.
  • The pattern covers all current fixture files and nothing outside that directory.
  • No changes to test behavior; make test and make lint still pass.

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Ready

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions