• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

PhilippRisius / pytest_nbgrader
80%

Build:
DEFAULT BRANCH: main
Repo Added 05 Nov 2025 01:10PM UTC
Files 9
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
  • main
  • chore/pyproject-cleanup
  • chore/typing-and-exports
  • ci/coveralls-token
  • dependabot/github_actions/dot-github/workflows/actions-57a0a129d0
  • dependabot/pip/bump-my-version-1.3.0
  • dependabot/pip/deptry-0.25.1
  • dependabot/pip/pip-26.0.1
  • dependabot/pip/tomli-2.4.1
  • dependabot/pip/tox-4.52.0
  • docs/usage-guide
  • pre-commit-ci-update-config
  • test/e2e-and-cleanup
  • test/quick-wins

31 Mar 2026 09:26PM UTC coverage: 80.385% (-0.8%) from 81.157%
23820198945

push

github

web-flow
Chore/typing and exports (#36)

* feat: add type annotations, __all__ exports, and fix has_import

Part A — Fix has_import and file_contents assertions:
- Add missing `outputs` parameter to match _log wrapper contract
- Replace nonexistent `case.return_object` with `outputs[0][0]`
- Fix relative_to(cwd) crash for stdlib modules via _resolve_origin helper
- Fix inconsistent return tuple lengths (all failures now 3-element)
- Update TestHasImport tests to use standard pipeline (not __wrapped__)
- Add tests for stdlib imports and empty outputs

Part B — Add __all__ exports to all 9 source modules:
- Defines the public API explicitly for each module
- Keeps _log, _SENTINEL, logger as private internals

Part C — Add type annotations to all 9 source modules:
- Add `from __future__ import annotations` to all modules
- Annotate all function signatures, class attributes, and nested helpers
- Define _AssertionResult type alias in assertions.py
- Fix `callable` (builtin) to `Callable` (collections.abc) in prerequisites.py
- Type Timer, TestCase.timing, format_result, execute dispatches in cases.py
- Type TemporarySymlink/TemporarySymlinks with types.ModuleType in runner.py
- Type all pytest hooks and fixtures in conftest.py

All 213 tests pass. All pre-commit hooks pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: update mypy override comment for source modules

Annotations are in place; strict enforcement deferred due to
pre-existing dynamic patterns (77 errors, mostly bare generics
and nullable attribute access). The ignore_errors stays for now.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Philipp Risius <philipp.e.risius@theo.physik.uni-giessen.de>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

61 of 99 new or added lines in 9 files covered. (61.62%)

3 existing lines in 3 files now uncovered.

459 of 571 relevant lines covered (80.39%)

2.41 hits per line

Relevant lines Covered
Build:
Build:
571 RELEVANT LINES 459 COVERED LINES
2.41 HITS PER LINE
Source Files on main
  • Tree
  • List 9
  • Changed 9
  • Source Changed 0
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
23820198945 main Chore/typing and exports (#36) * feat: add type annotations, __all__ exports, and fix has_import Part A — Fix has_import and file_contents assertions: - Add missing `outputs` parameter to match _log wrapper contract - Replace nonexistent `case.r... push 31 Mar 2026 09:28PM UTC web-flow github
80.39
23768057460 main chore: clean up pyproject.toml, remove stale config, fix ruff ignores (#35) * chore: clean up pyproject.toml, remove stale config, fix ruff ignores Config cleanup: - Remove misleading "Typing :: Typed" classifier (no py.typed, no annotations) - ... push 30 Mar 2026 09:15PM UTC web-flow github
81.16
23746092425 main Docs/usage guide (#34) * docs: add usage documentation with quickstart, guides, and assertions reference New files in docs/guide/: - quickstart.rst: end-to-end walkthrough with "How It Works" architecture explanation - instructor-guide.rst: test... push 30 Mar 2026 01:03PM UTC web-flow github
81.61
23693922725 main Test/e2e and cleanup (#32) * build(deps): Bump requests in /CI in the pip group across 1 directory Bumps the pip group with 1 update in the /CI directory: [requests](https://github.com/psf/requests). Updates `requests` from 2.32.5 to 2.33.0 - ... push 28 Mar 2026 08:43PM UTC web-flow github
81.61
23692715867 main Test/quick wins (#31) * test: add 44 tests for cases, dumper, loader + fix dump_subtask append New test files: - test_cases.py (25 tests): Timer, format_result, execute dispatches for function/code/type/ModuleSpec/NotImplementedError, dataclas... push 28 Mar 2026 07:34PM UTC web-flow github
80.68
23671114911 main test: add 44 tests for cases, dumper, loader + fix dump_subtask append (#30) * test: add 44 tests for cases, dumper, loader + fix dump_subtask append New test files: - test_cases.py (25 tests): Timer, format_result, execute dispatches for func... push 27 Mar 2026 11:03PM UTC web-flow github
68.29
23635726406 main Ci/coveralls token (#29) * ci: use dedicated COVERALLS_REPO_TOKEN secret for coverage uploads Switch from GITHUB_TOKEN to a dedicated coveralls repo token so the coveralls CLI can authenticate and the badge shows actual coverage. Co-Authored-By... push 27 Mar 2026 07:23AM UTC web-flow github
45.39
See All Builds (25)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc