FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

test(cmd-version): add fixture to reproduce issue with empty changelog by dzmitrysliaptsou · Pull Request #1268 · python-semantic-release/python-semantic-release · GitHub

Repository navigation

test(cmd-version): add fixture to reproduce issue with empty changelog - #1268

Merged
codejedi365 merged 1 commit into
python-semantic-release:masterfrom
dzmitrysliaptsou:test/add-fixtures-merge-to-feature-after-release
Jun 20, 2025
Merged

codejedi365 merged 1 commit into
python-semantic-release:masterfrom
dzmitrysliaptsou:test/add-fixtures-merge-to-feature-after-release

Conversation

dzmitrysliaptsou commented May 31, 2025 •
edited
Loading

Copy link
Copy Markdown
Contributor

Purpose

Provides a repo fixture to reproduce the problem described in #1252 (based on this comment)

Rationale

Added a new repo following the examples in other fixtures.
Had to made one more addition: simulate_change_commits_n_rtn_changelog_entry() fixture always worked with the file_in_repo. For this specific flow it caused merge conflicts, because commit in the feature branch was made before default branch was merged into a feature branch. Made this parameter configurable.

How did you test?

I ran the test and it failed with the expected error (empty ## v0.3.0 (2025-05-31) changelog entry)

>           assert expected_md_changelog_content == actual_md_changelog_content
E           assert == failed. [pytest-clarity diff shown]
E             
E             LHS vs RHS shown below
E             
E               # CHANGELOG
E               
E               <!-- version list -->
E               
E               ## v0.3.0 (2025-05-31)
E             + 
E             + ### Features
E             + 
E             + - Add new feature in the feature branch
E             +   
E             ([`0000000`](https://example.com/example_owner/example_repo/commit/0000000000000
E             000000000000000000000000000))
E               
E               
E               ## v0.2.0 (2025-05-31)
E               
E               ### Features
E               
E               - Add another feature
E                 ([`0000000`](https://example.com/example_owner/example_repo/commit/000000000
E             0000000000000000000000000000000))
E               
E               
E               ## v0.1.0 (2025-05-31)
E               
E               - Initial Release
E             

How to Verify

  1. Comment (or remove @pytest.mark.xfail decorator on the tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_w_feature_branch_and_release_in_default.py test.
  2. run pytest -vv --comprehensive tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_w_feature_branch_and_release_in_default.py

PR Completion Checklist

  • Reviewed & followed the Contributor Guidelines

  • Changes Implemented & Validation pipeline succeeds

  • Commits follow the Conventional Commits standard
    and are separated into the proper commit type and scope (recommended order: test, build, feat/fix, docs)

  • Appropriate Unit tests added/updated

  • Appropriate End-to-End tests added/updated

  • Appropriate Documentation added/updated and syntax validated for sphinx build (see Contributor Guidelines)

Comment thread tests/fixtures/git_repo.py Outdated
dzmitrysliaptsou force-pushed the test/add-fixtures-merge-to-feature-after-release branch 2 times, most recently from 81d1e6d to d14dc21 Compare May 31, 2025 20:32

Copy link
Copy Markdown
Contributor

@dzmitrysliaptsou, I just want to say fantastic work. You are the first person to actually implement an E2E test for this project in a long time. Thank you for the effort. I have just a few comments and adjustments and we can get this in. While you have been doing that I have been revamping the release history algorithm to consolidate both it and the version determination algorithm along with a lot of performance caching. This should be a huge improvement.

codejedi365 left a comment •
edited
Loading

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

See review comments, if you need help, let me know and I can fix it this weekend and get this merged.

dzmitrysliaptsou changed the title test(cmd-version): Add fixture to reproduce issue with empty changelog test(cmd-version): add fixture to reproduce issue with empty changelog Jun 6, 2025
dzmitrysliaptsou force-pushed the test/add-fixtures-merge-to-feature-after-release branch 3 times, most recently from eb6dda7 to 1b8cf1e Compare June 6, 2025 07:36
dzmitrysliaptsou force-pushed the test/add-fixtures-merge-to-feature-after-release branch from 1b8cf1e to 99fcb3c Compare June 16, 2025 18:56
This commit adds a repo fixture and the rebuild repo test case to handle the situation
where a branch was started before a release but then a release occured and the developer
used a merge from the default branch (rather than rebase).

ref: python-semantic-release#1252
codejedi365 force-pushed the test/add-fixtures-merge-to-feature-after-release branch from 14782b5 to 52be3d4 Compare June 20, 2025 05:42
codejedi365 merged commit f2ffdc0 into python-semantic-release:master Jun 20, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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


Back | FazBrowse Home | New Git URL