Skip to content

fix: handle parsing deleted, added empty files #37

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
May 18, 2025
Merged

Conversation

yeonjuan
Copy link
Owner

@yeonjuan yeonjuan commented May 18, 2025

refs #31

@yeonjuan yeonjuan requested a review from Copilot May 18, 2025 13:55
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR improves parse-git-diff to correctly handle added or deleted empty files by capturing their paths from the diff header and adjusting the generation logic.

  • Extracts source and target paths using a new comparison-line parser
  • Updates deleted/new file branches to prefer header paths over change markers or chunk data
  • Adds fixtures and snapshot tests for renamed, added, and deleted empty files

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/parse-git-diff.ts Introduced pasreComparisonInputLine, updated how empty-file paths are captured and handled
src/tests/renamed-empty.test.ts Added snapshot test for renamed-empty fixture
src/tests/renamed-empty-file.test.ts Duplicate test for renamed-empty scenario (potential redundancy)
src/tests/deleted-empty-file.test.ts Added snapshot test for deleted-empty-file scenario
src/tests/added-empty-file.test.ts Added snapshot test for added-empty-file scenario
src/fixtures/renamed-empty Fixture for renamed-empty diff
src/fixtures/deleted-empty-file Fixture for deleted-empty-file diff
src/fixtures/added-empty-file Fixture for added-empty-file diff

@codecov-commenter
Copy link

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 98.55%. Comparing base (e8ed56d) to head (1fdb2f5).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #37      +/-   ##
==========================================
+ Coverage   98.46%   98.55%   +0.08%     
==========================================
  Files           4        4              
  Lines         196      208      +12     
  Branches       60       62       +2     
==========================================
+ Hits          193      205      +12     
  Misses          2        2              
  Partials        1        1              
Flag Coverage Δ
unittest 98.55% <100.00%> (+0.08%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/parse-git-diff.ts 98.38% <100.00%> (+0.11%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@yeonjuan yeonjuan merged commit a881d08 into main May 18, 2025
3 checks passed
@yeonjuan yeonjuan deleted the handle-empty-files branch May 18, 2025 14:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants