Skip to content

Draft: Add comprehensive tests - #53

Draft
DevilPedrow wants to merge 43 commits into
mainfrom
tests
Draft

Draft: Add comprehensive tests#53
DevilPedrow wants to merge 43 commits into
mainfrom
tests

Conversation

@DevilPedrow

@DevilPedrow DevilPedrow commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR will include all the necessary tests for Parsecore. It will be essential to verify that the expected results are correct in the event of changes to the Beatmap, Mods, or Performance.
Resolving the issue #47


Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Performance improvement
  • Documentation update
  • Tests
  • Chore / tooling / CI

Changes

  • Added tests for Beatmap
  • Added tests for all modes
  • Fixed the bug regarding the inheritance of Timing Points from Hit Objects
  • Fixed the encoding issue related to HitObjects' hitsamples
  • Added more properties to Beatmap
  • Added the apply method to SamplePoint
  • Removed all dataclasses that used eq=True
  • Improved the reader to ensure correct reading of UTF-16-LE
  • Improved the General section to ensure readability across all versions

Testing

pytest tests/

Breaking Changes

N/A


Parity

N/A


Checklist

  • Code follows project style (PEP 8, type hints, Google-style docstrings; inline # comments discouraged — see CONTRIBUTING.md)
  • Bit-exactness preserved for any parsecore/Performance/ change (parity suite: 0 differences)
  • Pre-commit hooks pass locally (pre-commit run --all-files)
  • Tests added / updated where relevant
  • All existing tests pass
  • Documentation updated where necessary
  • No new warnings or type errors introduced

DevilPedrow and others added 30 commits July 17, 2026 15:20
…or beatmap control points and metadata handling
…e Section to use StrEnum for improved type handling
…, and simplify General dataclass initialization
…implify dataclass initialization by removing equality checks
…data dataclass initialization by removing equality checks
…ng equality checks and updating field definitions, and add apply method for HitSampleInfo handling
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

🤖 ParseCore Bot — PR Review

Hi @DevilPedrow! I checked this pull request automatically. Here is my verdict:

❌ Not ready yet

Some checks did not pass. Please fix the points marked with ❌ below and I will re-check automatically on your next push or edit.

Check Result
Conventional title PR title must follow Conventional Commits: type(scope): subject e.g. fix(pp): correct taiko convert scroll speed. Allowed types: feat, fix, docs, style, refactor, perf, test, chore, revert. Allowed scopes: beatmap, mods, pp, ci, packaging.
PR template PR template is filled out
Parity statement No parsecore/Performance/ changes parity statement not required
Comment-free code No inline comments added to parsecore code
⚠️ PR size This PR adds more than 800 lines. Consider splitting it into smaller, focused PRs large diffs slow down review and increase parity risk. (+24407 lines)

What to fix

  • Conventional title: PR title must follow Conventional Commits: type(scope): subject e.g. fix(pp): correct taiko convert scroll speed. Allowed types: feat, fix, docs, style, refactor, perf, test, chore, revert. Allowed scopes: beatmap, mods, pp, ci, packaging.

🤖 I am not a human I re-run on every push and edit. Configure me in .github/parsecore-bot/config.json. Override switches: [skip-comment-check], [skip-docs] in the PR description.

@github-actions github-actions Bot added PR: Draft Work in progress, not ready for review Scope: Beatmap Relates to beatmap parsing or encoding Type: Docs Documentation only changes labels Aug 3, 2026
@DevilPedrow DevilPedrow changed the title Draft: Refactor beatmap handling and add comprehensive tests Draft: Add comprehensive tests Aug 3, 2026
@DevilPedrow DevilPedrow added Type: Test Adding or updating tests Priority: Medium Important but not urgent Status: In Progress Actively being worked on and removed Type: Docs Documentation only changes labels Aug 4, 2026
@github-actions github-actions Bot added the Type: Docs Documentation only changes label Aug 4, 2026
@github-actions github-actions Bot added the Scope: CI Relates to CI/CD pipelines or GitHub Actions label Aug 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: Draft Work in progress, not ready for review Priority: Medium Important but not urgent Scope: Beatmap Relates to beatmap parsing or encoding Scope: CI Relates to CI/CD pipelines or GitHub Actions Status: In Progress Actively being worked on Type: Docs Documentation only changes Type: Test Adding or updating tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant