test-releasenotes-merging.t
281 lines
| 5.1 KiB
| text/troff
|
Tads3Lexer
/ tests / test-releasenotes-merging.t
Rishabh Madan
|
r33661 | #require fuzzywuzzy | ||
Gregory Szorc
|
r32778 | $ cat >> $HGRCPATH << EOF | ||
> [extensions] | ||||
> releasenotes= | ||||
> EOF | ||||
$ hg init simple-repo | ||||
$ cd simple-repo | ||||
A fix directive from commit message is added to release notes | ||||
$ touch fix1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 1 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> Fix from commit message. | ||||
> EOF | ||||
$ cat >> $TESTTMP/single-fix-bullet << EOF | ||||
> Bug Fixes | ||||
> ========= | ||||
> | ||||
> * Fix from release notes. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/single-fix-bullet | ||||
$ cat $TESTTMP/single-fix-bullet | ||||
Bug Fixes | ||||
========= | ||||
* Fix from release notes. | ||||
* Fix from commit message. | ||||
Rishabh Madan
|
r33012 | Processing again ignores the already added bullet. | ||
Gregory Szorc
|
r32778 | |||
$ hg releasenotes -r . $TESTTMP/single-fix-bullet | ||||
$ cat $TESTTMP/single-fix-bullet | ||||
Bug Fixes | ||||
========= | ||||
* Fix from release notes. | ||||
* Fix from commit message. | ||||
$ cd .. | ||||
Sections are unioned | ||||
$ hg init subsections | ||||
$ cd subsections | ||||
$ touch fix1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> Commit 1 | ||||
> | ||||
> .. feature:: Commit Message Feature | ||||
> | ||||
> This describes a feature from a commit message. | ||||
> EOF | ||||
$ cat >> $TESTTMP/single-feature-section << EOF | ||||
> New Features | ||||
> ============ | ||||
> | ||||
> Notes Feature | ||||
> ------------- | ||||
> | ||||
> This describes a feature from a release notes file. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/single-feature-section | ||||
$ cat $TESTTMP/single-feature-section | ||||
New Features | ||||
============ | ||||
Notes Feature | ||||
------------- | ||||
This describes a feature from a release notes file. | ||||
Commit Message Feature | ||||
---------------------- | ||||
This describes a feature from a commit message. | ||||
Doing it again won't add another section | ||||
$ hg releasenotes -r . $TESTTMP/single-feature-section | ||||
Commit Message Feature already exists in feature section; ignoring | ||||
$ cat $TESTTMP/single-feature-section | ||||
New Features | ||||
============ | ||||
Notes Feature | ||||
------------- | ||||
This describes a feature from a release notes file. | ||||
Commit Message Feature | ||||
---------------------- | ||||
This describes a feature from a commit message. | ||||
$ cd .. | ||||
Rishabh Madan
|
r32779 | |||
Rishabh Madan
|
r33012 | Bullets from rev merge with those from notes file. | ||
Rishabh Madan
|
r32779 | |||
$ hg init bullets | ||||
$ cd bullets | ||||
$ touch fix1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 1 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> this is fix1. | ||||
> EOF | ||||
$ touch fix2 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 2 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> this is fix2. | ||||
> EOF | ||||
$ hg releasenotes -r 'all()' $TESTTMP/relnotes-bullet-problem | ||||
$ cat $TESTTMP/relnotes-bullet-problem | ||||
Bug Fixes | ||||
========= | ||||
* this is fix1. | ||||
* this is fix2. | ||||
$ touch fix3 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 3 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> this is fix3. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/relnotes-bullet-problem | ||||
$ cat $TESTTMP/relnotes-bullet-problem | ||||
Bug Fixes | ||||
========= | ||||
* this is fix1. | ||||
Rishabh Madan
|
r33012 | * this is fix2. | ||
Rishabh Madan
|
r32779 | |||
* this is fix3. | ||||
Rishabh Madan
|
r33661 | $ cd .. | ||
Ignores commit messages containing issueNNNN based on issue number. | ||||
$ hg init simple-fuzzrepo | ||||
$ cd simple-fuzzrepo | ||||
$ touch fix1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 1 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> Resolved issue4567. | ||||
> EOF | ||||
$ cat >> $TESTTMP/issue-number-notes << EOF | ||||
> Bug Fixes | ||||
> ========= | ||||
> | ||||
> * Fixed issue1234 related to XYZ. | ||||
> | ||||
> * Fixed issue4567 related to ABC. | ||||
> | ||||
> * Fixed issue3986 related to PQR. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/issue-number-notes | ||||
"issue4567" already exists in notes; ignoring | ||||
$ cat $TESTTMP/issue-number-notes | ||||
Bug Fixes | ||||
========= | ||||
* Fixed issue1234 related to XYZ. | ||||
* Fixed issue4567 related to ABC. | ||||
* Fixed issue3986 related to PQR. | ||||
$ cd .. | ||||
Adds short commit messages (words < 10) without | ||||
comparison unless there is an exact match. | ||||
$ hg init tempdir | ||||
$ cd tempdir | ||||
$ touch feature1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 1 | ||||
> | ||||
> .. feature:: | ||||
> | ||||
> Adds a new feature 1. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/short-sentence-notes | ||||
$ touch feature2 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 2 | ||||
> | ||||
> .. feature:: | ||||
> | ||||
> Adds a new feature 2. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/short-sentence-notes | ||||
$ cat $TESTTMP/short-sentence-notes | ||||
New Features | ||||
============ | ||||
* Adds a new feature 1. | ||||
* Adds a new feature 2. | ||||
$ cd .. | ||||
Ignores commit messages based on fuzzy comparison. | ||||
$ hg init fuzznotes | ||||
$ cd fuzznotes | ||||
$ touch fix1 | ||||
$ hg -q commit -A -l - << EOF | ||||
> commit 1 | ||||
> | ||||
> .. fix:: | ||||
> | ||||
> This is a fix with another line. | ||||
> And it is a big one. | ||||
> EOF | ||||
$ cat >> $TESTTMP/fuzz-ignore-notes << EOF | ||||
> Bug Fixes | ||||
> ========= | ||||
> | ||||
> * Fixed issue4567 by improving X. | ||||
> | ||||
> * This is the first line. This is next line with one newline. | ||||
> | ||||
> This is another line written after two newlines. This is going to be a big one. | ||||
> | ||||
> * This fixes another problem. | ||||
> EOF | ||||
$ hg releasenotes -r . $TESTTMP/fuzz-ignore-notes | ||||
"This is a fix with another line. And it is a big one." already exists in notes file; ignoring | ||||
$ cat $TESTTMP/fuzz-ignore-notes | ||||
Bug Fixes | ||||
========= | ||||
* Fixed issue4567 by improving X. | ||||
* This is the first line. This is next line with one newline. | ||||
This is another line written after two newlines. This is going to be a big | ||||
one. | ||||
* This fixes another problem. | ||||